Re-land: C++ readability review
[chromium-blink-merge.git] / ipc / mojo / ipc_mojo_param_traits.h
blobd12e44fccd8399fa64f5489edee5a71441eeed65
1 // Copyright 2015 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.
5 #ifndef IPC_MOJO_IPC_MOJO_PARAM_TRAITS_H_
6 #define IPC_MOJO_IPC_MOJO_PARAM_TRAITS_H_
8 #include <string>
10 #include "ipc/ipc_export.h"
11 #include "ipc/ipc_param_traits.h"
12 #include "third_party/mojo/src/mojo/public/cpp/system/message_pipe.h"
14 class PickleIterator;
16 namespace IPC {
18 class Message;
20 template <>
21 struct IPC_MOJO_EXPORT ParamTraits<mojo::MessagePipeHandle> {
22 typedef mojo::MessagePipeHandle param_type;
23 static void Write(Message* m, const param_type& p);
24 static bool Read(const Message* m, PickleIterator* iter, param_type* r);
25 static void Log(const param_type& p, std::string* l);
28 } // namespace IPC
30 #endif // IPC_MOJO_IPC_MOJO_PARAM_TRAITS_H_