OLD | NEW |
---|---|
(Empty) | |
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. | |
4 | |
5 #ifndef MOJO_PUBLIC_CPP_BINDINGS_TESTS_PICKLED_STRUCT_CHROMIUM_H_ | |
6 #define MOJO_PUBLIC_CPP_BINDINGS_TESTS_PICKLED_STRUCT_CHROMIUM_H_ | |
7 | |
8 #include <string> | |
9 | |
10 #include "base/macros.h" | |
11 #include "ipc/ipc_param_traits.h" | |
12 | |
13 namespace base { | |
14 class Pickle; | |
15 class PickleIterator; | |
16 } | |
17 | |
18 namespace mojo { | |
19 namespace test { | |
20 | |
21 // An implementation of a hypothetical PickledStruct type specifically for | |
22 // consumers in the greater Chromium tree. | |
23 class PickledStructChromium { | |
24 public: | |
25 PickledStructChromium(); | |
26 PickledStructChromium(int foo, int bar); | |
27 ~PickledStructChromium(); | |
28 | |
29 int foo() const { return foo_; } | |
30 void set_foo(int foo) { foo_ = foo; } | |
31 | |
32 int bar() const { return bar_; } | |
33 void set_bar(int bar) { bar_ = bar; } | |
34 | |
35 private: | |
36 int foo_ = 0, bar_ = 0; | |
yzshen1
2015/12/15 21:20:27
separate lines, please.
Ken Rockot(use gerrit already)
2015/12/15 23:31:08
done
| |
37 | |
38 DISALLOW_COPY_AND_ASSIGN(PickledStructChromium); | |
39 }; | |
40 | |
41 } // namespace test | |
42 } // namespace mojo | |
43 | |
44 namespace IPC { | |
45 | |
46 template <> | |
47 struct ParamTraits<mojo::test::PickledStructChromium> { | |
48 using param_type = mojo::test::PickledStructChromium; | |
49 | |
50 static size_t GetSize(const param_type& p) { return 8; } | |
51 static void Write(base::Pickle* m, const param_type& p); | |
52 static bool Read(const base::Pickle* m, | |
53 base::PickleIterator* iter, | |
54 param_type* r); | |
55 static void Log(const param_type& p, std::string* l) {} | |
56 }; | |
57 | |
58 } // namespace IPC | |
59 | |
60 #endif // MOJO_PUBLIC_CPP_BINDINGS_TESTS_PICKLED_STRUCT_CHROMIUM_H_ | |
OLD | NEW |