blob: d6ff4fb05f79a97c65bda616fef1b1e99b411871 [file] [log] [blame]
Ken Rockot4c5bd802018-07-12 01:37:111// Copyright 2018 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#include "ipc/message_view.h"
6
7namespace IPC {
8
9MessageView::MessageView() = default;
10
11MessageView::MessageView(
12 const Message& message,
13 base::Optional<std::vector<mojo::native::SerializedHandlePtr>> handles)
14 : buffer_view_(base::make_span<const uint8_t>(
15 static_cast<const uint8_t*>(message.data()),
16 message.size())),
17 handles_(std::move(handles)) {}
18
19MessageView::MessageView(
20 mojo_base::BigBufferView buffer_view,
21 base::Optional<std::vector<mojo::native::SerializedHandlePtr>> handles)
22 : buffer_view_(std::move(buffer_view)), handles_(std::move(handles)) {}
23
24MessageView::MessageView(MessageView&&) = default;
25
26MessageView::~MessageView() = default;
27
28MessageView& MessageView::operator=(MessageView&&) = default;
29
30} // namespace IPC