| 182 | } |
| 183 | |
| 184 | bool generate_declarations(const std::set<std::string>& ref_msgs, |
| 185 | const std::set<std::string>& ref_maps, |
| 186 | google::protobuf::io::Printer& decl) { |
| 187 | for (std::set<std::string>::const_iterator |
| 188 | it = ref_msgs.begin(); it != ref_msgs.end(); ++it) { |
| 189 | decl.Print( |
| 190 | "extern bool parse_$vmsg$_body_internal(\n" |
| 191 | " ::google::protobuf::Message* msg,\n" |
| 192 | " ::mcpack2pb::UnparsedValue& value);\n" |
| 193 | "extern void serialize_$vmsg$_body(\n" |
| 194 | " const ::google::protobuf::Message& msg,\n" |
| 195 | " ::mcpack2pb::Serializer& serializer,\n" |
| 196 | " ::mcpack2pb::SerializationFormat format);\n" |
| 197 | "extern ::mcpack2pb::FieldMap* g_$vmsg$_fields;\n" |
| 198 | , "vmsg", *it); |
| 199 | } |
| 200 | for (std::set<std::string>::const_iterator |
| 201 | it = ref_maps.begin(); it != ref_maps.end(); ++it) { |
| 202 | decl.Print( |
| 203 | "extern bool set_$vmsg$_value(::google::protobuf::Message* msg,\n" |
| 204 | " ::mcpack2pb::UnparsedValue& value);\n" |
| 205 | , "vmsg", *it); |
| 206 | } |
| 207 | |
| 208 | return !decl.failed(); |
| 209 | } |
| 210 | |
| 211 | #define TEMPLATE_OF_SET_FUNC_SIGNATURE() \ |
| 212 | "bool set_$vmsg$_$lcfield$(::google::protobuf::Message* msg_base,\n" \ |