OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef IPC_STRUCT_CONSTRUCTOR_MACROS_H_ | 5 #ifndef IPC_STRUCT_CONSTRUCTOR_MACROS_H_ |
6 #define IPC_STRUCT_CONSTRUCTOR_MACROS_H_ | 6 #define IPC_STRUCT_CONSTRUCTOR_MACROS_H_ |
7 | 7 |
8 // Null out all the macros that need nulling. | 8 // Null out all the macros that need nulling. |
9 #include "ipc/ipc_message_null_macros.h" | 9 #include "ipc/ipc_message_null_macros.h" |
10 | 10 |
11 // Set up so next include will generate constructors. | 11 // Set up so next include will generate constructors. |
12 #undef IPC_STRUCT_BEGIN | 12 #undef IPC_STRUCT_BEGIN |
13 #undef IPC_STRUCT_BEGIN_WITH_PARENT | 13 #undef IPC_STRUCT_BEGIN_WITH_PARENT |
14 #undef IPC_STRUCT_MEMBER | 14 #undef IPC_STRUCT_MEMBER |
15 #undef IPC_STRUCT_END | 15 #undef IPC_STRUCT_END |
16 #define IPC_STRUCT_BEGIN(struct_name) struct_name::struct_name() : NoParams() | 16 #define IPC_STRUCT_BEGIN(struct_name) struct_name::struct_name() : NoParams() |
17 #define IPC_STRUCT_BEGIN_WITH_PARENT(struct_name, parent) \ | 17 #define IPC_STRUCT_BEGIN_WITH_PARENT(struct_name, parent) \ |
18 struct_name::struct_name() : parent() | 18 struct_name::struct_name() : parent() |
19 #define IPC_STRUCT_MEMBER(type, name) , name() | 19 #define IPC_STRUCT_MEMBER(type, name, ...) , name(__VA_ARGS__) |
20 #define IPC_STRUCT_END() {} | 20 #define IPC_STRUCT_END() {} |
21 | 21 |
22 #endif // IPC_STRUCT_CONSTRUCTOR_MACROS_H_ | 22 #endif // IPC_STRUCT_CONSTRUCTOR_MACROS_H_ |
23 | 23 |
OLD | NEW |