| OLD | NEW | 
|   1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |   1 // Copyright (c) 2012 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_PARAM_TRAITS_WRITE_MACROS_H_ |   5 #ifndef IPC_PARAM_TRAITS_WRITE_MACROS_H_ | 
|   6 #define IPC_PARAM_TRAITS_WRITE_MACROS_H_ |   6 #define IPC_PARAM_TRAITS_WRITE_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 // STRUCT declarations cause corresponding STRUCT_TRAITS declarations to occur. |  11 // STRUCT declarations cause corresponding STRUCT_TRAITS declarations to occur. | 
|  12 #undef IPC_STRUCT_BEGIN_WITH_PARENT |  12 #undef IPC_STRUCT_BEGIN_WITH_PARENT | 
|  13 #undef IPC_STRUCT_MEMBER |  13 #undef IPC_STRUCT_MEMBER | 
|  14 #undef IPC_STRUCT_END |  14 #undef IPC_STRUCT_END | 
|  15 #define IPC_STRUCT_BEGIN_WITH_PARENT(struct_name, parent) \ |  15 #define IPC_STRUCT_BEGIN_WITH_PARENT(struct_name, parent) \ | 
|  16   IPC_STRUCT_TRAITS_BEGIN(struct_name) |  16   IPC_STRUCT_TRAITS_BEGIN(struct_name) | 
|  17 #define IPC_STRUCT_MEMBER(type, name, ...) IPC_STRUCT_TRAITS_MEMBER(name) |  17 #define IPC_STRUCT_MEMBER(type, name, ...) IPC_STRUCT_TRAITS_MEMBER(name) | 
|  18 #define IPC_STRUCT_END() IPC_STRUCT_TRAITS_END() |  18 #define IPC_STRUCT_END() IPC_STRUCT_TRAITS_END() | 
|  19  |  19  | 
|  20 // Set up so next include will generate write methods. |  20 // Set up so next include will generate write methods. | 
|  21 #undef IPC_STRUCT_TRAITS_BEGIN |  21 #undef IPC_STRUCT_TRAITS_BEGIN | 
|  22 #undef IPC_STRUCT_TRAITS_MEMBER |  22 #undef IPC_STRUCT_TRAITS_MEMBER | 
|  23 #undef IPC_STRUCT_TRAITS_PARENT |  23 #undef IPC_STRUCT_TRAITS_PARENT | 
|  24 #undef IPC_STRUCT_TRAITS_END |  24 #undef IPC_STRUCT_TRAITS_END | 
|  25 #define IPC_STRUCT_TRAITS_BEGIN(struct_name) \ |  25 #define IPC_STRUCT_TRAITS_BEGIN(struct_name) \ | 
|  26   void ParamTraits<struct_name>::Write(Message* m, const param_type& p) { |  26   void ParamTraits<struct_name>::Write(base::Pickle* m, const param_type& p) { | 
|  27 #define IPC_STRUCT_TRAITS_MEMBER(name) WriteParam(m, p.name); |  27 #define IPC_STRUCT_TRAITS_MEMBER(name) WriteParam(m, p.name); | 
|  28 #define IPC_STRUCT_TRAITS_PARENT(type) ParamTraits<type>::Write(m, p); |  28 #define IPC_STRUCT_TRAITS_PARENT(type) ParamTraits<type>::Write(m, p); | 
|  29 #define IPC_STRUCT_TRAITS_END() } |  29 #define IPC_STRUCT_TRAITS_END() } | 
|  30  |  30  | 
|  31 #undef IPC_ENUM_TRAITS_VALIDATE |  31 #undef IPC_ENUM_TRAITS_VALIDATE | 
|  32 #define IPC_ENUM_TRAITS_VALIDATE(enum_name, validation_expression) \ |  32 #define IPC_ENUM_TRAITS_VALIDATE(enum_name, validation_expression) \ | 
|  33   void ParamTraits<enum_name>::Write(Message* m, const param_type& value) { \ |  33   void ParamTraits<enum_name>::Write(base::Pickle* m,              \ | 
|  34     DCHECK(validation_expression); \ |  34                                      const param_type& value) {    \ | 
|  35     m->WriteInt(static_cast<int>(value)); \ |  35     DCHECK(validation_expression);                                 \ | 
 |  36     m->WriteInt(static_cast<int>(value));                          \ | 
|  36   } |  37   } | 
|  37  |  38  | 
|  38 #endif  // IPC_PARAM_TRAITS_WRITE_MACROS_H_ |  39 #endif  // IPC_PARAM_TRAITS_WRITE_MACROS_H_ | 
|  39  |  40  | 
| OLD | NEW |