Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependents: hello_message_pack
cpp03_define_map.hpp
00001 // 00002 // MessagePack for C++ static resolution routine 00003 // 00004 // Copyright (C) 2015 KONDO Takatoshi 00005 // 00006 // Distributed under the Boost Software License, Version 1.0. 00007 // (See accompanying file LICENSE_1_0.txt or copy at 00008 // http://www.boost.org/LICENSE_1_0.txt) 00009 // 00010 #ifndef MSGPACK_CPP03_DEFINE_MAP_HPP 00011 #define MSGPACK_CPP03_DEFINE_MAP_HPP 00012 00013 // BOOST_PP_VARIADICS is defined in boost/preprocessor/config/config.hpp 00014 // http://www.boost.org/libs/preprocessor/doc/ref/variadics.html 00015 // However, supporting compiler detection is not complete. msgpack-c requires 00016 // variadic macro arguments support. So BOOST_PP_VARIADICS is defined here explicitly. 00017 #if !defined(MSGPACK_PP_VARIADICS) 00018 #define MSGPACK_PP_VARIADICS 00019 #endif 00020 00021 #include <msgpack/preprocessor.hpp> 00022 00023 #include "msgpack/versioning.hpp" 00024 #include "msgpack/adaptor/msgpack_tuple.hpp" 00025 #include "msgpack/adaptor/adaptor_base.hpp" 00026 #include "msgpack/object_fwd.hpp" 00027 00028 #define MSGPACK_DEFINE_MAP_EACH_PROC(r, data, elem) \ 00029 MSGPACK_PP_IF( \ 00030 MSGPACK_PP_IS_BEGIN_PARENS(elem), \ 00031 elem, \ 00032 (MSGPACK_PP_STRINGIZE(elem))(elem) \ 00033 ) 00034 00035 #define MSGPACK_DEFINE_MAP_IMPL(...) \ 00036 MSGPACK_PP_SEQ_TO_TUPLE( \ 00037 MSGPACK_PP_SEQ_FOR_EACH( \ 00038 MSGPACK_DEFINE_MAP_EACH_PROC, \ 00039 0, \ 00040 MSGPACK_PP_VARIADIC_TO_SEQ(__VA_ARGS__) \ 00041 ) \ 00042 ) 00043 00044 #define MSGPACK_DEFINE_MAP(...) \ 00045 template <typename Packer> \ 00046 void msgpack_pack(Packer& pk) const \ 00047 { \ 00048 msgpack::type::make_define_map \ 00049 MSGPACK_DEFINE_MAP_IMPL(__VA_ARGS__) \ 00050 .msgpack_pack(pk); \ 00051 } \ 00052 void msgpack_unpack(msgpack::object const& o) \ 00053 { \ 00054 msgpack::type::make_define_map \ 00055 MSGPACK_DEFINE_MAP_IMPL(__VA_ARGS__) \ 00056 .msgpack_unpack(o); \ 00057 }\ 00058 template <typename MSGPACK_OBJECT> \ 00059 void msgpack_object(MSGPACK_OBJECT* o, msgpack::zone& z) const \ 00060 { \ 00061 msgpack::type::make_define_map \ 00062 MSGPACK_DEFINE_MAP_IMPL(__VA_ARGS__) \ 00063 .msgpack_object(o, z); \ 00064 } 00065 00066 #define MSGPACK_BASE_MAP(base) \ 00067 (MSGPACK_PP_STRINGIZE(base))(*const_cast<base *>(static_cast<base const*>(this))) 00068 00069 namespace msgpack { 00070 /// @cond 00071 MSGPACK_API_VERSION_NAMESPACE(v1) { 00072 /// @endcond 00073 namespace type { 00074 00075 /// @cond 00076 00077 template <typename A0 = void, typename A1 = void, typename A2 = void, typename A3 = void, typename A4 = void, typename A5 = void, typename A6 = void, typename A7 = void, typename A8 = void, typename A9 = void, typename A10 = void, typename A11 = void, typename A12 = void, typename A13 = void, typename A14 = void, typename A15 = void, typename A16 = void, typename A17 = void, typename A18 = void, typename A19 = void, typename A20 = void, typename A21 = void, typename A22 = void, typename A23 = void, typename A24 = void, typename A25 = void, typename A26 = void, typename A27 = void, typename A28 = void, typename A29 = void, typename A30 = void, typename A31 = void, typename A32 = void> 00078 struct define_map; 00079 /// @endcond 00080 00081 template <> 00082 struct define_map<> { 00083 template <typename Packer> 00084 void msgpack_pack(Packer& pk) const 00085 { 00086 pk.pack_map(0); 00087 } 00088 void msgpack_unpack(msgpack::object const& o) const 00089 { 00090 if(o.type != msgpack::type::MAP) { 00091 // throw msgpack::type_error(); 00092 } 00093 } 00094 void msgpack_object(msgpack::object* o, msgpack::zone&) const 00095 { 00096 o->type = msgpack::type::MAP; 00097 o->via.map.ptr = nullptr; 00098 o->via.map.size = 0; 00099 } 00100 }; 00101 00102 /// @cond 00103 00104 template <typename A0, typename A1> 00105 struct define_map<A0, A1> { 00106 define_map(A0& _a0, A1& _a1) : 00107 a0(_a0), a1(_a1) {} 00108 template <typename Packer> 00109 void msgpack_pack(Packer& pk) const 00110 { 00111 pk.pack_map(1); 00112 00113 pk.pack(a0); 00114 pk.pack(a1); 00115 } 00116 void msgpack_unpack(msgpack::object const& o) const 00117 { 00118 if(o.type != msgpack::type::MAP) { 00119 printf("throw msgpack::type_error()"); 00120 // throw msgpack::type_error(); 00121 } 00122 std::map<std::string, msgpack::object const*> kvmap; 00123 for (uint32_t i = 0; i < o.via.map.size; ++i) { 00124 kvmap.insert( 00125 std::map<std::string, msgpack::object const*>::value_type( 00126 std::string( 00127 o.via.map.ptr[i].key.via.str.ptr, 00128 o.via.map.ptr[i].key.via.str.size), 00129 &o.via.map.ptr[i].val 00130 ) 00131 ); 00132 } 00133 00134 { 00135 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 00136 if (it != kvmap.end()) { 00137 it->second->convert(a1); 00138 } 00139 } 00140 00141 } 00142 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 00143 { 00144 o->type = msgpack::type::MAP; 00145 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*1)); 00146 o->via.map.size = 1; 00147 00148 o->via.map.ptr[0].key = msgpack::object(a0, z); 00149 o->via.map.ptr[0].val = msgpack::object(a1, z); 00150 00151 } 00152 00153 A0& a0; 00154 A1& a1; 00155 }; 00156 00157 template <typename A0, typename A1, typename A2, typename A3> 00158 struct define_map<A0, A1, A2, A3> { 00159 define_map(A0& _a0, A1& _a1, A2& _a2, A3& _a3) : 00160 a0(_a0), a1(_a1), a2(_a2), a3(_a3) {} 00161 template <typename Packer> 00162 void msgpack_pack(Packer& pk) const 00163 { 00164 pk.pack_map(2); 00165 00166 pk.pack(a0); 00167 pk.pack(a1); 00168 pk.pack(a2); 00169 pk.pack(a3); 00170 } 00171 void msgpack_unpack(msgpack::object const& o) const 00172 { 00173 if(o.type != msgpack::type::MAP) { 00174 printf("throw msgpack::type_error()"); 00175 // throw msgpack::type_error(); 00176 } 00177 std::map<std::string, msgpack::object const*> kvmap; 00178 for (uint32_t i = 0; i < o.via.map.size; ++i) { 00179 kvmap.insert( 00180 std::map<std::string, msgpack::object const*>::value_type( 00181 std::string( 00182 o.via.map.ptr[i].key.via.str.ptr, 00183 o.via.map.ptr[i].key.via.str.size), 00184 &o.via.map.ptr[i].val 00185 ) 00186 ); 00187 } 00188 00189 { 00190 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 00191 if (it != kvmap.end()) { 00192 it->second->convert(a1); 00193 } 00194 } 00195 00196 { 00197 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a2); 00198 if (it != kvmap.end()) { 00199 it->second->convert(a3); 00200 } 00201 } 00202 00203 } 00204 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 00205 { 00206 o->type = msgpack::type::MAP; 00207 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*2)); 00208 o->via.map.size = 2; 00209 00210 o->via.map.ptr[0].key = msgpack::object(a0, z); 00211 o->via.map.ptr[0].val = msgpack::object(a1, z); 00212 00213 o->via.map.ptr[1].key = msgpack::object(a2, z); 00214 o->via.map.ptr[1].val = msgpack::object(a3, z); 00215 00216 } 00217 00218 A0& a0; 00219 A1& a1; 00220 A2& a2; 00221 A3& a3; 00222 }; 00223 00224 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5> 00225 struct define_map<A0, A1, A2, A3, A4, A5> { 00226 define_map(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5) : 00227 a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5) {} 00228 template <typename Packer> 00229 void msgpack_pack(Packer& pk) const 00230 { 00231 pk.pack_map(3); 00232 00233 pk.pack(a0); 00234 pk.pack(a1); 00235 pk.pack(a2); 00236 pk.pack(a3); 00237 pk.pack(a4); 00238 pk.pack(a5); 00239 } 00240 void msgpack_unpack(msgpack::object const& o) const 00241 { 00242 if(o.type != msgpack::type::MAP) { 00243 printf("throw msgpack::type_error()"); 00244 // throw msgpack::type_error(); 00245 } 00246 std::map<std::string, msgpack::object const*> kvmap; 00247 for (uint32_t i = 0; i < o.via.map.size; ++i) { 00248 kvmap.insert( 00249 std::map<std::string, msgpack::object const*>::value_type( 00250 std::string( 00251 o.via.map.ptr[i].key.via.str.ptr, 00252 o.via.map.ptr[i].key.via.str.size), 00253 &o.via.map.ptr[i].val 00254 ) 00255 ); 00256 } 00257 00258 { 00259 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 00260 if (it != kvmap.end()) { 00261 it->second->convert(a1); 00262 } 00263 } 00264 00265 { 00266 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a2); 00267 if (it != kvmap.end()) { 00268 it->second->convert(a3); 00269 } 00270 } 00271 00272 { 00273 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a4); 00274 if (it != kvmap.end()) { 00275 it->second->convert(a5); 00276 } 00277 } 00278 00279 } 00280 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 00281 { 00282 o->type = msgpack::type::MAP; 00283 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*3)); 00284 o->via.map.size = 3; 00285 00286 o->via.map.ptr[0].key = msgpack::object(a0, z); 00287 o->via.map.ptr[0].val = msgpack::object(a1, z); 00288 00289 o->via.map.ptr[1].key = msgpack::object(a2, z); 00290 o->via.map.ptr[1].val = msgpack::object(a3, z); 00291 00292 o->via.map.ptr[2].key = msgpack::object(a4, z); 00293 o->via.map.ptr[2].val = msgpack::object(a5, z); 00294 00295 } 00296 00297 A0& a0; 00298 A1& a1; 00299 A2& a2; 00300 A3& a3; 00301 A4& a4; 00302 A5& a5; 00303 }; 00304 00305 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7> 00306 struct define_map<A0, A1, A2, A3, A4, A5, A6, A7> { 00307 define_map(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7) : 00308 a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7) {} 00309 template <typename Packer> 00310 void msgpack_pack(Packer& pk) const 00311 { 00312 pk.pack_map(4); 00313 00314 pk.pack(a0); 00315 pk.pack(a1); 00316 pk.pack(a2); 00317 pk.pack(a3); 00318 pk.pack(a4); 00319 pk.pack(a5); 00320 pk.pack(a6); 00321 pk.pack(a7); 00322 } 00323 void msgpack_unpack(msgpack::object const& o) const 00324 { 00325 if(o.type != msgpack::type::MAP) { 00326 printf("throw msgpack::type_error()"); 00327 // throw msgpack::type_error(); 00328 } 00329 std::map<std::string, msgpack::object const*> kvmap; 00330 for (uint32_t i = 0; i < o.via.map.size; ++i) { 00331 kvmap.insert( 00332 std::map<std::string, msgpack::object const*>::value_type( 00333 std::string( 00334 o.via.map.ptr[i].key.via.str.ptr, 00335 o.via.map.ptr[i].key.via.str.size), 00336 &o.via.map.ptr[i].val 00337 ) 00338 ); 00339 } 00340 00341 { 00342 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 00343 if (it != kvmap.end()) { 00344 it->second->convert(a1); 00345 } 00346 } 00347 00348 { 00349 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a2); 00350 if (it != kvmap.end()) { 00351 it->second->convert(a3); 00352 } 00353 } 00354 00355 { 00356 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a4); 00357 if (it != kvmap.end()) { 00358 it->second->convert(a5); 00359 } 00360 } 00361 00362 { 00363 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a6); 00364 if (it != kvmap.end()) { 00365 it->second->convert(a7); 00366 } 00367 } 00368 00369 } 00370 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 00371 { 00372 o->type = msgpack::type::MAP; 00373 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*4)); 00374 o->via.map.size = 4; 00375 00376 o->via.map.ptr[0].key = msgpack::object(a0, z); 00377 o->via.map.ptr[0].val = msgpack::object(a1, z); 00378 00379 o->via.map.ptr[1].key = msgpack::object(a2, z); 00380 o->via.map.ptr[1].val = msgpack::object(a3, z); 00381 00382 o->via.map.ptr[2].key = msgpack::object(a4, z); 00383 o->via.map.ptr[2].val = msgpack::object(a5, z); 00384 00385 o->via.map.ptr[3].key = msgpack::object(a6, z); 00386 o->via.map.ptr[3].val = msgpack::object(a7, z); 00387 00388 } 00389 00390 A0& a0; 00391 A1& a1; 00392 A2& a2; 00393 A3& a3; 00394 A4& a4; 00395 A5& a5; 00396 A6& a6; 00397 A7& a7; 00398 }; 00399 00400 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9> 00401 struct define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9> { 00402 define_map(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9) : 00403 a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9) {} 00404 template <typename Packer> 00405 void msgpack_pack(Packer& pk) const 00406 { 00407 pk.pack_map(5); 00408 00409 pk.pack(a0); 00410 pk.pack(a1); 00411 pk.pack(a2); 00412 pk.pack(a3); 00413 pk.pack(a4); 00414 pk.pack(a5); 00415 pk.pack(a6); 00416 pk.pack(a7); 00417 pk.pack(a8); 00418 pk.pack(a9); 00419 } 00420 void msgpack_unpack(msgpack::object const& o) const 00421 { 00422 if(o.type != msgpack::type::MAP) { 00423 printf("throw msgpack::type_error()"); 00424 // throw msgpack::type_error(); 00425 } 00426 std::map<std::string, msgpack::object const*> kvmap; 00427 for (uint32_t i = 0; i < o.via.map.size; ++i) { 00428 kvmap.insert( 00429 std::map<std::string, msgpack::object const*>::value_type( 00430 std::string( 00431 o.via.map.ptr[i].key.via.str.ptr, 00432 o.via.map.ptr[i].key.via.str.size), 00433 &o.via.map.ptr[i].val 00434 ) 00435 ); 00436 } 00437 00438 { 00439 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 00440 if (it != kvmap.end()) { 00441 it->second->convert(a1); 00442 } 00443 } 00444 00445 { 00446 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a2); 00447 if (it != kvmap.end()) { 00448 it->second->convert(a3); 00449 } 00450 } 00451 00452 { 00453 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a4); 00454 if (it != kvmap.end()) { 00455 it->second->convert(a5); 00456 } 00457 } 00458 00459 { 00460 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a6); 00461 if (it != kvmap.end()) { 00462 it->second->convert(a7); 00463 } 00464 } 00465 00466 { 00467 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a8); 00468 if (it != kvmap.end()) { 00469 it->second->convert(a9); 00470 } 00471 } 00472 00473 } 00474 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 00475 { 00476 o->type = msgpack::type::MAP; 00477 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*5)); 00478 o->via.map.size = 5; 00479 00480 o->via.map.ptr[0].key = msgpack::object(a0, z); 00481 o->via.map.ptr[0].val = msgpack::object(a1, z); 00482 00483 o->via.map.ptr[1].key = msgpack::object(a2, z); 00484 o->via.map.ptr[1].val = msgpack::object(a3, z); 00485 00486 o->via.map.ptr[2].key = msgpack::object(a4, z); 00487 o->via.map.ptr[2].val = msgpack::object(a5, z); 00488 00489 o->via.map.ptr[3].key = msgpack::object(a6, z); 00490 o->via.map.ptr[3].val = msgpack::object(a7, z); 00491 00492 o->via.map.ptr[4].key = msgpack::object(a8, z); 00493 o->via.map.ptr[4].val = msgpack::object(a9, z); 00494 00495 } 00496 00497 A0& a0; 00498 A1& a1; 00499 A2& a2; 00500 A3& a3; 00501 A4& a4; 00502 A5& a5; 00503 A6& a6; 00504 A7& a7; 00505 A8& a8; 00506 A9& a9; 00507 }; 00508 00509 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11> 00510 struct define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11> { 00511 define_map(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11) : 00512 a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11) {} 00513 template <typename Packer> 00514 void msgpack_pack(Packer& pk) const 00515 { 00516 pk.pack_map(6); 00517 00518 pk.pack(a0); 00519 pk.pack(a1); 00520 pk.pack(a2); 00521 pk.pack(a3); 00522 pk.pack(a4); 00523 pk.pack(a5); 00524 pk.pack(a6); 00525 pk.pack(a7); 00526 pk.pack(a8); 00527 pk.pack(a9); 00528 pk.pack(a10); 00529 pk.pack(a11); 00530 } 00531 void msgpack_unpack(msgpack::object const& o) const 00532 { 00533 if(o.type != msgpack::type::MAP) { 00534 printf("throw msgpack::type_error()"); 00535 // throw msgpack::type_error(); 00536 } 00537 std::map<std::string, msgpack::object const*> kvmap; 00538 for (uint32_t i = 0; i < o.via.map.size; ++i) { 00539 kvmap.insert( 00540 std::map<std::string, msgpack::object const*>::value_type( 00541 std::string( 00542 o.via.map.ptr[i].key.via.str.ptr, 00543 o.via.map.ptr[i].key.via.str.size), 00544 &o.via.map.ptr[i].val 00545 ) 00546 ); 00547 } 00548 00549 { 00550 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 00551 if (it != kvmap.end()) { 00552 it->second->convert(a1); 00553 } 00554 } 00555 00556 { 00557 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a2); 00558 if (it != kvmap.end()) { 00559 it->second->convert(a3); 00560 } 00561 } 00562 00563 { 00564 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a4); 00565 if (it != kvmap.end()) { 00566 it->second->convert(a5); 00567 } 00568 } 00569 00570 { 00571 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a6); 00572 if (it != kvmap.end()) { 00573 it->second->convert(a7); 00574 } 00575 } 00576 00577 { 00578 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a8); 00579 if (it != kvmap.end()) { 00580 it->second->convert(a9); 00581 } 00582 } 00583 00584 { 00585 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a10); 00586 if (it != kvmap.end()) { 00587 it->second->convert(a11); 00588 } 00589 } 00590 00591 } 00592 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 00593 { 00594 o->type = msgpack::type::MAP; 00595 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*6)); 00596 o->via.map.size = 6; 00597 00598 o->via.map.ptr[0].key = msgpack::object(a0, z); 00599 o->via.map.ptr[0].val = msgpack::object(a1, z); 00600 00601 o->via.map.ptr[1].key = msgpack::object(a2, z); 00602 o->via.map.ptr[1].val = msgpack::object(a3, z); 00603 00604 o->via.map.ptr[2].key = msgpack::object(a4, z); 00605 o->via.map.ptr[2].val = msgpack::object(a5, z); 00606 00607 o->via.map.ptr[3].key = msgpack::object(a6, z); 00608 o->via.map.ptr[3].val = msgpack::object(a7, z); 00609 00610 o->via.map.ptr[4].key = msgpack::object(a8, z); 00611 o->via.map.ptr[4].val = msgpack::object(a9, z); 00612 00613 o->via.map.ptr[5].key = msgpack::object(a10, z); 00614 o->via.map.ptr[5].val = msgpack::object(a11, z); 00615 00616 } 00617 00618 A0& a0; 00619 A1& a1; 00620 A2& a2; 00621 A3& a3; 00622 A4& a4; 00623 A5& a5; 00624 A6& a6; 00625 A7& a7; 00626 A8& a8; 00627 A9& a9; 00628 A10& a10; 00629 A11& a11; 00630 }; 00631 00632 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13> 00633 struct define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13> { 00634 define_map(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11, A12& _a12, A13& _a13) : 00635 a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11), a12(_a12), a13(_a13) {} 00636 template <typename Packer> 00637 void msgpack_pack(Packer& pk) const 00638 { 00639 pk.pack_map(7); 00640 00641 pk.pack(a0); 00642 pk.pack(a1); 00643 pk.pack(a2); 00644 pk.pack(a3); 00645 pk.pack(a4); 00646 pk.pack(a5); 00647 pk.pack(a6); 00648 pk.pack(a7); 00649 pk.pack(a8); 00650 pk.pack(a9); 00651 pk.pack(a10); 00652 pk.pack(a11); 00653 pk.pack(a12); 00654 pk.pack(a13); 00655 } 00656 void msgpack_unpack(msgpack::object const& o) const 00657 { 00658 if(o.type != msgpack::type::MAP) { 00659 printf("throw msgpack::type_error()"); 00660 // throw msgpack::type_error(); 00661 } 00662 std::map<std::string, msgpack::object const*> kvmap; 00663 for (uint32_t i = 0; i < o.via.map.size; ++i) { 00664 kvmap.insert( 00665 std::map<std::string, msgpack::object const*>::value_type( 00666 std::string( 00667 o.via.map.ptr[i].key.via.str.ptr, 00668 o.via.map.ptr[i].key.via.str.size), 00669 &o.via.map.ptr[i].val 00670 ) 00671 ); 00672 } 00673 00674 { 00675 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 00676 if (it != kvmap.end()) { 00677 it->second->convert(a1); 00678 } 00679 } 00680 00681 { 00682 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a2); 00683 if (it != kvmap.end()) { 00684 it->second->convert(a3); 00685 } 00686 } 00687 00688 { 00689 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a4); 00690 if (it != kvmap.end()) { 00691 it->second->convert(a5); 00692 } 00693 } 00694 00695 { 00696 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a6); 00697 if (it != kvmap.end()) { 00698 it->second->convert(a7); 00699 } 00700 } 00701 00702 { 00703 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a8); 00704 if (it != kvmap.end()) { 00705 it->second->convert(a9); 00706 } 00707 } 00708 00709 { 00710 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a10); 00711 if (it != kvmap.end()) { 00712 it->second->convert(a11); 00713 } 00714 } 00715 00716 { 00717 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a12); 00718 if (it != kvmap.end()) { 00719 it->second->convert(a13); 00720 } 00721 } 00722 00723 } 00724 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 00725 { 00726 o->type = msgpack::type::MAP; 00727 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*7)); 00728 o->via.map.size = 7; 00729 00730 o->via.map.ptr[0].key = msgpack::object(a0, z); 00731 o->via.map.ptr[0].val = msgpack::object(a1, z); 00732 00733 o->via.map.ptr[1].key = msgpack::object(a2, z); 00734 o->via.map.ptr[1].val = msgpack::object(a3, z); 00735 00736 o->via.map.ptr[2].key = msgpack::object(a4, z); 00737 o->via.map.ptr[2].val = msgpack::object(a5, z); 00738 00739 o->via.map.ptr[3].key = msgpack::object(a6, z); 00740 o->via.map.ptr[3].val = msgpack::object(a7, z); 00741 00742 o->via.map.ptr[4].key = msgpack::object(a8, z); 00743 o->via.map.ptr[4].val = msgpack::object(a9, z); 00744 00745 o->via.map.ptr[5].key = msgpack::object(a10, z); 00746 o->via.map.ptr[5].val = msgpack::object(a11, z); 00747 00748 o->via.map.ptr[6].key = msgpack::object(a12, z); 00749 o->via.map.ptr[6].val = msgpack::object(a13, z); 00750 00751 } 00752 00753 A0& a0; 00754 A1& a1; 00755 A2& a2; 00756 A3& a3; 00757 A4& a4; 00758 A5& a5; 00759 A6& a6; 00760 A7& a7; 00761 A8& a8; 00762 A9& a9; 00763 A10& a10; 00764 A11& a11; 00765 A12& a12; 00766 A13& a13; 00767 }; 00768 00769 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15> 00770 struct define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15> { 00771 define_map(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11, A12& _a12, A13& _a13, A14& _a14, A15& _a15) : 00772 a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11), a12(_a12), a13(_a13), a14(_a14), a15(_a15) {} 00773 template <typename Packer> 00774 void msgpack_pack(Packer& pk) const 00775 { 00776 pk.pack_map(8); 00777 00778 pk.pack(a0); 00779 pk.pack(a1); 00780 pk.pack(a2); 00781 pk.pack(a3); 00782 pk.pack(a4); 00783 pk.pack(a5); 00784 pk.pack(a6); 00785 pk.pack(a7); 00786 pk.pack(a8); 00787 pk.pack(a9); 00788 pk.pack(a10); 00789 pk.pack(a11); 00790 pk.pack(a12); 00791 pk.pack(a13); 00792 pk.pack(a14); 00793 pk.pack(a15); 00794 } 00795 void msgpack_unpack(msgpack::object const& o) const 00796 { 00797 if(o.type != msgpack::type::MAP) { 00798 printf("throw msgpack::type_error()"); 00799 // throw msgpack::type_error(); 00800 } 00801 std::map<std::string, msgpack::object const*> kvmap; 00802 for (uint32_t i = 0; i < o.via.map.size; ++i) { 00803 kvmap.insert( 00804 std::map<std::string, msgpack::object const*>::value_type( 00805 std::string( 00806 o.via.map.ptr[i].key.via.str.ptr, 00807 o.via.map.ptr[i].key.via.str.size), 00808 &o.via.map.ptr[i].val 00809 ) 00810 ); 00811 } 00812 00813 { 00814 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 00815 if (it != kvmap.end()) { 00816 it->second->convert(a1); 00817 } 00818 } 00819 00820 { 00821 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a2); 00822 if (it != kvmap.end()) { 00823 it->second->convert(a3); 00824 } 00825 } 00826 00827 { 00828 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a4); 00829 if (it != kvmap.end()) { 00830 it->second->convert(a5); 00831 } 00832 } 00833 00834 { 00835 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a6); 00836 if (it != kvmap.end()) { 00837 it->second->convert(a7); 00838 } 00839 } 00840 00841 { 00842 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a8); 00843 if (it != kvmap.end()) { 00844 it->second->convert(a9); 00845 } 00846 } 00847 00848 { 00849 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a10); 00850 if (it != kvmap.end()) { 00851 it->second->convert(a11); 00852 } 00853 } 00854 00855 { 00856 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a12); 00857 if (it != kvmap.end()) { 00858 it->second->convert(a13); 00859 } 00860 } 00861 00862 { 00863 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a14); 00864 if (it != kvmap.end()) { 00865 it->second->convert(a15); 00866 } 00867 } 00868 00869 } 00870 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 00871 { 00872 o->type = msgpack::type::MAP; 00873 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*8)); 00874 o->via.map.size = 8; 00875 00876 o->via.map.ptr[0].key = msgpack::object(a0, z); 00877 o->via.map.ptr[0].val = msgpack::object(a1, z); 00878 00879 o->via.map.ptr[1].key = msgpack::object(a2, z); 00880 o->via.map.ptr[1].val = msgpack::object(a3, z); 00881 00882 o->via.map.ptr[2].key = msgpack::object(a4, z); 00883 o->via.map.ptr[2].val = msgpack::object(a5, z); 00884 00885 o->via.map.ptr[3].key = msgpack::object(a6, z); 00886 o->via.map.ptr[3].val = msgpack::object(a7, z); 00887 00888 o->via.map.ptr[4].key = msgpack::object(a8, z); 00889 o->via.map.ptr[4].val = msgpack::object(a9, z); 00890 00891 o->via.map.ptr[5].key = msgpack::object(a10, z); 00892 o->via.map.ptr[5].val = msgpack::object(a11, z); 00893 00894 o->via.map.ptr[6].key = msgpack::object(a12, z); 00895 o->via.map.ptr[6].val = msgpack::object(a13, z); 00896 00897 o->via.map.ptr[7].key = msgpack::object(a14, z); 00898 o->via.map.ptr[7].val = msgpack::object(a15, z); 00899 00900 } 00901 00902 A0& a0; 00903 A1& a1; 00904 A2& a2; 00905 A3& a3; 00906 A4& a4; 00907 A5& a5; 00908 A6& a6; 00909 A7& a7; 00910 A8& a8; 00911 A9& a9; 00912 A10& a10; 00913 A11& a11; 00914 A12& a12; 00915 A13& a13; 00916 A14& a14; 00917 A15& a15; 00918 }; 00919 00920 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17> 00921 struct define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17> { 00922 define_map(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11, A12& _a12, A13& _a13, A14& _a14, A15& _a15, A16& _a16, A17& _a17) : 00923 a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11), a12(_a12), a13(_a13), a14(_a14), a15(_a15), a16(_a16), a17(_a17) {} 00924 template <typename Packer> 00925 void msgpack_pack(Packer& pk) const 00926 { 00927 pk.pack_map(9); 00928 00929 pk.pack(a0); 00930 pk.pack(a1); 00931 pk.pack(a2); 00932 pk.pack(a3); 00933 pk.pack(a4); 00934 pk.pack(a5); 00935 pk.pack(a6); 00936 pk.pack(a7); 00937 pk.pack(a8); 00938 pk.pack(a9); 00939 pk.pack(a10); 00940 pk.pack(a11); 00941 pk.pack(a12); 00942 pk.pack(a13); 00943 pk.pack(a14); 00944 pk.pack(a15); 00945 pk.pack(a16); 00946 pk.pack(a17); 00947 } 00948 void msgpack_unpack(msgpack::object const& o) const 00949 { 00950 if(o.type != msgpack::type::MAP) { 00951 printf("throw msgpack::type_error()"); 00952 // throw msgpack::type_error(); 00953 } 00954 std::map<std::string, msgpack::object const*> kvmap; 00955 for (uint32_t i = 0; i < o.via.map.size; ++i) { 00956 kvmap.insert( 00957 std::map<std::string, msgpack::object const*>::value_type( 00958 std::string( 00959 o.via.map.ptr[i].key.via.str.ptr, 00960 o.via.map.ptr[i].key.via.str.size), 00961 &o.via.map.ptr[i].val 00962 ) 00963 ); 00964 } 00965 00966 { 00967 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 00968 if (it != kvmap.end()) { 00969 it->second->convert(a1); 00970 } 00971 } 00972 00973 { 00974 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a2); 00975 if (it != kvmap.end()) { 00976 it->second->convert(a3); 00977 } 00978 } 00979 00980 { 00981 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a4); 00982 if (it != kvmap.end()) { 00983 it->second->convert(a5); 00984 } 00985 } 00986 00987 { 00988 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a6); 00989 if (it != kvmap.end()) { 00990 it->second->convert(a7); 00991 } 00992 } 00993 00994 { 00995 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a8); 00996 if (it != kvmap.end()) { 00997 it->second->convert(a9); 00998 } 00999 } 01000 01001 { 01002 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a10); 01003 if (it != kvmap.end()) { 01004 it->second->convert(a11); 01005 } 01006 } 01007 01008 { 01009 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a12); 01010 if (it != kvmap.end()) { 01011 it->second->convert(a13); 01012 } 01013 } 01014 01015 { 01016 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a14); 01017 if (it != kvmap.end()) { 01018 it->second->convert(a15); 01019 } 01020 } 01021 01022 { 01023 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a16); 01024 if (it != kvmap.end()) { 01025 it->second->convert(a17); 01026 } 01027 } 01028 01029 } 01030 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 01031 { 01032 o->type = msgpack::type::MAP; 01033 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*9)); 01034 o->via.map.size = 9; 01035 01036 o->via.map.ptr[0].key = msgpack::object(a0, z); 01037 o->via.map.ptr[0].val = msgpack::object(a1, z); 01038 01039 o->via.map.ptr[1].key = msgpack::object(a2, z); 01040 o->via.map.ptr[1].val = msgpack::object(a3, z); 01041 01042 o->via.map.ptr[2].key = msgpack::object(a4, z); 01043 o->via.map.ptr[2].val = msgpack::object(a5, z); 01044 01045 o->via.map.ptr[3].key = msgpack::object(a6, z); 01046 o->via.map.ptr[3].val = msgpack::object(a7, z); 01047 01048 o->via.map.ptr[4].key = msgpack::object(a8, z); 01049 o->via.map.ptr[4].val = msgpack::object(a9, z); 01050 01051 o->via.map.ptr[5].key = msgpack::object(a10, z); 01052 o->via.map.ptr[5].val = msgpack::object(a11, z); 01053 01054 o->via.map.ptr[6].key = msgpack::object(a12, z); 01055 o->via.map.ptr[6].val = msgpack::object(a13, z); 01056 01057 o->via.map.ptr[7].key = msgpack::object(a14, z); 01058 o->via.map.ptr[7].val = msgpack::object(a15, z); 01059 01060 o->via.map.ptr[8].key = msgpack::object(a16, z); 01061 o->via.map.ptr[8].val = msgpack::object(a17, z); 01062 01063 } 01064 01065 A0& a0; 01066 A1& a1; 01067 A2& a2; 01068 A3& a3; 01069 A4& a4; 01070 A5& a5; 01071 A6& a6; 01072 A7& a7; 01073 A8& a8; 01074 A9& a9; 01075 A10& a10; 01076 A11& a11; 01077 A12& a12; 01078 A13& a13; 01079 A14& a14; 01080 A15& a15; 01081 A16& a16; 01082 A17& a17; 01083 }; 01084 01085 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19> 01086 struct define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19> { 01087 define_map(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11, A12& _a12, A13& _a13, A14& _a14, A15& _a15, A16& _a16, A17& _a17, A18& _a18, A19& _a19) : 01088 a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11), a12(_a12), a13(_a13), a14(_a14), a15(_a15), a16(_a16), a17(_a17), a18(_a18), a19(_a19) {} 01089 template <typename Packer> 01090 void msgpack_pack(Packer& pk) const 01091 { 01092 pk.pack_map(10); 01093 01094 pk.pack(a0); 01095 pk.pack(a1); 01096 pk.pack(a2); 01097 pk.pack(a3); 01098 pk.pack(a4); 01099 pk.pack(a5); 01100 pk.pack(a6); 01101 pk.pack(a7); 01102 pk.pack(a8); 01103 pk.pack(a9); 01104 pk.pack(a10); 01105 pk.pack(a11); 01106 pk.pack(a12); 01107 pk.pack(a13); 01108 pk.pack(a14); 01109 pk.pack(a15); 01110 pk.pack(a16); 01111 pk.pack(a17); 01112 pk.pack(a18); 01113 pk.pack(a19); 01114 } 01115 void msgpack_unpack(msgpack::object const& o) const 01116 { 01117 if(o.type != msgpack::type::MAP) { 01118 printf("throw msgpack::type_error()"); 01119 // throw msgpack::type_error(); 01120 } 01121 std::map<std::string, msgpack::object const*> kvmap; 01122 for (uint32_t i = 0; i < o.via.map.size; ++i) { 01123 kvmap.insert( 01124 std::map<std::string, msgpack::object const*>::value_type( 01125 std::string( 01126 o.via.map.ptr[i].key.via.str.ptr, 01127 o.via.map.ptr[i].key.via.str.size), 01128 &o.via.map.ptr[i].val 01129 ) 01130 ); 01131 } 01132 01133 { 01134 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 01135 if (it != kvmap.end()) { 01136 it->second->convert(a1); 01137 } 01138 } 01139 01140 { 01141 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a2); 01142 if (it != kvmap.end()) { 01143 it->second->convert(a3); 01144 } 01145 } 01146 01147 { 01148 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a4); 01149 if (it != kvmap.end()) { 01150 it->second->convert(a5); 01151 } 01152 } 01153 01154 { 01155 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a6); 01156 if (it != kvmap.end()) { 01157 it->second->convert(a7); 01158 } 01159 } 01160 01161 { 01162 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a8); 01163 if (it != kvmap.end()) { 01164 it->second->convert(a9); 01165 } 01166 } 01167 01168 { 01169 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a10); 01170 if (it != kvmap.end()) { 01171 it->second->convert(a11); 01172 } 01173 } 01174 01175 { 01176 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a12); 01177 if (it != kvmap.end()) { 01178 it->second->convert(a13); 01179 } 01180 } 01181 01182 { 01183 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a14); 01184 if (it != kvmap.end()) { 01185 it->second->convert(a15); 01186 } 01187 } 01188 01189 { 01190 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a16); 01191 if (it != kvmap.end()) { 01192 it->second->convert(a17); 01193 } 01194 } 01195 01196 { 01197 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a18); 01198 if (it != kvmap.end()) { 01199 it->second->convert(a19); 01200 } 01201 } 01202 01203 } 01204 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 01205 { 01206 o->type = msgpack::type::MAP; 01207 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*10)); 01208 o->via.map.size = 10; 01209 01210 o->via.map.ptr[0].key = msgpack::object(a0, z); 01211 o->via.map.ptr[0].val = msgpack::object(a1, z); 01212 01213 o->via.map.ptr[1].key = msgpack::object(a2, z); 01214 o->via.map.ptr[1].val = msgpack::object(a3, z); 01215 01216 o->via.map.ptr[2].key = msgpack::object(a4, z); 01217 o->via.map.ptr[2].val = msgpack::object(a5, z); 01218 01219 o->via.map.ptr[3].key = msgpack::object(a6, z); 01220 o->via.map.ptr[3].val = msgpack::object(a7, z); 01221 01222 o->via.map.ptr[4].key = msgpack::object(a8, z); 01223 o->via.map.ptr[4].val = msgpack::object(a9, z); 01224 01225 o->via.map.ptr[5].key = msgpack::object(a10, z); 01226 o->via.map.ptr[5].val = msgpack::object(a11, z); 01227 01228 o->via.map.ptr[6].key = msgpack::object(a12, z); 01229 o->via.map.ptr[6].val = msgpack::object(a13, z); 01230 01231 o->via.map.ptr[7].key = msgpack::object(a14, z); 01232 o->via.map.ptr[7].val = msgpack::object(a15, z); 01233 01234 o->via.map.ptr[8].key = msgpack::object(a16, z); 01235 o->via.map.ptr[8].val = msgpack::object(a17, z); 01236 01237 o->via.map.ptr[9].key = msgpack::object(a18, z); 01238 o->via.map.ptr[9].val = msgpack::object(a19, z); 01239 01240 } 01241 01242 A0& a0; 01243 A1& a1; 01244 A2& a2; 01245 A3& a3; 01246 A4& a4; 01247 A5& a5; 01248 A6& a6; 01249 A7& a7; 01250 A8& a8; 01251 A9& a9; 01252 A10& a10; 01253 A11& a11; 01254 A12& a12; 01255 A13& a13; 01256 A14& a14; 01257 A15& a15; 01258 A16& a16; 01259 A17& a17; 01260 A18& a18; 01261 A19& a19; 01262 }; 01263 01264 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21> 01265 struct define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21> { 01266 define_map(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11, A12& _a12, A13& _a13, A14& _a14, A15& _a15, A16& _a16, A17& _a17, A18& _a18, A19& _a19, A20& _a20, A21& _a21) : 01267 a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11), a12(_a12), a13(_a13), a14(_a14), a15(_a15), a16(_a16), a17(_a17), a18(_a18), a19(_a19), a20(_a20), a21(_a21) {} 01268 template <typename Packer> 01269 void msgpack_pack(Packer& pk) const 01270 { 01271 pk.pack_map(11); 01272 01273 pk.pack(a0); 01274 pk.pack(a1); 01275 pk.pack(a2); 01276 pk.pack(a3); 01277 pk.pack(a4); 01278 pk.pack(a5); 01279 pk.pack(a6); 01280 pk.pack(a7); 01281 pk.pack(a8); 01282 pk.pack(a9); 01283 pk.pack(a10); 01284 pk.pack(a11); 01285 pk.pack(a12); 01286 pk.pack(a13); 01287 pk.pack(a14); 01288 pk.pack(a15); 01289 pk.pack(a16); 01290 pk.pack(a17); 01291 pk.pack(a18); 01292 pk.pack(a19); 01293 pk.pack(a20); 01294 pk.pack(a21); 01295 } 01296 void msgpack_unpack(msgpack::object const& o) const 01297 { 01298 if(o.type != msgpack::type::MAP) { 01299 printf("throw msgpack::type_error()"); 01300 // throw msgpack::type_error(); 01301 } 01302 std::map<std::string, msgpack::object const*> kvmap; 01303 for (uint32_t i = 0; i < o.via.map.size; ++i) { 01304 kvmap.insert( 01305 std::map<std::string, msgpack::object const*>::value_type( 01306 std::string( 01307 o.via.map.ptr[i].key.via.str.ptr, 01308 o.via.map.ptr[i].key.via.str.size), 01309 &o.via.map.ptr[i].val 01310 ) 01311 ); 01312 } 01313 01314 { 01315 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 01316 if (it != kvmap.end()) { 01317 it->second->convert(a1); 01318 } 01319 } 01320 01321 { 01322 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a2); 01323 if (it != kvmap.end()) { 01324 it->second->convert(a3); 01325 } 01326 } 01327 01328 { 01329 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a4); 01330 if (it != kvmap.end()) { 01331 it->second->convert(a5); 01332 } 01333 } 01334 01335 { 01336 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a6); 01337 if (it != kvmap.end()) { 01338 it->second->convert(a7); 01339 } 01340 } 01341 01342 { 01343 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a8); 01344 if (it != kvmap.end()) { 01345 it->second->convert(a9); 01346 } 01347 } 01348 01349 { 01350 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a10); 01351 if (it != kvmap.end()) { 01352 it->second->convert(a11); 01353 } 01354 } 01355 01356 { 01357 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a12); 01358 if (it != kvmap.end()) { 01359 it->second->convert(a13); 01360 } 01361 } 01362 01363 { 01364 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a14); 01365 if (it != kvmap.end()) { 01366 it->second->convert(a15); 01367 } 01368 } 01369 01370 { 01371 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a16); 01372 if (it != kvmap.end()) { 01373 it->second->convert(a17); 01374 } 01375 } 01376 01377 { 01378 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a18); 01379 if (it != kvmap.end()) { 01380 it->second->convert(a19); 01381 } 01382 } 01383 01384 { 01385 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a20); 01386 if (it != kvmap.end()) { 01387 it->second->convert(a21); 01388 } 01389 } 01390 01391 } 01392 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 01393 { 01394 o->type = msgpack::type::MAP; 01395 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*11)); 01396 o->via.map.size = 11; 01397 01398 o->via.map.ptr[0].key = msgpack::object(a0, z); 01399 o->via.map.ptr[0].val = msgpack::object(a1, z); 01400 01401 o->via.map.ptr[1].key = msgpack::object(a2, z); 01402 o->via.map.ptr[1].val = msgpack::object(a3, z); 01403 01404 o->via.map.ptr[2].key = msgpack::object(a4, z); 01405 o->via.map.ptr[2].val = msgpack::object(a5, z); 01406 01407 o->via.map.ptr[3].key = msgpack::object(a6, z); 01408 o->via.map.ptr[3].val = msgpack::object(a7, z); 01409 01410 o->via.map.ptr[4].key = msgpack::object(a8, z); 01411 o->via.map.ptr[4].val = msgpack::object(a9, z); 01412 01413 o->via.map.ptr[5].key = msgpack::object(a10, z); 01414 o->via.map.ptr[5].val = msgpack::object(a11, z); 01415 01416 o->via.map.ptr[6].key = msgpack::object(a12, z); 01417 o->via.map.ptr[6].val = msgpack::object(a13, z); 01418 01419 o->via.map.ptr[7].key = msgpack::object(a14, z); 01420 o->via.map.ptr[7].val = msgpack::object(a15, z); 01421 01422 o->via.map.ptr[8].key = msgpack::object(a16, z); 01423 o->via.map.ptr[8].val = msgpack::object(a17, z); 01424 01425 o->via.map.ptr[9].key = msgpack::object(a18, z); 01426 o->via.map.ptr[9].val = msgpack::object(a19, z); 01427 01428 o->via.map.ptr[10].key = msgpack::object(a20, z); 01429 o->via.map.ptr[10].val = msgpack::object(a21, z); 01430 01431 } 01432 01433 A0& a0; 01434 A1& a1; 01435 A2& a2; 01436 A3& a3; 01437 A4& a4; 01438 A5& a5; 01439 A6& a6; 01440 A7& a7; 01441 A8& a8; 01442 A9& a9; 01443 A10& a10; 01444 A11& a11; 01445 A12& a12; 01446 A13& a13; 01447 A14& a14; 01448 A15& a15; 01449 A16& a16; 01450 A17& a17; 01451 A18& a18; 01452 A19& a19; 01453 A20& a20; 01454 A21& a21; 01455 }; 01456 01457 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23> 01458 struct define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23> { 01459 define_map(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11, A12& _a12, A13& _a13, A14& _a14, A15& _a15, A16& _a16, A17& _a17, A18& _a18, A19& _a19, A20& _a20, A21& _a21, A22& _a22, A23& _a23) : 01460 a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11), a12(_a12), a13(_a13), a14(_a14), a15(_a15), a16(_a16), a17(_a17), a18(_a18), a19(_a19), a20(_a20), a21(_a21), a22(_a22), a23(_a23) {} 01461 template <typename Packer> 01462 void msgpack_pack(Packer& pk) const 01463 { 01464 pk.pack_map(12); 01465 01466 pk.pack(a0); 01467 pk.pack(a1); 01468 pk.pack(a2); 01469 pk.pack(a3); 01470 pk.pack(a4); 01471 pk.pack(a5); 01472 pk.pack(a6); 01473 pk.pack(a7); 01474 pk.pack(a8); 01475 pk.pack(a9); 01476 pk.pack(a10); 01477 pk.pack(a11); 01478 pk.pack(a12); 01479 pk.pack(a13); 01480 pk.pack(a14); 01481 pk.pack(a15); 01482 pk.pack(a16); 01483 pk.pack(a17); 01484 pk.pack(a18); 01485 pk.pack(a19); 01486 pk.pack(a20); 01487 pk.pack(a21); 01488 pk.pack(a22); 01489 pk.pack(a23); 01490 } 01491 void msgpack_unpack(msgpack::object const& o) const 01492 { 01493 if(o.type != msgpack::type::MAP) { 01494 printf("throw msgpack::type_error()"); 01495 // throw msgpack::type_error(); 01496 } 01497 std::map<std::string, msgpack::object const*> kvmap; 01498 for (uint32_t i = 0; i < o.via.map.size; ++i) { 01499 kvmap.insert( 01500 std::map<std::string, msgpack::object const*>::value_type( 01501 std::string( 01502 o.via.map.ptr[i].key.via.str.ptr, 01503 o.via.map.ptr[i].key.via.str.size), 01504 &o.via.map.ptr[i].val 01505 ) 01506 ); 01507 } 01508 01509 { 01510 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 01511 if (it != kvmap.end()) { 01512 it->second->convert(a1); 01513 } 01514 } 01515 01516 { 01517 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a2); 01518 if (it != kvmap.end()) { 01519 it->second->convert(a3); 01520 } 01521 } 01522 01523 { 01524 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a4); 01525 if (it != kvmap.end()) { 01526 it->second->convert(a5); 01527 } 01528 } 01529 01530 { 01531 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a6); 01532 if (it != kvmap.end()) { 01533 it->second->convert(a7); 01534 } 01535 } 01536 01537 { 01538 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a8); 01539 if (it != kvmap.end()) { 01540 it->second->convert(a9); 01541 } 01542 } 01543 01544 { 01545 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a10); 01546 if (it != kvmap.end()) { 01547 it->second->convert(a11); 01548 } 01549 } 01550 01551 { 01552 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a12); 01553 if (it != kvmap.end()) { 01554 it->second->convert(a13); 01555 } 01556 } 01557 01558 { 01559 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a14); 01560 if (it != kvmap.end()) { 01561 it->second->convert(a15); 01562 } 01563 } 01564 01565 { 01566 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a16); 01567 if (it != kvmap.end()) { 01568 it->second->convert(a17); 01569 } 01570 } 01571 01572 { 01573 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a18); 01574 if (it != kvmap.end()) { 01575 it->second->convert(a19); 01576 } 01577 } 01578 01579 { 01580 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a20); 01581 if (it != kvmap.end()) { 01582 it->second->convert(a21); 01583 } 01584 } 01585 01586 { 01587 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a22); 01588 if (it != kvmap.end()) { 01589 it->second->convert(a23); 01590 } 01591 } 01592 01593 } 01594 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 01595 { 01596 o->type = msgpack::type::MAP; 01597 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*12)); 01598 o->via.map.size = 12; 01599 01600 o->via.map.ptr[0].key = msgpack::object(a0, z); 01601 o->via.map.ptr[0].val = msgpack::object(a1, z); 01602 01603 o->via.map.ptr[1].key = msgpack::object(a2, z); 01604 o->via.map.ptr[1].val = msgpack::object(a3, z); 01605 01606 o->via.map.ptr[2].key = msgpack::object(a4, z); 01607 o->via.map.ptr[2].val = msgpack::object(a5, z); 01608 01609 o->via.map.ptr[3].key = msgpack::object(a6, z); 01610 o->via.map.ptr[3].val = msgpack::object(a7, z); 01611 01612 o->via.map.ptr[4].key = msgpack::object(a8, z); 01613 o->via.map.ptr[4].val = msgpack::object(a9, z); 01614 01615 o->via.map.ptr[5].key = msgpack::object(a10, z); 01616 o->via.map.ptr[5].val = msgpack::object(a11, z); 01617 01618 o->via.map.ptr[6].key = msgpack::object(a12, z); 01619 o->via.map.ptr[6].val = msgpack::object(a13, z); 01620 01621 o->via.map.ptr[7].key = msgpack::object(a14, z); 01622 o->via.map.ptr[7].val = msgpack::object(a15, z); 01623 01624 o->via.map.ptr[8].key = msgpack::object(a16, z); 01625 o->via.map.ptr[8].val = msgpack::object(a17, z); 01626 01627 o->via.map.ptr[9].key = msgpack::object(a18, z); 01628 o->via.map.ptr[9].val = msgpack::object(a19, z); 01629 01630 o->via.map.ptr[10].key = msgpack::object(a20, z); 01631 o->via.map.ptr[10].val = msgpack::object(a21, z); 01632 01633 o->via.map.ptr[11].key = msgpack::object(a22, z); 01634 o->via.map.ptr[11].val = msgpack::object(a23, z); 01635 01636 } 01637 01638 A0& a0; 01639 A1& a1; 01640 A2& a2; 01641 A3& a3; 01642 A4& a4; 01643 A5& a5; 01644 A6& a6; 01645 A7& a7; 01646 A8& a8; 01647 A9& a9; 01648 A10& a10; 01649 A11& a11; 01650 A12& a12; 01651 A13& a13; 01652 A14& a14; 01653 A15& a15; 01654 A16& a16; 01655 A17& a17; 01656 A18& a18; 01657 A19& a19; 01658 A20& a20; 01659 A21& a21; 01660 A22& a22; 01661 A23& a23; 01662 }; 01663 01664 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25> 01665 struct define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25> { 01666 define_map(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11, A12& _a12, A13& _a13, A14& _a14, A15& _a15, A16& _a16, A17& _a17, A18& _a18, A19& _a19, A20& _a20, A21& _a21, A22& _a22, A23& _a23, A24& _a24, A25& _a25) : 01667 a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11), a12(_a12), a13(_a13), a14(_a14), a15(_a15), a16(_a16), a17(_a17), a18(_a18), a19(_a19), a20(_a20), a21(_a21), a22(_a22), a23(_a23), a24(_a24), a25(_a25) {} 01668 template <typename Packer> 01669 void msgpack_pack(Packer& pk) const 01670 { 01671 pk.pack_map(13); 01672 01673 pk.pack(a0); 01674 pk.pack(a1); 01675 pk.pack(a2); 01676 pk.pack(a3); 01677 pk.pack(a4); 01678 pk.pack(a5); 01679 pk.pack(a6); 01680 pk.pack(a7); 01681 pk.pack(a8); 01682 pk.pack(a9); 01683 pk.pack(a10); 01684 pk.pack(a11); 01685 pk.pack(a12); 01686 pk.pack(a13); 01687 pk.pack(a14); 01688 pk.pack(a15); 01689 pk.pack(a16); 01690 pk.pack(a17); 01691 pk.pack(a18); 01692 pk.pack(a19); 01693 pk.pack(a20); 01694 pk.pack(a21); 01695 pk.pack(a22); 01696 pk.pack(a23); 01697 pk.pack(a24); 01698 pk.pack(a25); 01699 } 01700 void msgpack_unpack(msgpack::object const& o) const 01701 { 01702 if(o.type != msgpack::type::MAP) { 01703 printf("throw msgpack::type_error()"); 01704 // throw msgpack::type_error(); 01705 } 01706 std::map<std::string, msgpack::object const*> kvmap; 01707 for (uint32_t i = 0; i < o.via.map.size; ++i) { 01708 kvmap.insert( 01709 std::map<std::string, msgpack::object const*>::value_type( 01710 std::string( 01711 o.via.map.ptr[i].key.via.str.ptr, 01712 o.via.map.ptr[i].key.via.str.size), 01713 &o.via.map.ptr[i].val 01714 ) 01715 ); 01716 } 01717 01718 { 01719 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 01720 if (it != kvmap.end()) { 01721 it->second->convert(a1); 01722 } 01723 } 01724 01725 { 01726 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a2); 01727 if (it != kvmap.end()) { 01728 it->second->convert(a3); 01729 } 01730 } 01731 01732 { 01733 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a4); 01734 if (it != kvmap.end()) { 01735 it->second->convert(a5); 01736 } 01737 } 01738 01739 { 01740 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a6); 01741 if (it != kvmap.end()) { 01742 it->second->convert(a7); 01743 } 01744 } 01745 01746 { 01747 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a8); 01748 if (it != kvmap.end()) { 01749 it->second->convert(a9); 01750 } 01751 } 01752 01753 { 01754 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a10); 01755 if (it != kvmap.end()) { 01756 it->second->convert(a11); 01757 } 01758 } 01759 01760 { 01761 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a12); 01762 if (it != kvmap.end()) { 01763 it->second->convert(a13); 01764 } 01765 } 01766 01767 { 01768 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a14); 01769 if (it != kvmap.end()) { 01770 it->second->convert(a15); 01771 } 01772 } 01773 01774 { 01775 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a16); 01776 if (it != kvmap.end()) { 01777 it->second->convert(a17); 01778 } 01779 } 01780 01781 { 01782 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a18); 01783 if (it != kvmap.end()) { 01784 it->second->convert(a19); 01785 } 01786 } 01787 01788 { 01789 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a20); 01790 if (it != kvmap.end()) { 01791 it->second->convert(a21); 01792 } 01793 } 01794 01795 { 01796 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a22); 01797 if (it != kvmap.end()) { 01798 it->second->convert(a23); 01799 } 01800 } 01801 01802 { 01803 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a24); 01804 if (it != kvmap.end()) { 01805 it->second->convert(a25); 01806 } 01807 } 01808 01809 } 01810 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 01811 { 01812 o->type = msgpack::type::MAP; 01813 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*13)); 01814 o->via.map.size = 13; 01815 01816 o->via.map.ptr[0].key = msgpack::object(a0, z); 01817 o->via.map.ptr[0].val = msgpack::object(a1, z); 01818 01819 o->via.map.ptr[1].key = msgpack::object(a2, z); 01820 o->via.map.ptr[1].val = msgpack::object(a3, z); 01821 01822 o->via.map.ptr[2].key = msgpack::object(a4, z); 01823 o->via.map.ptr[2].val = msgpack::object(a5, z); 01824 01825 o->via.map.ptr[3].key = msgpack::object(a6, z); 01826 o->via.map.ptr[3].val = msgpack::object(a7, z); 01827 01828 o->via.map.ptr[4].key = msgpack::object(a8, z); 01829 o->via.map.ptr[4].val = msgpack::object(a9, z); 01830 01831 o->via.map.ptr[5].key = msgpack::object(a10, z); 01832 o->via.map.ptr[5].val = msgpack::object(a11, z); 01833 01834 o->via.map.ptr[6].key = msgpack::object(a12, z); 01835 o->via.map.ptr[6].val = msgpack::object(a13, z); 01836 01837 o->via.map.ptr[7].key = msgpack::object(a14, z); 01838 o->via.map.ptr[7].val = msgpack::object(a15, z); 01839 01840 o->via.map.ptr[8].key = msgpack::object(a16, z); 01841 o->via.map.ptr[8].val = msgpack::object(a17, z); 01842 01843 o->via.map.ptr[9].key = msgpack::object(a18, z); 01844 o->via.map.ptr[9].val = msgpack::object(a19, z); 01845 01846 o->via.map.ptr[10].key = msgpack::object(a20, z); 01847 o->via.map.ptr[10].val = msgpack::object(a21, z); 01848 01849 o->via.map.ptr[11].key = msgpack::object(a22, z); 01850 o->via.map.ptr[11].val = msgpack::object(a23, z); 01851 01852 o->via.map.ptr[12].key = msgpack::object(a24, z); 01853 o->via.map.ptr[12].val = msgpack::object(a25, z); 01854 01855 } 01856 01857 A0& a0; 01858 A1& a1; 01859 A2& a2; 01860 A3& a3; 01861 A4& a4; 01862 A5& a5; 01863 A6& a6; 01864 A7& a7; 01865 A8& a8; 01866 A9& a9; 01867 A10& a10; 01868 A11& a11; 01869 A12& a12; 01870 A13& a13; 01871 A14& a14; 01872 A15& a15; 01873 A16& a16; 01874 A17& a17; 01875 A18& a18; 01876 A19& a19; 01877 A20& a20; 01878 A21& a21; 01879 A22& a22; 01880 A23& a23; 01881 A24& a24; 01882 A25& a25; 01883 }; 01884 01885 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27> 01886 struct define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27> { 01887 define_map(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11, A12& _a12, A13& _a13, A14& _a14, A15& _a15, A16& _a16, A17& _a17, A18& _a18, A19& _a19, A20& _a20, A21& _a21, A22& _a22, A23& _a23, A24& _a24, A25& _a25, A26& _a26, A27& _a27) : 01888 a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11), a12(_a12), a13(_a13), a14(_a14), a15(_a15), a16(_a16), a17(_a17), a18(_a18), a19(_a19), a20(_a20), a21(_a21), a22(_a22), a23(_a23), a24(_a24), a25(_a25), a26(_a26), a27(_a27) {} 01889 template <typename Packer> 01890 void msgpack_pack(Packer& pk) const 01891 { 01892 pk.pack_map(14); 01893 01894 pk.pack(a0); 01895 pk.pack(a1); 01896 pk.pack(a2); 01897 pk.pack(a3); 01898 pk.pack(a4); 01899 pk.pack(a5); 01900 pk.pack(a6); 01901 pk.pack(a7); 01902 pk.pack(a8); 01903 pk.pack(a9); 01904 pk.pack(a10); 01905 pk.pack(a11); 01906 pk.pack(a12); 01907 pk.pack(a13); 01908 pk.pack(a14); 01909 pk.pack(a15); 01910 pk.pack(a16); 01911 pk.pack(a17); 01912 pk.pack(a18); 01913 pk.pack(a19); 01914 pk.pack(a20); 01915 pk.pack(a21); 01916 pk.pack(a22); 01917 pk.pack(a23); 01918 pk.pack(a24); 01919 pk.pack(a25); 01920 pk.pack(a26); 01921 pk.pack(a27); 01922 } 01923 void msgpack_unpack(msgpack::object const& o) const 01924 { 01925 if(o.type != msgpack::type::MAP) { 01926 printf("throw msgpack::type_error()"); 01927 // throw msgpack::type_error(); 01928 } 01929 std::map<std::string, msgpack::object const*> kvmap; 01930 for (uint32_t i = 0; i < o.via.map.size; ++i) { 01931 kvmap.insert( 01932 std::map<std::string, msgpack::object const*>::value_type( 01933 std::string( 01934 o.via.map.ptr[i].key.via.str.ptr, 01935 o.via.map.ptr[i].key.via.str.size), 01936 &o.via.map.ptr[i].val 01937 ) 01938 ); 01939 } 01940 01941 { 01942 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 01943 if (it != kvmap.end()) { 01944 it->second->convert(a1); 01945 } 01946 } 01947 01948 { 01949 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a2); 01950 if (it != kvmap.end()) { 01951 it->second->convert(a3); 01952 } 01953 } 01954 01955 { 01956 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a4); 01957 if (it != kvmap.end()) { 01958 it->second->convert(a5); 01959 } 01960 } 01961 01962 { 01963 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a6); 01964 if (it != kvmap.end()) { 01965 it->second->convert(a7); 01966 } 01967 } 01968 01969 { 01970 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a8); 01971 if (it != kvmap.end()) { 01972 it->second->convert(a9); 01973 } 01974 } 01975 01976 { 01977 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a10); 01978 if (it != kvmap.end()) { 01979 it->second->convert(a11); 01980 } 01981 } 01982 01983 { 01984 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a12); 01985 if (it != kvmap.end()) { 01986 it->second->convert(a13); 01987 } 01988 } 01989 01990 { 01991 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a14); 01992 if (it != kvmap.end()) { 01993 it->second->convert(a15); 01994 } 01995 } 01996 01997 { 01998 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a16); 01999 if (it != kvmap.end()) { 02000 it->second->convert(a17); 02001 } 02002 } 02003 02004 { 02005 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a18); 02006 if (it != kvmap.end()) { 02007 it->second->convert(a19); 02008 } 02009 } 02010 02011 { 02012 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a20); 02013 if (it != kvmap.end()) { 02014 it->second->convert(a21); 02015 } 02016 } 02017 02018 { 02019 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a22); 02020 if (it != kvmap.end()) { 02021 it->second->convert(a23); 02022 } 02023 } 02024 02025 { 02026 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a24); 02027 if (it != kvmap.end()) { 02028 it->second->convert(a25); 02029 } 02030 } 02031 02032 { 02033 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a26); 02034 if (it != kvmap.end()) { 02035 it->second->convert(a27); 02036 } 02037 } 02038 02039 } 02040 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 02041 { 02042 o->type = msgpack::type::MAP; 02043 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*14)); 02044 o->via.map.size = 14; 02045 02046 o->via.map.ptr[0].key = msgpack::object(a0, z); 02047 o->via.map.ptr[0].val = msgpack::object(a1, z); 02048 02049 o->via.map.ptr[1].key = msgpack::object(a2, z); 02050 o->via.map.ptr[1].val = msgpack::object(a3, z); 02051 02052 o->via.map.ptr[2].key = msgpack::object(a4, z); 02053 o->via.map.ptr[2].val = msgpack::object(a5, z); 02054 02055 o->via.map.ptr[3].key = msgpack::object(a6, z); 02056 o->via.map.ptr[3].val = msgpack::object(a7, z); 02057 02058 o->via.map.ptr[4].key = msgpack::object(a8, z); 02059 o->via.map.ptr[4].val = msgpack::object(a9, z); 02060 02061 o->via.map.ptr[5].key = msgpack::object(a10, z); 02062 o->via.map.ptr[5].val = msgpack::object(a11, z); 02063 02064 o->via.map.ptr[6].key = msgpack::object(a12, z); 02065 o->via.map.ptr[6].val = msgpack::object(a13, z); 02066 02067 o->via.map.ptr[7].key = msgpack::object(a14, z); 02068 o->via.map.ptr[7].val = msgpack::object(a15, z); 02069 02070 o->via.map.ptr[8].key = msgpack::object(a16, z); 02071 o->via.map.ptr[8].val = msgpack::object(a17, z); 02072 02073 o->via.map.ptr[9].key = msgpack::object(a18, z); 02074 o->via.map.ptr[9].val = msgpack::object(a19, z); 02075 02076 o->via.map.ptr[10].key = msgpack::object(a20, z); 02077 o->via.map.ptr[10].val = msgpack::object(a21, z); 02078 02079 o->via.map.ptr[11].key = msgpack::object(a22, z); 02080 o->via.map.ptr[11].val = msgpack::object(a23, z); 02081 02082 o->via.map.ptr[12].key = msgpack::object(a24, z); 02083 o->via.map.ptr[12].val = msgpack::object(a25, z); 02084 02085 o->via.map.ptr[13].key = msgpack::object(a26, z); 02086 o->via.map.ptr[13].val = msgpack::object(a27, z); 02087 02088 } 02089 02090 A0& a0; 02091 A1& a1; 02092 A2& a2; 02093 A3& a3; 02094 A4& a4; 02095 A5& a5; 02096 A6& a6; 02097 A7& a7; 02098 A8& a8; 02099 A9& a9; 02100 A10& a10; 02101 A11& a11; 02102 A12& a12; 02103 A13& a13; 02104 A14& a14; 02105 A15& a15; 02106 A16& a16; 02107 A17& a17; 02108 A18& a18; 02109 A19& a19; 02110 A20& a20; 02111 A21& a21; 02112 A22& a22; 02113 A23& a23; 02114 A24& a24; 02115 A25& a25; 02116 A26& a26; 02117 A27& a27; 02118 }; 02119 02120 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28, typename A29> 02121 struct define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29> { 02122 define_map(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11, A12& _a12, A13& _a13, A14& _a14, A15& _a15, A16& _a16, A17& _a17, A18& _a18, A19& _a19, A20& _a20, A21& _a21, A22& _a22, A23& _a23, A24& _a24, A25& _a25, A26& _a26, A27& _a27, A28& _a28, A29& _a29) : 02123 a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11), a12(_a12), a13(_a13), a14(_a14), a15(_a15), a16(_a16), a17(_a17), a18(_a18), a19(_a19), a20(_a20), a21(_a21), a22(_a22), a23(_a23), a24(_a24), a25(_a25), a26(_a26), a27(_a27), a28(_a28), a29(_a29) {} 02124 template <typename Packer> 02125 void msgpack_pack(Packer& pk) const 02126 { 02127 pk.pack_map(15); 02128 02129 pk.pack(a0); 02130 pk.pack(a1); 02131 pk.pack(a2); 02132 pk.pack(a3); 02133 pk.pack(a4); 02134 pk.pack(a5); 02135 pk.pack(a6); 02136 pk.pack(a7); 02137 pk.pack(a8); 02138 pk.pack(a9); 02139 pk.pack(a10); 02140 pk.pack(a11); 02141 pk.pack(a12); 02142 pk.pack(a13); 02143 pk.pack(a14); 02144 pk.pack(a15); 02145 pk.pack(a16); 02146 pk.pack(a17); 02147 pk.pack(a18); 02148 pk.pack(a19); 02149 pk.pack(a20); 02150 pk.pack(a21); 02151 pk.pack(a22); 02152 pk.pack(a23); 02153 pk.pack(a24); 02154 pk.pack(a25); 02155 pk.pack(a26); 02156 pk.pack(a27); 02157 pk.pack(a28); 02158 pk.pack(a29); 02159 } 02160 void msgpack_unpack(msgpack::object const& o) const 02161 { 02162 if(o.type != msgpack::type::MAP) { 02163 printf("throw msgpack::type_error()"); 02164 // throw msgpack::type_error(); 02165 } 02166 std::map<std::string, msgpack::object const*> kvmap; 02167 for (uint32_t i = 0; i < o.via.map.size; ++i) { 02168 kvmap.insert( 02169 std::map<std::string, msgpack::object const*>::value_type( 02170 std::string( 02171 o.via.map.ptr[i].key.via.str.ptr, 02172 o.via.map.ptr[i].key.via.str.size), 02173 &o.via.map.ptr[i].val 02174 ) 02175 ); 02176 } 02177 02178 { 02179 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 02180 if (it != kvmap.end()) { 02181 it->second->convert(a1); 02182 } 02183 } 02184 02185 { 02186 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a2); 02187 if (it != kvmap.end()) { 02188 it->second->convert(a3); 02189 } 02190 } 02191 02192 { 02193 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a4); 02194 if (it != kvmap.end()) { 02195 it->second->convert(a5); 02196 } 02197 } 02198 02199 { 02200 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a6); 02201 if (it != kvmap.end()) { 02202 it->second->convert(a7); 02203 } 02204 } 02205 02206 { 02207 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a8); 02208 if (it != kvmap.end()) { 02209 it->second->convert(a9); 02210 } 02211 } 02212 02213 { 02214 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a10); 02215 if (it != kvmap.end()) { 02216 it->second->convert(a11); 02217 } 02218 } 02219 02220 { 02221 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a12); 02222 if (it != kvmap.end()) { 02223 it->second->convert(a13); 02224 } 02225 } 02226 02227 { 02228 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a14); 02229 if (it != kvmap.end()) { 02230 it->second->convert(a15); 02231 } 02232 } 02233 02234 { 02235 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a16); 02236 if (it != kvmap.end()) { 02237 it->second->convert(a17); 02238 } 02239 } 02240 02241 { 02242 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a18); 02243 if (it != kvmap.end()) { 02244 it->second->convert(a19); 02245 } 02246 } 02247 02248 { 02249 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a20); 02250 if (it != kvmap.end()) { 02251 it->second->convert(a21); 02252 } 02253 } 02254 02255 { 02256 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a22); 02257 if (it != kvmap.end()) { 02258 it->second->convert(a23); 02259 } 02260 } 02261 02262 { 02263 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a24); 02264 if (it != kvmap.end()) { 02265 it->second->convert(a25); 02266 } 02267 } 02268 02269 { 02270 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a26); 02271 if (it != kvmap.end()) { 02272 it->second->convert(a27); 02273 } 02274 } 02275 02276 { 02277 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a28); 02278 if (it != kvmap.end()) { 02279 it->second->convert(a29); 02280 } 02281 } 02282 02283 } 02284 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 02285 { 02286 o->type = msgpack::type::MAP; 02287 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*15)); 02288 o->via.map.size = 15; 02289 02290 o->via.map.ptr[0].key = msgpack::object(a0, z); 02291 o->via.map.ptr[0].val = msgpack::object(a1, z); 02292 02293 o->via.map.ptr[1].key = msgpack::object(a2, z); 02294 o->via.map.ptr[1].val = msgpack::object(a3, z); 02295 02296 o->via.map.ptr[2].key = msgpack::object(a4, z); 02297 o->via.map.ptr[2].val = msgpack::object(a5, z); 02298 02299 o->via.map.ptr[3].key = msgpack::object(a6, z); 02300 o->via.map.ptr[3].val = msgpack::object(a7, z); 02301 02302 o->via.map.ptr[4].key = msgpack::object(a8, z); 02303 o->via.map.ptr[4].val = msgpack::object(a9, z); 02304 02305 o->via.map.ptr[5].key = msgpack::object(a10, z); 02306 o->via.map.ptr[5].val = msgpack::object(a11, z); 02307 02308 o->via.map.ptr[6].key = msgpack::object(a12, z); 02309 o->via.map.ptr[6].val = msgpack::object(a13, z); 02310 02311 o->via.map.ptr[7].key = msgpack::object(a14, z); 02312 o->via.map.ptr[7].val = msgpack::object(a15, z); 02313 02314 o->via.map.ptr[8].key = msgpack::object(a16, z); 02315 o->via.map.ptr[8].val = msgpack::object(a17, z); 02316 02317 o->via.map.ptr[9].key = msgpack::object(a18, z); 02318 o->via.map.ptr[9].val = msgpack::object(a19, z); 02319 02320 o->via.map.ptr[10].key = msgpack::object(a20, z); 02321 o->via.map.ptr[10].val = msgpack::object(a21, z); 02322 02323 o->via.map.ptr[11].key = msgpack::object(a22, z); 02324 o->via.map.ptr[11].val = msgpack::object(a23, z); 02325 02326 o->via.map.ptr[12].key = msgpack::object(a24, z); 02327 o->via.map.ptr[12].val = msgpack::object(a25, z); 02328 02329 o->via.map.ptr[13].key = msgpack::object(a26, z); 02330 o->via.map.ptr[13].val = msgpack::object(a27, z); 02331 02332 o->via.map.ptr[14].key = msgpack::object(a28, z); 02333 o->via.map.ptr[14].val = msgpack::object(a29, z); 02334 02335 } 02336 02337 A0& a0; 02338 A1& a1; 02339 A2& a2; 02340 A3& a3; 02341 A4& a4; 02342 A5& a5; 02343 A6& a6; 02344 A7& a7; 02345 A8& a8; 02346 A9& a9; 02347 A10& a10; 02348 A11& a11; 02349 A12& a12; 02350 A13& a13; 02351 A14& a14; 02352 A15& a15; 02353 A16& a16; 02354 A17& a17; 02355 A18& a18; 02356 A19& a19; 02357 A20& a20; 02358 A21& a21; 02359 A22& a22; 02360 A23& a23; 02361 A24& a24; 02362 A25& a25; 02363 A26& a26; 02364 A27& a27; 02365 A28& a28; 02366 A29& a29; 02367 }; 02368 02369 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28, typename A29, typename A30, typename A31> 02370 struct define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31> { 02371 define_map(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9, A10& _a10, A11& _a11, A12& _a12, A13& _a13, A14& _a14, A15& _a15, A16& _a16, A17& _a17, A18& _a18, A19& _a19, A20& _a20, A21& _a21, A22& _a22, A23& _a23, A24& _a24, A25& _a25, A26& _a26, A27& _a27, A28& _a28, A29& _a29, A30& _a30, A31& _a31) : 02372 a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11), a12(_a12), a13(_a13), a14(_a14), a15(_a15), a16(_a16), a17(_a17), a18(_a18), a19(_a19), a20(_a20), a21(_a21), a22(_a22), a23(_a23), a24(_a24), a25(_a25), a26(_a26), a27(_a27), a28(_a28), a29(_a29), a30(_a30), a31(_a31) {} 02373 template <typename Packer> 02374 void msgpack_pack(Packer& pk) const 02375 { 02376 pk.pack_map(16); 02377 02378 pk.pack(a0); 02379 pk.pack(a1); 02380 pk.pack(a2); 02381 pk.pack(a3); 02382 pk.pack(a4); 02383 pk.pack(a5); 02384 pk.pack(a6); 02385 pk.pack(a7); 02386 pk.pack(a8); 02387 pk.pack(a9); 02388 pk.pack(a10); 02389 pk.pack(a11); 02390 pk.pack(a12); 02391 pk.pack(a13); 02392 pk.pack(a14); 02393 pk.pack(a15); 02394 pk.pack(a16); 02395 pk.pack(a17); 02396 pk.pack(a18); 02397 pk.pack(a19); 02398 pk.pack(a20); 02399 pk.pack(a21); 02400 pk.pack(a22); 02401 pk.pack(a23); 02402 pk.pack(a24); 02403 pk.pack(a25); 02404 pk.pack(a26); 02405 pk.pack(a27); 02406 pk.pack(a28); 02407 pk.pack(a29); 02408 pk.pack(a30); 02409 pk.pack(a31); 02410 } 02411 void msgpack_unpack(msgpack::object const& o) const 02412 { 02413 if(o.type != msgpack::type::MAP) { 02414 printf("throw msgpack::type_error()"); 02415 // throw msgpack::type_error(); 02416 } 02417 std::map<std::string, msgpack::object const*> kvmap; 02418 for (uint32_t i = 0; i < o.via.map.size; ++i) { 02419 kvmap.insert( 02420 std::map<std::string, msgpack::object const*>::value_type( 02421 std::string( 02422 o.via.map.ptr[i].key.via.str.ptr, 02423 o.via.map.ptr[i].key.via.str.size), 02424 &o.via.map.ptr[i].val 02425 ) 02426 ); 02427 } 02428 02429 { 02430 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 02431 if (it != kvmap.end()) { 02432 it->second->convert(a1); 02433 } 02434 } 02435 02436 { 02437 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a2); 02438 if (it != kvmap.end()) { 02439 it->second->convert(a3); 02440 } 02441 } 02442 02443 { 02444 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a4); 02445 if (it != kvmap.end()) { 02446 it->second->convert(a5); 02447 } 02448 } 02449 02450 { 02451 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a6); 02452 if (it != kvmap.end()) { 02453 it->second->convert(a7); 02454 } 02455 } 02456 02457 { 02458 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a8); 02459 if (it != kvmap.end()) { 02460 it->second->convert(a9); 02461 } 02462 } 02463 02464 { 02465 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a10); 02466 if (it != kvmap.end()) { 02467 it->second->convert(a11); 02468 } 02469 } 02470 02471 { 02472 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a12); 02473 if (it != kvmap.end()) { 02474 it->second->convert(a13); 02475 } 02476 } 02477 02478 { 02479 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a14); 02480 if (it != kvmap.end()) { 02481 it->second->convert(a15); 02482 } 02483 } 02484 02485 { 02486 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a16); 02487 if (it != kvmap.end()) { 02488 it->second->convert(a17); 02489 } 02490 } 02491 02492 { 02493 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a18); 02494 if (it != kvmap.end()) { 02495 it->second->convert(a19); 02496 } 02497 } 02498 02499 { 02500 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a20); 02501 if (it != kvmap.end()) { 02502 it->second->convert(a21); 02503 } 02504 } 02505 02506 { 02507 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a22); 02508 if (it != kvmap.end()) { 02509 it->second->convert(a23); 02510 } 02511 } 02512 02513 { 02514 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a24); 02515 if (it != kvmap.end()) { 02516 it->second->convert(a25); 02517 } 02518 } 02519 02520 { 02521 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a26); 02522 if (it != kvmap.end()) { 02523 it->second->convert(a27); 02524 } 02525 } 02526 02527 { 02528 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a28); 02529 if (it != kvmap.end()) { 02530 it->second->convert(a29); 02531 } 02532 } 02533 02534 { 02535 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a30); 02536 if (it != kvmap.end()) { 02537 it->second->convert(a31); 02538 } 02539 } 02540 02541 } 02542 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 02543 { 02544 o->type = msgpack::type::MAP; 02545 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*16)); 02546 o->via.map.size = 16; 02547 02548 o->via.map.ptr[0].key = msgpack::object(a0, z); 02549 o->via.map.ptr[0].val = msgpack::object(a1, z); 02550 02551 o->via.map.ptr[1].key = msgpack::object(a2, z); 02552 o->via.map.ptr[1].val = msgpack::object(a3, z); 02553 02554 o->via.map.ptr[2].key = msgpack::object(a4, z); 02555 o->via.map.ptr[2].val = msgpack::object(a5, z); 02556 02557 o->via.map.ptr[3].key = msgpack::object(a6, z); 02558 o->via.map.ptr[3].val = msgpack::object(a7, z); 02559 02560 o->via.map.ptr[4].key = msgpack::object(a8, z); 02561 o->via.map.ptr[4].val = msgpack::object(a9, z); 02562 02563 o->via.map.ptr[5].key = msgpack::object(a10, z); 02564 o->via.map.ptr[5].val = msgpack::object(a11, z); 02565 02566 o->via.map.ptr[6].key = msgpack::object(a12, z); 02567 o->via.map.ptr[6].val = msgpack::object(a13, z); 02568 02569 o->via.map.ptr[7].key = msgpack::object(a14, z); 02570 o->via.map.ptr[7].val = msgpack::object(a15, z); 02571 02572 o->via.map.ptr[8].key = msgpack::object(a16, z); 02573 o->via.map.ptr[8].val = msgpack::object(a17, z); 02574 02575 o->via.map.ptr[9].key = msgpack::object(a18, z); 02576 o->via.map.ptr[9].val = msgpack::object(a19, z); 02577 02578 o->via.map.ptr[10].key = msgpack::object(a20, z); 02579 o->via.map.ptr[10].val = msgpack::object(a21, z); 02580 02581 o->via.map.ptr[11].key = msgpack::object(a22, z); 02582 o->via.map.ptr[11].val = msgpack::object(a23, z); 02583 02584 o->via.map.ptr[12].key = msgpack::object(a24, z); 02585 o->via.map.ptr[12].val = msgpack::object(a25, z); 02586 02587 o->via.map.ptr[13].key = msgpack::object(a26, z); 02588 o->via.map.ptr[13].val = msgpack::object(a27, z); 02589 02590 o->via.map.ptr[14].key = msgpack::object(a28, z); 02591 o->via.map.ptr[14].val = msgpack::object(a29, z); 02592 02593 o->via.map.ptr[15].key = msgpack::object(a30, z); 02594 o->via.map.ptr[15].val = msgpack::object(a31, z); 02595 02596 } 02597 02598 A0& a0; 02599 A1& a1; 02600 A2& a2; 02601 A3& a3; 02602 A4& a4; 02603 A5& a5; 02604 A6& a6; 02605 A7& a7; 02606 A8& a8; 02607 A9& a9; 02608 A10& a10; 02609 A11& a11; 02610 A12& a12; 02611 A13& a13; 02612 A14& a14; 02613 A15& a15; 02614 A16& a16; 02615 A17& a17; 02616 A18& a18; 02617 A19& a19; 02618 A20& a20; 02619 A21& a21; 02620 A22& a22; 02621 A23& a23; 02622 A24& a24; 02623 A25& a25; 02624 A26& a26; 02625 A27& a27; 02626 A28& a28; 02627 A29& a29; 02628 A30& a30; 02629 A31& a31; 02630 }; 02631 02632 /// @endcond 02633 02634 inline define_map<> make_define_map() 02635 { 02636 return define_map<>(); 02637 } 02638 02639 /// @cond 02640 02641 template <typename A0> 02642 inline define_map<A0> make_define_map(A0& a0) 02643 { 02644 return define_map<A0>(a0); 02645 } 02646 02647 template <typename A0, typename A1> 02648 inline define_map<A0, A1> make_define_map(A0& a0, A1& a1) 02649 { 02650 return define_map<A0, A1>(a0, a1); 02651 } 02652 02653 template <typename A0, typename A1, typename A2> 02654 inline define_map<A0, A1, A2> make_define_map(A0& a0, A1& a1, A2& a2) 02655 { 02656 return define_map<A0, A1, A2>(a0, a1, a2); 02657 } 02658 02659 template <typename A0, typename A1, typename A2, typename A3> 02660 inline define_map<A0, A1, A2, A3> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3) 02661 { 02662 return define_map<A0, A1, A2, A3>(a0, a1, a2, a3); 02663 } 02664 02665 template <typename A0, typename A1, typename A2, typename A3, typename A4> 02666 inline define_map<A0, A1, A2, A3, A4> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4) 02667 { 02668 return define_map<A0, A1, A2, A3, A4>(a0, a1, a2, a3, a4); 02669 } 02670 02671 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5> 02672 inline define_map<A0, A1, A2, A3, A4, A5> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5) 02673 { 02674 return define_map<A0, A1, A2, A3, A4, A5>(a0, a1, a2, a3, a4, a5); 02675 } 02676 02677 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6> 02678 inline define_map<A0, A1, A2, A3, A4, A5, A6> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6) 02679 { 02680 return define_map<A0, A1, A2, A3, A4, A5, A6>(a0, a1, a2, a3, a4, a5, a6); 02681 } 02682 02683 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7> 02684 inline define_map<A0, A1, A2, A3, A4, A5, A6, A7> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7) 02685 { 02686 return define_map<A0, A1, A2, A3, A4, A5, A6, A7>(a0, a1, a2, a3, a4, a5, a6, a7); 02687 } 02688 02689 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8> 02690 inline define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8) 02691 { 02692 return define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8>(a0, a1, a2, a3, a4, a5, a6, a7, a8); 02693 } 02694 02695 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9> 02696 inline define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9) 02697 { 02698 return define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9); 02699 } 02700 02701 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10> 02702 inline define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10) 02703 { 02704 return define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10); 02705 } 02706 02707 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11> 02708 inline define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11) 02709 { 02710 return define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11); 02711 } 02712 02713 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12> 02714 inline define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12) 02715 { 02716 return define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12); 02717 } 02718 02719 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13> 02720 inline define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13) 02721 { 02722 return define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13); 02723 } 02724 02725 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14> 02726 inline define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14) 02727 { 02728 return define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14); 02729 } 02730 02731 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15> 02732 inline define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15) 02733 { 02734 return define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15); 02735 } 02736 02737 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16> 02738 inline define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16) 02739 { 02740 return define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16); 02741 } 02742 02743 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17> 02744 inline define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16, A17& a17) 02745 { 02746 return define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17); 02747 } 02748 02749 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18> 02750 inline define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16, A17& a17, A18& a18) 02751 { 02752 return define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18); 02753 } 02754 02755 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19> 02756 inline define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16, A17& a17, A18& a18, A19& a19) 02757 { 02758 return define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19); 02759 } 02760 02761 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20> 02762 inline define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16, A17& a17, A18& a18, A19& a19, A20& a20) 02763 { 02764 return define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20); 02765 } 02766 02767 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21> 02768 inline define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16, A17& a17, A18& a18, A19& a19, A20& a20, A21& a21) 02769 { 02770 return define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21); 02771 } 02772 02773 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22> 02774 inline define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16, A17& a17, A18& a18, A19& a19, A20& a20, A21& a21, A22& a22) 02775 { 02776 return define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21, a22); 02777 } 02778 02779 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23> 02780 inline define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16, A17& a17, A18& a18, A19& a19, A20& a20, A21& a21, A22& a22, A23& a23) 02781 { 02782 return define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21, a22, a23); 02783 } 02784 02785 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24> 02786 inline define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16, A17& a17, A18& a18, A19& a19, A20& a20, A21& a21, A22& a22, A23& a23, A24& a24) 02787 { 02788 return define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24); 02789 } 02790 02791 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25> 02792 inline define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16, A17& a17, A18& a18, A19& a19, A20& a20, A21& a21, A22& a22, A23& a23, A24& a24, A25& a25) 02793 { 02794 return define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24, a25); 02795 } 02796 02797 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26> 02798 inline define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16, A17& a17, A18& a18, A19& a19, A20& a20, A21& a21, A22& a22, A23& a23, A24& a24, A25& a25, A26& a26) 02799 { 02800 return define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24, a25, a26); 02801 } 02802 02803 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27> 02804 inline define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16, A17& a17, A18& a18, A19& a19, A20& a20, A21& a21, A22& a22, A23& a23, A24& a24, A25& a25, A26& a26, A27& a27) 02805 { 02806 return define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24, a25, a26, a27); 02807 } 02808 02809 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28> 02810 inline define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16, A17& a17, A18& a18, A19& a19, A20& a20, A21& a21, A22& a22, A23& a23, A24& a24, A25& a25, A26& a26, A27& a27, A28& a28) 02811 { 02812 return define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24, a25, a26, a27, a28); 02813 } 02814 02815 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28, typename A29> 02816 inline define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16, A17& a17, A18& a18, A19& a19, A20& a20, A21& a21, A22& a22, A23& a23, A24& a24, A25& a25, A26& a26, A27& a27, A28& a28, A29& a29) 02817 { 02818 return define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24, a25, a26, a27, a28, a29); 02819 } 02820 02821 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28, typename A29, typename A30> 02822 inline define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16, A17& a17, A18& a18, A19& a19, A20& a20, A21& a21, A22& a22, A23& a23, A24& a24, A25& a25, A26& a26, A27& a27, A28& a28, A29& a29, A30& a30) 02823 { 02824 return define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24, a25, a26, a27, a28, a29, a30); 02825 } 02826 02827 template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11, typename A12, typename A13, typename A14, typename A15, typename A16, typename A17, typename A18, typename A19, typename A20, typename A21, typename A22, typename A23, typename A24, typename A25, typename A26, typename A27, typename A28, typename A29, typename A30, typename A31> 02828 inline define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5, A6& a6, A7& a7, A8& a8, A9& a9, A10& a10, A11& a11, A12& a12, A13& a13, A14& a14, A15& a15, A16& a16, A17& a17, A18& a18, A19& a19, A20& a20, A21& a21, A22& a22, A23& a23, A24& a24, A25& a25, A26& a26, A27& a27, A28& a28, A29& a29, A30& a30, A31& a31) 02829 { 02830 return define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24, a25, a26, a27, a28, a29, a30, a31); 02831 } 02832 02833 /// @endcond 02834 02835 } // namespace type 02836 /// @cond 02837 } // MSGPACK_API_VERSION_NAMESPACE(v1) 02838 /// @endcond 02839 } // namespace msgpack 02840 02841 #endif // MSGPACK_CPP03_DEFINE_MAP_HPP 02842
Generated on Tue Jul 12 2022 22:51:45 by
1.7.2