Don't show supervised user as "already on this device" while they're being imported.
[chromium-blink-merge.git] / chrome / common / safe_browsing / protobuf_message_write_macros.h
blob2b8a51ca6fc30a9a5d6391942cf89cb5b2fe913e
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 CHROME_COMMON_SAFE_BROWSING_PROTOBUF_MESSAGE_WRITE_MACROS_H_
6 #define CHROME_COMMON_SAFE_BROWSING_PROTOBUF_MESSAGE_WRITE_MACROS_H_
8 // Null out all the macros that need nulling.
9 #include "chrome/common/safe_browsing/ipc_protobuf_message_null_macros.h"
11 // Set up so next include will generate write methods.
12 #undef IPC_PROTOBUF_MESSAGE_TRAITS_BEGIN
13 #undef IPC_PROTOBUF_MESSAGE_TRAITS_OPTIONAL_FUNDAMENTAL_MEMBER
14 #undef IPC_PROTOBUF_MESSAGE_TRAITS_OPTIONAL_COMPLEX_MEMBER
15 #undef IPC_PROTOBUF_MESSAGE_TRAITS_REPEATED_COMPLEX_MEMBER
16 #undef IPC_PROTOBUF_MESSAGE_TRAITS_END
18 #define IPC_PROTOBUF_MESSAGE_TRAITS_BEGIN(message_name) \
19 void ParamTraits<message_name>::Write(Message* m, const param_type& p) {
20 #define IPC_PROTOBUF_MESSAGE_TRAITS_OPTIONAL_COMPLEX_MEMBER \
21 IPC_PROTOBUF_MESSAGE_TRAITS_OPTIONAL_FUNDAMENTAL_MEMBER
22 #define IPC_PROTOBUF_MESSAGE_TRAITS_OPTIONAL_FUNDAMENTAL_MEMBER(name) \
23 if (p.has_##name()) { \
24 m->WriteBool(true); \
25 WriteParam(m, p.name()); \
26 } else { \
27 m->WriteBool(false); \
29 #define IPC_PROTOBUF_MESSAGE_TRAITS_REPEATED_COMPLEX_MEMBER(name) \
30 WriteParam(m, p.name());
31 #define IPC_PROTOBUF_MESSAGE_TRAITS_END() }
33 #endif // CHROME_COMMON_SAFE_BROWSING_PROTOBUF_MESSAGE_WRITE_MACROS_H_