1// 2// MessagePack for C++ static resolution routine 3// 4// Copyright (C) 2015 KONDO Takatoshi 5// 6// Distributed under the Boost Software License, Version 1.0. 7// (See accompanying file LICENSE_1_0.txt or copy at 8// http://www.boost.org/LICENSE_1_0.txt) 9// 10#ifndef MSGPACK_CPP03_DEFINE_MAP_HPP 11#define MSGPACK_CPP03_DEFINE_MAP_HPP 12 13// BOOST_PP_VARIADICS is defined in boost/preprocessor/config/config.hpp 14// http://www.boost.org/libs/preprocessor/doc/ref/variadics.html 15// However, supporting compiler detection is not complete. msgpack-c requires 16// variadic macro arguments support. So BOOST_PP_VARIADICS is defined here explicitly. 17#if !defined(MSGPACK_PP_VARIADICS) 18#define MSGPACK_PP_VARIADICS 19#endif 20 21#include <msgpack/preprocessor.hpp> 22 23#include "msgpack/versioning.hpp" 24#include "msgpack/adaptor/msgpack_tuple.hpp" 25#include "msgpack/adaptor/adaptor_base.hpp" 26#include "msgpack/object_fwd.hpp" 27 28#define MSGPACK_DEFINE_MAP_EACH_PROC(r, data, elem) \ 29 MSGPACK_PP_IF( \ 30 MSGPACK_PP_IS_BEGIN_PARENS(elem), \ 31 elem, \ 32 (MSGPACK_PP_STRINGIZE(elem))(elem) \ 33 ) 34 35#define MSGPACK_DEFINE_MAP_IMPL(...) \ 36 MSGPACK_PP_SEQ_TO_TUPLE( \ 37 MSGPACK_PP_SEQ_FOR_EACH( \ 38 MSGPACK_DEFINE_MAP_EACH_PROC, \ 39 0, \ 40 MSGPACK_PP_VARIADIC_TO_SEQ(__VA_ARGS__) \ 41 ) \ 42 ) 43 44#define MSGPACK_DEFINE_MAP(...) \ 45 template <typename Packer> \ 46 void msgpack_pack(Packer& pk) const \ 47 { \ 48 msgpack::type::make_define_map \ 49 MSGPACK_DEFINE_MAP_IMPL(__VA_ARGS__) \ 50 .msgpack_pack(pk); \ 51 } \ 52 void msgpack_unpack(msgpack::object const& o) \ 53 { \ 54 msgpack::type::make_define_map \ 55 MSGPACK_DEFINE_MAP_IMPL(__VA_ARGS__) \ 56 .msgpack_unpack(o); \ 57 }\ 58 template <typename MSGPACK_OBJECT> \ 59 void msgpack_object(MSGPACK_OBJECT* o, msgpack::zone& z) const \ 60 { \ 61 msgpack::type::make_define_map \ 62 MSGPACK_DEFINE_MAP_IMPL(__VA_ARGS__) \ 63 .msgpack_object(o, z); \ 64 } 65 66#define MSGPACK_BASE_MAP(base) \ 67 (MSGPACK_PP_STRINGIZE(base))(*const_cast<base *>(static_cast<base const*>(this))) 68 69namespace msgpack { 70/// @cond 71MSGPACK_API_VERSION_NAMESPACE(v1) { 72/// @endcond 73namespace type { 74 75/// @cond 76 77template <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> 78struct define_map; 79/// @endcond 80 81template <> 82struct define_map<> { 83 template <typename Packer> 84 void msgpack_pack(Packer& pk) const 85 { 86 pk.pack_map(0); 87 } 88 void msgpack_unpack(msgpack::object const& o) const 89 { 90 if(o.type != msgpack::type::MAP) { throw msgpack::type_error(); } 91 } 92 void msgpack_object(msgpack::object* o, msgpack::zone&) const 93 { 94 o->type = msgpack::type::MAP; 95 o->via.map.ptr = nullptr; 96 o->via.map.size = 0; 97 } 98}; 99 100/// @cond 101 102template <typename A0, typename A1> 103struct define_map<A0, A1> { 104 define_map(A0& _a0, A1& _a1) : 105 a0(_a0), a1(_a1) {} 106 template <typename Packer> 107 void msgpack_pack(Packer& pk) const 108 { 109 pk.pack_map(1); 110 111 pk.pack(a0); 112 pk.pack(a1); 113 } 114 void msgpack_unpack(msgpack::object const& o) const 115 { 116 if(o.type != msgpack::type::MAP) { throw msgpack::type_error(); } 117 std::map<std::string, msgpack::object const*> kvmap; 118 for (uint32_t i = 0; i < o.via.map.size; ++i) { 119 kvmap.insert( 120 std::map<std::string, msgpack::object const*>::value_type( 121 std::string( 122 o.via.map.ptr[i].key.via.str.ptr, 123 o.via.map.ptr[i].key.via.str.size), 124 &o.via.map.ptr[i].val 125 ) 126 ); 127 } 128 129 { 130 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 131 if (it != kvmap.end()) { 132 it->second->convert(a1); 133 } 134 } 135 136 } 137 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 138 { 139 o->type = msgpack::type::MAP; 140 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*1)); 141 o->via.map.size = 1; 142 143 o->via.map.ptr[0].key = msgpack::object(a0, z); 144 o->via.map.ptr[0].val = msgpack::object(a1, z); 145 146 } 147 148 A0& a0; 149 A1& a1; 150}; 151 152template <typename A0, typename A1, typename A2, typename A3> 153struct define_map<A0, A1, A2, A3> { 154 define_map(A0& _a0, A1& _a1, A2& _a2, A3& _a3) : 155 a0(_a0), a1(_a1), a2(_a2), a3(_a3) {} 156 template <typename Packer> 157 void msgpack_pack(Packer& pk) const 158 { 159 pk.pack_map(2); 160 161 pk.pack(a0); 162 pk.pack(a1); 163 pk.pack(a2); 164 pk.pack(a3); 165 } 166 void msgpack_unpack(msgpack::object const& o) const 167 { 168 if(o.type != msgpack::type::MAP) { throw msgpack::type_error(); } 169 std::map<std::string, msgpack::object const*> kvmap; 170 for (uint32_t i = 0; i < o.via.map.size; ++i) { 171 kvmap.insert( 172 std::map<std::string, msgpack::object const*>::value_type( 173 std::string( 174 o.via.map.ptr[i].key.via.str.ptr, 175 o.via.map.ptr[i].key.via.str.size), 176 &o.via.map.ptr[i].val 177 ) 178 ); 179 } 180 181 { 182 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 183 if (it != kvmap.end()) { 184 it->second->convert(a1); 185 } 186 } 187 188 { 189 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a2); 190 if (it != kvmap.end()) { 191 it->second->convert(a3); 192 } 193 } 194 195 } 196 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 197 { 198 o->type = msgpack::type::MAP; 199 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*2)); 200 o->via.map.size = 2; 201 202 o->via.map.ptr[0].key = msgpack::object(a0, z); 203 o->via.map.ptr[0].val = msgpack::object(a1, z); 204 205 o->via.map.ptr[1].key = msgpack::object(a2, z); 206 o->via.map.ptr[1].val = msgpack::object(a3, z); 207 208 } 209 210 A0& a0; 211 A1& a1; 212 A2& a2; 213 A3& a3; 214}; 215 216template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5> 217struct define_map<A0, A1, A2, A3, A4, A5> { 218 define_map(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5) : 219 a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5) {} 220 template <typename Packer> 221 void msgpack_pack(Packer& pk) const 222 { 223 pk.pack_map(3); 224 225 pk.pack(a0); 226 pk.pack(a1); 227 pk.pack(a2); 228 pk.pack(a3); 229 pk.pack(a4); 230 pk.pack(a5); 231 } 232 void msgpack_unpack(msgpack::object const& o) const 233 { 234 if(o.type != msgpack::type::MAP) { throw msgpack::type_error(); } 235 std::map<std::string, msgpack::object const*> kvmap; 236 for (uint32_t i = 0; i < o.via.map.size; ++i) { 237 kvmap.insert( 238 std::map<std::string, msgpack::object const*>::value_type( 239 std::string( 240 o.via.map.ptr[i].key.via.str.ptr, 241 o.via.map.ptr[i].key.via.str.size), 242 &o.via.map.ptr[i].val 243 ) 244 ); 245 } 246 247 { 248 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 249 if (it != kvmap.end()) { 250 it->second->convert(a1); 251 } 252 } 253 254 { 255 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a2); 256 if (it != kvmap.end()) { 257 it->second->convert(a3); 258 } 259 } 260 261 { 262 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a4); 263 if (it != kvmap.end()) { 264 it->second->convert(a5); 265 } 266 } 267 268 } 269 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 270 { 271 o->type = msgpack::type::MAP; 272 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*3)); 273 o->via.map.size = 3; 274 275 o->via.map.ptr[0].key = msgpack::object(a0, z); 276 o->via.map.ptr[0].val = msgpack::object(a1, z); 277 278 o->via.map.ptr[1].key = msgpack::object(a2, z); 279 o->via.map.ptr[1].val = msgpack::object(a3, z); 280 281 o->via.map.ptr[2].key = msgpack::object(a4, z); 282 o->via.map.ptr[2].val = msgpack::object(a5, z); 283 284 } 285 286 A0& a0; 287 A1& a1; 288 A2& a2; 289 A3& a3; 290 A4& a4; 291 A5& a5; 292}; 293 294template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7> 295struct define_map<A0, A1, A2, A3, A4, A5, A6, A7> { 296 define_map(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7) : 297 a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7) {} 298 template <typename Packer> 299 void msgpack_pack(Packer& pk) const 300 { 301 pk.pack_map(4); 302 303 pk.pack(a0); 304 pk.pack(a1); 305 pk.pack(a2); 306 pk.pack(a3); 307 pk.pack(a4); 308 pk.pack(a5); 309 pk.pack(a6); 310 pk.pack(a7); 311 } 312 void msgpack_unpack(msgpack::object const& o) const 313 { 314 if(o.type != msgpack::type::MAP) { throw msgpack::type_error(); } 315 std::map<std::string, msgpack::object const*> kvmap; 316 for (uint32_t i = 0; i < o.via.map.size; ++i) { 317 kvmap.insert( 318 std::map<std::string, msgpack::object const*>::value_type( 319 std::string( 320 o.via.map.ptr[i].key.via.str.ptr, 321 o.via.map.ptr[i].key.via.str.size), 322 &o.via.map.ptr[i].val 323 ) 324 ); 325 } 326 327 { 328 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 329 if (it != kvmap.end()) { 330 it->second->convert(a1); 331 } 332 } 333 334 { 335 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a2); 336 if (it != kvmap.end()) { 337 it->second->convert(a3); 338 } 339 } 340 341 { 342 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a4); 343 if (it != kvmap.end()) { 344 it->second->convert(a5); 345 } 346 } 347 348 { 349 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a6); 350 if (it != kvmap.end()) { 351 it->second->convert(a7); 352 } 353 } 354 355 } 356 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 357 { 358 o->type = msgpack::type::MAP; 359 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*4)); 360 o->via.map.size = 4; 361 362 o->via.map.ptr[0].key = msgpack::object(a0, z); 363 o->via.map.ptr[0].val = msgpack::object(a1, z); 364 365 o->via.map.ptr[1].key = msgpack::object(a2, z); 366 o->via.map.ptr[1].val = msgpack::object(a3, z); 367 368 o->via.map.ptr[2].key = msgpack::object(a4, z); 369 o->via.map.ptr[2].val = msgpack::object(a5, z); 370 371 o->via.map.ptr[3].key = msgpack::object(a6, z); 372 o->via.map.ptr[3].val = msgpack::object(a7, z); 373 374 } 375 376 A0& a0; 377 A1& a1; 378 A2& a2; 379 A3& a3; 380 A4& a4; 381 A5& a5; 382 A6& a6; 383 A7& a7; 384}; 385 386template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9> 387struct define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9> { 388 define_map(A0& _a0, A1& _a1, A2& _a2, A3& _a3, A4& _a4, A5& _a5, A6& _a6, A7& _a7, A8& _a8, A9& _a9) : 389 a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9) {} 390 template <typename Packer> 391 void msgpack_pack(Packer& pk) const 392 { 393 pk.pack_map(5); 394 395 pk.pack(a0); 396 pk.pack(a1); 397 pk.pack(a2); 398 pk.pack(a3); 399 pk.pack(a4); 400 pk.pack(a5); 401 pk.pack(a6); 402 pk.pack(a7); 403 pk.pack(a8); 404 pk.pack(a9); 405 } 406 void msgpack_unpack(msgpack::object const& o) const 407 { 408 if(o.type != msgpack::type::MAP) { throw msgpack::type_error(); } 409 std::map<std::string, msgpack::object const*> kvmap; 410 for (uint32_t i = 0; i < o.via.map.size; ++i) { 411 kvmap.insert( 412 std::map<std::string, msgpack::object const*>::value_type( 413 std::string( 414 o.via.map.ptr[i].key.via.str.ptr, 415 o.via.map.ptr[i].key.via.str.size), 416 &o.via.map.ptr[i].val 417 ) 418 ); 419 } 420 421 { 422 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 423 if (it != kvmap.end()) { 424 it->second->convert(a1); 425 } 426 } 427 428 { 429 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a2); 430 if (it != kvmap.end()) { 431 it->second->convert(a3); 432 } 433 } 434 435 { 436 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a4); 437 if (it != kvmap.end()) { 438 it->second->convert(a5); 439 } 440 } 441 442 { 443 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a6); 444 if (it != kvmap.end()) { 445 it->second->convert(a7); 446 } 447 } 448 449 { 450 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a8); 451 if (it != kvmap.end()) { 452 it->second->convert(a9); 453 } 454 } 455 456 } 457 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 458 { 459 o->type = msgpack::type::MAP; 460 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*5)); 461 o->via.map.size = 5; 462 463 o->via.map.ptr[0].key = msgpack::object(a0, z); 464 o->via.map.ptr[0].val = msgpack::object(a1, z); 465 466 o->via.map.ptr[1].key = msgpack::object(a2, z); 467 o->via.map.ptr[1].val = msgpack::object(a3, z); 468 469 o->via.map.ptr[2].key = msgpack::object(a4, z); 470 o->via.map.ptr[2].val = msgpack::object(a5, z); 471 472 o->via.map.ptr[3].key = msgpack::object(a6, z); 473 o->via.map.ptr[3].val = msgpack::object(a7, z); 474 475 o->via.map.ptr[4].key = msgpack::object(a8, z); 476 o->via.map.ptr[4].val = msgpack::object(a9, z); 477 478 } 479 480 A0& a0; 481 A1& a1; 482 A2& a2; 483 A3& a3; 484 A4& a4; 485 A5& a5; 486 A6& a6; 487 A7& a7; 488 A8& a8; 489 A9& a9; 490}; 491 492template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11> 493struct define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11> { 494 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) : 495 a0(_a0), a1(_a1), a2(_a2), a3(_a3), a4(_a4), a5(_a5), a6(_a6), a7(_a7), a8(_a8), a9(_a9), a10(_a10), a11(_a11) {} 496 template <typename Packer> 497 void msgpack_pack(Packer& pk) const 498 { 499 pk.pack_map(6); 500 501 pk.pack(a0); 502 pk.pack(a1); 503 pk.pack(a2); 504 pk.pack(a3); 505 pk.pack(a4); 506 pk.pack(a5); 507 pk.pack(a6); 508 pk.pack(a7); 509 pk.pack(a8); 510 pk.pack(a9); 511 pk.pack(a10); 512 pk.pack(a11); 513 } 514 void msgpack_unpack(msgpack::object const& o) const 515 { 516 if(o.type != msgpack::type::MAP) { throw msgpack::type_error(); } 517 std::map<std::string, msgpack::object const*> kvmap; 518 for (uint32_t i = 0; i < o.via.map.size; ++i) { 519 kvmap.insert( 520 std::map<std::string, msgpack::object const*>::value_type( 521 std::string( 522 o.via.map.ptr[i].key.via.str.ptr, 523 o.via.map.ptr[i].key.via.str.size), 524 &o.via.map.ptr[i].val 525 ) 526 ); 527 } 528 529 { 530 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 531 if (it != kvmap.end()) { 532 it->second->convert(a1); 533 } 534 } 535 536 { 537 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a2); 538 if (it != kvmap.end()) { 539 it->second->convert(a3); 540 } 541 } 542 543 { 544 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a4); 545 if (it != kvmap.end()) { 546 it->second->convert(a5); 547 } 548 } 549 550 { 551 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a6); 552 if (it != kvmap.end()) { 553 it->second->convert(a7); 554 } 555 } 556 557 { 558 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a8); 559 if (it != kvmap.end()) { 560 it->second->convert(a9); 561 } 562 } 563 564 { 565 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a10); 566 if (it != kvmap.end()) { 567 it->second->convert(a11); 568 } 569 } 570 571 } 572 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 573 { 574 o->type = msgpack::type::MAP; 575 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*6)); 576 o->via.map.size = 6; 577 578 o->via.map.ptr[0].key = msgpack::object(a0, z); 579 o->via.map.ptr[0].val = msgpack::object(a1, z); 580 581 o->via.map.ptr[1].key = msgpack::object(a2, z); 582 o->via.map.ptr[1].val = msgpack::object(a3, z); 583 584 o->via.map.ptr[2].key = msgpack::object(a4, z); 585 o->via.map.ptr[2].val = msgpack::object(a5, z); 586 587 o->via.map.ptr[3].key = msgpack::object(a6, z); 588 o->via.map.ptr[3].val = msgpack::object(a7, z); 589 590 o->via.map.ptr[4].key = msgpack::object(a8, z); 591 o->via.map.ptr[4].val = msgpack::object(a9, z); 592 593 o->via.map.ptr[5].key = msgpack::object(a10, z); 594 o->via.map.ptr[5].val = msgpack::object(a11, z); 595 596 } 597 598 A0& a0; 599 A1& a1; 600 A2& a2; 601 A3& a3; 602 A4& a4; 603 A5& a5; 604 A6& a6; 605 A7& a7; 606 A8& a8; 607 A9& a9; 608 A10& a10; 609 A11& a11; 610}; 611 612template <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> 613struct define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13> { 614 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) : 615 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) {} 616 template <typename Packer> 617 void msgpack_pack(Packer& pk) const 618 { 619 pk.pack_map(7); 620 621 pk.pack(a0); 622 pk.pack(a1); 623 pk.pack(a2); 624 pk.pack(a3); 625 pk.pack(a4); 626 pk.pack(a5); 627 pk.pack(a6); 628 pk.pack(a7); 629 pk.pack(a8); 630 pk.pack(a9); 631 pk.pack(a10); 632 pk.pack(a11); 633 pk.pack(a12); 634 pk.pack(a13); 635 } 636 void msgpack_unpack(msgpack::object const& o) const 637 { 638 if(o.type != msgpack::type::MAP) { throw msgpack::type_error(); } 639 std::map<std::string, msgpack::object const*> kvmap; 640 for (uint32_t i = 0; i < o.via.map.size; ++i) { 641 kvmap.insert( 642 std::map<std::string, msgpack::object const*>::value_type( 643 std::string( 644 o.via.map.ptr[i].key.via.str.ptr, 645 o.via.map.ptr[i].key.via.str.size), 646 &o.via.map.ptr[i].val 647 ) 648 ); 649 } 650 651 { 652 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 653 if (it != kvmap.end()) { 654 it->second->convert(a1); 655 } 656 } 657 658 { 659 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a2); 660 if (it != kvmap.end()) { 661 it->second->convert(a3); 662 } 663 } 664 665 { 666 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a4); 667 if (it != kvmap.end()) { 668 it->second->convert(a5); 669 } 670 } 671 672 { 673 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a6); 674 if (it != kvmap.end()) { 675 it->second->convert(a7); 676 } 677 } 678 679 { 680 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a8); 681 if (it != kvmap.end()) { 682 it->second->convert(a9); 683 } 684 } 685 686 { 687 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a10); 688 if (it != kvmap.end()) { 689 it->second->convert(a11); 690 } 691 } 692 693 { 694 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a12); 695 if (it != kvmap.end()) { 696 it->second->convert(a13); 697 } 698 } 699 700 } 701 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 702 { 703 o->type = msgpack::type::MAP; 704 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*7)); 705 o->via.map.size = 7; 706 707 o->via.map.ptr[0].key = msgpack::object(a0, z); 708 o->via.map.ptr[0].val = msgpack::object(a1, z); 709 710 o->via.map.ptr[1].key = msgpack::object(a2, z); 711 o->via.map.ptr[1].val = msgpack::object(a3, z); 712 713 o->via.map.ptr[2].key = msgpack::object(a4, z); 714 o->via.map.ptr[2].val = msgpack::object(a5, z); 715 716 o->via.map.ptr[3].key = msgpack::object(a6, z); 717 o->via.map.ptr[3].val = msgpack::object(a7, z); 718 719 o->via.map.ptr[4].key = msgpack::object(a8, z); 720 o->via.map.ptr[4].val = msgpack::object(a9, z); 721 722 o->via.map.ptr[5].key = msgpack::object(a10, z); 723 o->via.map.ptr[5].val = msgpack::object(a11, z); 724 725 o->via.map.ptr[6].key = msgpack::object(a12, z); 726 o->via.map.ptr[6].val = msgpack::object(a13, z); 727 728 } 729 730 A0& a0; 731 A1& a1; 732 A2& a2; 733 A3& a3; 734 A4& a4; 735 A5& a5; 736 A6& a6; 737 A7& a7; 738 A8& a8; 739 A9& a9; 740 A10& a10; 741 A11& a11; 742 A12& a12; 743 A13& a13; 744}; 745 746template <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> 747struct define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15> { 748 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) : 749 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) {} 750 template <typename Packer> 751 void msgpack_pack(Packer& pk) const 752 { 753 pk.pack_map(8); 754 755 pk.pack(a0); 756 pk.pack(a1); 757 pk.pack(a2); 758 pk.pack(a3); 759 pk.pack(a4); 760 pk.pack(a5); 761 pk.pack(a6); 762 pk.pack(a7); 763 pk.pack(a8); 764 pk.pack(a9); 765 pk.pack(a10); 766 pk.pack(a11); 767 pk.pack(a12); 768 pk.pack(a13); 769 pk.pack(a14); 770 pk.pack(a15); 771 } 772 void msgpack_unpack(msgpack::object const& o) const 773 { 774 if(o.type != msgpack::type::MAP) { throw msgpack::type_error(); } 775 std::map<std::string, msgpack::object const*> kvmap; 776 for (uint32_t i = 0; i < o.via.map.size; ++i) { 777 kvmap.insert( 778 std::map<std::string, msgpack::object const*>::value_type( 779 std::string( 780 o.via.map.ptr[i].key.via.str.ptr, 781 o.via.map.ptr[i].key.via.str.size), 782 &o.via.map.ptr[i].val 783 ) 784 ); 785 } 786 787 { 788 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 789 if (it != kvmap.end()) { 790 it->second->convert(a1); 791 } 792 } 793 794 { 795 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a2); 796 if (it != kvmap.end()) { 797 it->second->convert(a3); 798 } 799 } 800 801 { 802 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a4); 803 if (it != kvmap.end()) { 804 it->second->convert(a5); 805 } 806 } 807 808 { 809 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a6); 810 if (it != kvmap.end()) { 811 it->second->convert(a7); 812 } 813 } 814 815 { 816 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a8); 817 if (it != kvmap.end()) { 818 it->second->convert(a9); 819 } 820 } 821 822 { 823 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a10); 824 if (it != kvmap.end()) { 825 it->second->convert(a11); 826 } 827 } 828 829 { 830 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a12); 831 if (it != kvmap.end()) { 832 it->second->convert(a13); 833 } 834 } 835 836 { 837 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a14); 838 if (it != kvmap.end()) { 839 it->second->convert(a15); 840 } 841 } 842 843 } 844 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 845 { 846 o->type = msgpack::type::MAP; 847 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*8)); 848 o->via.map.size = 8; 849 850 o->via.map.ptr[0].key = msgpack::object(a0, z); 851 o->via.map.ptr[0].val = msgpack::object(a1, z); 852 853 o->via.map.ptr[1].key = msgpack::object(a2, z); 854 o->via.map.ptr[1].val = msgpack::object(a3, z); 855 856 o->via.map.ptr[2].key = msgpack::object(a4, z); 857 o->via.map.ptr[2].val = msgpack::object(a5, z); 858 859 o->via.map.ptr[3].key = msgpack::object(a6, z); 860 o->via.map.ptr[3].val = msgpack::object(a7, z); 861 862 o->via.map.ptr[4].key = msgpack::object(a8, z); 863 o->via.map.ptr[4].val = msgpack::object(a9, z); 864 865 o->via.map.ptr[5].key = msgpack::object(a10, z); 866 o->via.map.ptr[5].val = msgpack::object(a11, z); 867 868 o->via.map.ptr[6].key = msgpack::object(a12, z); 869 o->via.map.ptr[6].val = msgpack::object(a13, z); 870 871 o->via.map.ptr[7].key = msgpack::object(a14, z); 872 o->via.map.ptr[7].val = msgpack::object(a15, z); 873 874 } 875 876 A0& a0; 877 A1& a1; 878 A2& a2; 879 A3& a3; 880 A4& a4; 881 A5& a5; 882 A6& a6; 883 A7& a7; 884 A8& a8; 885 A9& a9; 886 A10& a10; 887 A11& a11; 888 A12& a12; 889 A13& a13; 890 A14& a14; 891 A15& a15; 892}; 893 894template <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> 895struct define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17> { 896 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) : 897 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) {} 898 template <typename Packer> 899 void msgpack_pack(Packer& pk) const 900 { 901 pk.pack_map(9); 902 903 pk.pack(a0); 904 pk.pack(a1); 905 pk.pack(a2); 906 pk.pack(a3); 907 pk.pack(a4); 908 pk.pack(a5); 909 pk.pack(a6); 910 pk.pack(a7); 911 pk.pack(a8); 912 pk.pack(a9); 913 pk.pack(a10); 914 pk.pack(a11); 915 pk.pack(a12); 916 pk.pack(a13); 917 pk.pack(a14); 918 pk.pack(a15); 919 pk.pack(a16); 920 pk.pack(a17); 921 } 922 void msgpack_unpack(msgpack::object const& o) const 923 { 924 if(o.type != msgpack::type::MAP) { throw msgpack::type_error(); } 925 std::map<std::string, msgpack::object const*> kvmap; 926 for (uint32_t i = 0; i < o.via.map.size; ++i) { 927 kvmap.insert( 928 std::map<std::string, msgpack::object const*>::value_type( 929 std::string( 930 o.via.map.ptr[i].key.via.str.ptr, 931 o.via.map.ptr[i].key.via.str.size), 932 &o.via.map.ptr[i].val 933 ) 934 ); 935 } 936 937 { 938 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 939 if (it != kvmap.end()) { 940 it->second->convert(a1); 941 } 942 } 943 944 { 945 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a2); 946 if (it != kvmap.end()) { 947 it->second->convert(a3); 948 } 949 } 950 951 { 952 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a4); 953 if (it != kvmap.end()) { 954 it->second->convert(a5); 955 } 956 } 957 958 { 959 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a6); 960 if (it != kvmap.end()) { 961 it->second->convert(a7); 962 } 963 } 964 965 { 966 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a8); 967 if (it != kvmap.end()) { 968 it->second->convert(a9); 969 } 970 } 971 972 { 973 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a10); 974 if (it != kvmap.end()) { 975 it->second->convert(a11); 976 } 977 } 978 979 { 980 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a12); 981 if (it != kvmap.end()) { 982 it->second->convert(a13); 983 } 984 } 985 986 { 987 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a14); 988 if (it != kvmap.end()) { 989 it->second->convert(a15); 990 } 991 } 992 993 { 994 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a16); 995 if (it != kvmap.end()) { 996 it->second->convert(a17); 997 } 998 } 999 1000 } 1001 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 1002 { 1003 o->type = msgpack::type::MAP; 1004 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*9)); 1005 o->via.map.size = 9; 1006 1007 o->via.map.ptr[0].key = msgpack::object(a0, z); 1008 o->via.map.ptr[0].val = msgpack::object(a1, z); 1009 1010 o->via.map.ptr[1].key = msgpack::object(a2, z); 1011 o->via.map.ptr[1].val = msgpack::object(a3, z); 1012 1013 o->via.map.ptr[2].key = msgpack::object(a4, z); 1014 o->via.map.ptr[2].val = msgpack::object(a5, z); 1015 1016 o->via.map.ptr[3].key = msgpack::object(a6, z); 1017 o->via.map.ptr[3].val = msgpack::object(a7, z); 1018 1019 o->via.map.ptr[4].key = msgpack::object(a8, z); 1020 o->via.map.ptr[4].val = msgpack::object(a9, z); 1021 1022 o->via.map.ptr[5].key = msgpack::object(a10, z); 1023 o->via.map.ptr[5].val = msgpack::object(a11, z); 1024 1025 o->via.map.ptr[6].key = msgpack::object(a12, z); 1026 o->via.map.ptr[6].val = msgpack::object(a13, z); 1027 1028 o->via.map.ptr[7].key = msgpack::object(a14, z); 1029 o->via.map.ptr[7].val = msgpack::object(a15, z); 1030 1031 o->via.map.ptr[8].key = msgpack::object(a16, z); 1032 o->via.map.ptr[8].val = msgpack::object(a17, z); 1033 1034 } 1035 1036 A0& a0; 1037 A1& a1; 1038 A2& a2; 1039 A3& a3; 1040 A4& a4; 1041 A5& a5; 1042 A6& a6; 1043 A7& a7; 1044 A8& a8; 1045 A9& a9; 1046 A10& a10; 1047 A11& a11; 1048 A12& a12; 1049 A13& a13; 1050 A14& a14; 1051 A15& a15; 1052 A16& a16; 1053 A17& a17; 1054}; 1055 1056template <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> 1057struct define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19> { 1058 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) : 1059 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) {} 1060 template <typename Packer> 1061 void msgpack_pack(Packer& pk) const 1062 { 1063 pk.pack_map(10); 1064 1065 pk.pack(a0); 1066 pk.pack(a1); 1067 pk.pack(a2); 1068 pk.pack(a3); 1069 pk.pack(a4); 1070 pk.pack(a5); 1071 pk.pack(a6); 1072 pk.pack(a7); 1073 pk.pack(a8); 1074 pk.pack(a9); 1075 pk.pack(a10); 1076 pk.pack(a11); 1077 pk.pack(a12); 1078 pk.pack(a13); 1079 pk.pack(a14); 1080 pk.pack(a15); 1081 pk.pack(a16); 1082 pk.pack(a17); 1083 pk.pack(a18); 1084 pk.pack(a19); 1085 } 1086 void msgpack_unpack(msgpack::object const& o) const 1087 { 1088 if(o.type != msgpack::type::MAP) { throw msgpack::type_error(); } 1089 std::map<std::string, msgpack::object const*> kvmap; 1090 for (uint32_t i = 0; i < o.via.map.size; ++i) { 1091 kvmap.insert( 1092 std::map<std::string, msgpack::object const*>::value_type( 1093 std::string( 1094 o.via.map.ptr[i].key.via.str.ptr, 1095 o.via.map.ptr[i].key.via.str.size), 1096 &o.via.map.ptr[i].val 1097 ) 1098 ); 1099 } 1100 1101 { 1102 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 1103 if (it != kvmap.end()) { 1104 it->second->convert(a1); 1105 } 1106 } 1107 1108 { 1109 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a2); 1110 if (it != kvmap.end()) { 1111 it->second->convert(a3); 1112 } 1113 } 1114 1115 { 1116 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a4); 1117 if (it != kvmap.end()) { 1118 it->second->convert(a5); 1119 } 1120 } 1121 1122 { 1123 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a6); 1124 if (it != kvmap.end()) { 1125 it->second->convert(a7); 1126 } 1127 } 1128 1129 { 1130 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a8); 1131 if (it != kvmap.end()) { 1132 it->second->convert(a9); 1133 } 1134 } 1135 1136 { 1137 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a10); 1138 if (it != kvmap.end()) { 1139 it->second->convert(a11); 1140 } 1141 } 1142 1143 { 1144 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a12); 1145 if (it != kvmap.end()) { 1146 it->second->convert(a13); 1147 } 1148 } 1149 1150 { 1151 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a14); 1152 if (it != kvmap.end()) { 1153 it->second->convert(a15); 1154 } 1155 } 1156 1157 { 1158 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a16); 1159 if (it != kvmap.end()) { 1160 it->second->convert(a17); 1161 } 1162 } 1163 1164 { 1165 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a18); 1166 if (it != kvmap.end()) { 1167 it->second->convert(a19); 1168 } 1169 } 1170 1171 } 1172 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 1173 { 1174 o->type = msgpack::type::MAP; 1175 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*10)); 1176 o->via.map.size = 10; 1177 1178 o->via.map.ptr[0].key = msgpack::object(a0, z); 1179 o->via.map.ptr[0].val = msgpack::object(a1, z); 1180 1181 o->via.map.ptr[1].key = msgpack::object(a2, z); 1182 o->via.map.ptr[1].val = msgpack::object(a3, z); 1183 1184 o->via.map.ptr[2].key = msgpack::object(a4, z); 1185 o->via.map.ptr[2].val = msgpack::object(a5, z); 1186 1187 o->via.map.ptr[3].key = msgpack::object(a6, z); 1188 o->via.map.ptr[3].val = msgpack::object(a7, z); 1189 1190 o->via.map.ptr[4].key = msgpack::object(a8, z); 1191 o->via.map.ptr[4].val = msgpack::object(a9, z); 1192 1193 o->via.map.ptr[5].key = msgpack::object(a10, z); 1194 o->via.map.ptr[5].val = msgpack::object(a11, z); 1195 1196 o->via.map.ptr[6].key = msgpack::object(a12, z); 1197 o->via.map.ptr[6].val = msgpack::object(a13, z); 1198 1199 o->via.map.ptr[7].key = msgpack::object(a14, z); 1200 o->via.map.ptr[7].val = msgpack::object(a15, z); 1201 1202 o->via.map.ptr[8].key = msgpack::object(a16, z); 1203 o->via.map.ptr[8].val = msgpack::object(a17, z); 1204 1205 o->via.map.ptr[9].key = msgpack::object(a18, z); 1206 o->via.map.ptr[9].val = msgpack::object(a19, z); 1207 1208 } 1209 1210 A0& a0; 1211 A1& a1; 1212 A2& a2; 1213 A3& a3; 1214 A4& a4; 1215 A5& a5; 1216 A6& a6; 1217 A7& a7; 1218 A8& a8; 1219 A9& a9; 1220 A10& a10; 1221 A11& a11; 1222 A12& a12; 1223 A13& a13; 1224 A14& a14; 1225 A15& a15; 1226 A16& a16; 1227 A17& a17; 1228 A18& a18; 1229 A19& a19; 1230}; 1231 1232template <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> 1233struct define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21> { 1234 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) : 1235 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) {} 1236 template <typename Packer> 1237 void msgpack_pack(Packer& pk) const 1238 { 1239 pk.pack_map(11); 1240 1241 pk.pack(a0); 1242 pk.pack(a1); 1243 pk.pack(a2); 1244 pk.pack(a3); 1245 pk.pack(a4); 1246 pk.pack(a5); 1247 pk.pack(a6); 1248 pk.pack(a7); 1249 pk.pack(a8); 1250 pk.pack(a9); 1251 pk.pack(a10); 1252 pk.pack(a11); 1253 pk.pack(a12); 1254 pk.pack(a13); 1255 pk.pack(a14); 1256 pk.pack(a15); 1257 pk.pack(a16); 1258 pk.pack(a17); 1259 pk.pack(a18); 1260 pk.pack(a19); 1261 pk.pack(a20); 1262 pk.pack(a21); 1263 } 1264 void msgpack_unpack(msgpack::object const& o) const 1265 { 1266 if(o.type != msgpack::type::MAP) { throw msgpack::type_error(); } 1267 std::map<std::string, msgpack::object const*> kvmap; 1268 for (uint32_t i = 0; i < o.via.map.size; ++i) { 1269 kvmap.insert( 1270 std::map<std::string, msgpack::object const*>::value_type( 1271 std::string( 1272 o.via.map.ptr[i].key.via.str.ptr, 1273 o.via.map.ptr[i].key.via.str.size), 1274 &o.via.map.ptr[i].val 1275 ) 1276 ); 1277 } 1278 1279 { 1280 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 1281 if (it != kvmap.end()) { 1282 it->second->convert(a1); 1283 } 1284 } 1285 1286 { 1287 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a2); 1288 if (it != kvmap.end()) { 1289 it->second->convert(a3); 1290 } 1291 } 1292 1293 { 1294 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a4); 1295 if (it != kvmap.end()) { 1296 it->second->convert(a5); 1297 } 1298 } 1299 1300 { 1301 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a6); 1302 if (it != kvmap.end()) { 1303 it->second->convert(a7); 1304 } 1305 } 1306 1307 { 1308 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a8); 1309 if (it != kvmap.end()) { 1310 it->second->convert(a9); 1311 } 1312 } 1313 1314 { 1315 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a10); 1316 if (it != kvmap.end()) { 1317 it->second->convert(a11); 1318 } 1319 } 1320 1321 { 1322 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a12); 1323 if (it != kvmap.end()) { 1324 it->second->convert(a13); 1325 } 1326 } 1327 1328 { 1329 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a14); 1330 if (it != kvmap.end()) { 1331 it->second->convert(a15); 1332 } 1333 } 1334 1335 { 1336 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a16); 1337 if (it != kvmap.end()) { 1338 it->second->convert(a17); 1339 } 1340 } 1341 1342 { 1343 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a18); 1344 if (it != kvmap.end()) { 1345 it->second->convert(a19); 1346 } 1347 } 1348 1349 { 1350 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a20); 1351 if (it != kvmap.end()) { 1352 it->second->convert(a21); 1353 } 1354 } 1355 1356 } 1357 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 1358 { 1359 o->type = msgpack::type::MAP; 1360 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*11)); 1361 o->via.map.size = 11; 1362 1363 o->via.map.ptr[0].key = msgpack::object(a0, z); 1364 o->via.map.ptr[0].val = msgpack::object(a1, z); 1365 1366 o->via.map.ptr[1].key = msgpack::object(a2, z); 1367 o->via.map.ptr[1].val = msgpack::object(a3, z); 1368 1369 o->via.map.ptr[2].key = msgpack::object(a4, z); 1370 o->via.map.ptr[2].val = msgpack::object(a5, z); 1371 1372 o->via.map.ptr[3].key = msgpack::object(a6, z); 1373 o->via.map.ptr[3].val = msgpack::object(a7, z); 1374 1375 o->via.map.ptr[4].key = msgpack::object(a8, z); 1376 o->via.map.ptr[4].val = msgpack::object(a9, z); 1377 1378 o->via.map.ptr[5].key = msgpack::object(a10, z); 1379 o->via.map.ptr[5].val = msgpack::object(a11, z); 1380 1381 o->via.map.ptr[6].key = msgpack::object(a12, z); 1382 o->via.map.ptr[6].val = msgpack::object(a13, z); 1383 1384 o->via.map.ptr[7].key = msgpack::object(a14, z); 1385 o->via.map.ptr[7].val = msgpack::object(a15, z); 1386 1387 o->via.map.ptr[8].key = msgpack::object(a16, z); 1388 o->via.map.ptr[8].val = msgpack::object(a17, z); 1389 1390 o->via.map.ptr[9].key = msgpack::object(a18, z); 1391 o->via.map.ptr[9].val = msgpack::object(a19, z); 1392 1393 o->via.map.ptr[10].key = msgpack::object(a20, z); 1394 o->via.map.ptr[10].val = msgpack::object(a21, z); 1395 1396 } 1397 1398 A0& a0; 1399 A1& a1; 1400 A2& a2; 1401 A3& a3; 1402 A4& a4; 1403 A5& a5; 1404 A6& a6; 1405 A7& a7; 1406 A8& a8; 1407 A9& a9; 1408 A10& a10; 1409 A11& a11; 1410 A12& a12; 1411 A13& a13; 1412 A14& a14; 1413 A15& a15; 1414 A16& a16; 1415 A17& a17; 1416 A18& a18; 1417 A19& a19; 1418 A20& a20; 1419 A21& a21; 1420}; 1421 1422template <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> 1423struct 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> { 1424 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) : 1425 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) {} 1426 template <typename Packer> 1427 void msgpack_pack(Packer& pk) const 1428 { 1429 pk.pack_map(12); 1430 1431 pk.pack(a0); 1432 pk.pack(a1); 1433 pk.pack(a2); 1434 pk.pack(a3); 1435 pk.pack(a4); 1436 pk.pack(a5); 1437 pk.pack(a6); 1438 pk.pack(a7); 1439 pk.pack(a8); 1440 pk.pack(a9); 1441 pk.pack(a10); 1442 pk.pack(a11); 1443 pk.pack(a12); 1444 pk.pack(a13); 1445 pk.pack(a14); 1446 pk.pack(a15); 1447 pk.pack(a16); 1448 pk.pack(a17); 1449 pk.pack(a18); 1450 pk.pack(a19); 1451 pk.pack(a20); 1452 pk.pack(a21); 1453 pk.pack(a22); 1454 pk.pack(a23); 1455 } 1456 void msgpack_unpack(msgpack::object const& o) const 1457 { 1458 if(o.type != msgpack::type::MAP) { throw msgpack::type_error(); } 1459 std::map<std::string, msgpack::object const*> kvmap; 1460 for (uint32_t i = 0; i < o.via.map.size; ++i) { 1461 kvmap.insert( 1462 std::map<std::string, msgpack::object const*>::value_type( 1463 std::string( 1464 o.via.map.ptr[i].key.via.str.ptr, 1465 o.via.map.ptr[i].key.via.str.size), 1466 &o.via.map.ptr[i].val 1467 ) 1468 ); 1469 } 1470 1471 { 1472 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 1473 if (it != kvmap.end()) { 1474 it->second->convert(a1); 1475 } 1476 } 1477 1478 { 1479 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a2); 1480 if (it != kvmap.end()) { 1481 it->second->convert(a3); 1482 } 1483 } 1484 1485 { 1486 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a4); 1487 if (it != kvmap.end()) { 1488 it->second->convert(a5); 1489 } 1490 } 1491 1492 { 1493 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a6); 1494 if (it != kvmap.end()) { 1495 it->second->convert(a7); 1496 } 1497 } 1498 1499 { 1500 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a8); 1501 if (it != kvmap.end()) { 1502 it->second->convert(a9); 1503 } 1504 } 1505 1506 { 1507 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a10); 1508 if (it != kvmap.end()) { 1509 it->second->convert(a11); 1510 } 1511 } 1512 1513 { 1514 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a12); 1515 if (it != kvmap.end()) { 1516 it->second->convert(a13); 1517 } 1518 } 1519 1520 { 1521 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a14); 1522 if (it != kvmap.end()) { 1523 it->second->convert(a15); 1524 } 1525 } 1526 1527 { 1528 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a16); 1529 if (it != kvmap.end()) { 1530 it->second->convert(a17); 1531 } 1532 } 1533 1534 { 1535 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a18); 1536 if (it != kvmap.end()) { 1537 it->second->convert(a19); 1538 } 1539 } 1540 1541 { 1542 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a20); 1543 if (it != kvmap.end()) { 1544 it->second->convert(a21); 1545 } 1546 } 1547 1548 { 1549 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a22); 1550 if (it != kvmap.end()) { 1551 it->second->convert(a23); 1552 } 1553 } 1554 1555 } 1556 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 1557 { 1558 o->type = msgpack::type::MAP; 1559 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*12)); 1560 o->via.map.size = 12; 1561 1562 o->via.map.ptr[0].key = msgpack::object(a0, z); 1563 o->via.map.ptr[0].val = msgpack::object(a1, z); 1564 1565 o->via.map.ptr[1].key = msgpack::object(a2, z); 1566 o->via.map.ptr[1].val = msgpack::object(a3, z); 1567 1568 o->via.map.ptr[2].key = msgpack::object(a4, z); 1569 o->via.map.ptr[2].val = msgpack::object(a5, z); 1570 1571 o->via.map.ptr[3].key = msgpack::object(a6, z); 1572 o->via.map.ptr[3].val = msgpack::object(a7, z); 1573 1574 o->via.map.ptr[4].key = msgpack::object(a8, z); 1575 o->via.map.ptr[4].val = msgpack::object(a9, z); 1576 1577 o->via.map.ptr[5].key = msgpack::object(a10, z); 1578 o->via.map.ptr[5].val = msgpack::object(a11, z); 1579 1580 o->via.map.ptr[6].key = msgpack::object(a12, z); 1581 o->via.map.ptr[6].val = msgpack::object(a13, z); 1582 1583 o->via.map.ptr[7].key = msgpack::object(a14, z); 1584 o->via.map.ptr[7].val = msgpack::object(a15, z); 1585 1586 o->via.map.ptr[8].key = msgpack::object(a16, z); 1587 o->via.map.ptr[8].val = msgpack::object(a17, z); 1588 1589 o->via.map.ptr[9].key = msgpack::object(a18, z); 1590 o->via.map.ptr[9].val = msgpack::object(a19, z); 1591 1592 o->via.map.ptr[10].key = msgpack::object(a20, z); 1593 o->via.map.ptr[10].val = msgpack::object(a21, z); 1594 1595 o->via.map.ptr[11].key = msgpack::object(a22, z); 1596 o->via.map.ptr[11].val = msgpack::object(a23, z); 1597 1598 } 1599 1600 A0& a0; 1601 A1& a1; 1602 A2& a2; 1603 A3& a3; 1604 A4& a4; 1605 A5& a5; 1606 A6& a6; 1607 A7& a7; 1608 A8& a8; 1609 A9& a9; 1610 A10& a10; 1611 A11& a11; 1612 A12& a12; 1613 A13& a13; 1614 A14& a14; 1615 A15& a15; 1616 A16& a16; 1617 A17& a17; 1618 A18& a18; 1619 A19& a19; 1620 A20& a20; 1621 A21& a21; 1622 A22& a22; 1623 A23& a23; 1624}; 1625 1626template <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> 1627struct 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> { 1628 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) : 1629 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) {} 1630 template <typename Packer> 1631 void msgpack_pack(Packer& pk) const 1632 { 1633 pk.pack_map(13); 1634 1635 pk.pack(a0); 1636 pk.pack(a1); 1637 pk.pack(a2); 1638 pk.pack(a3); 1639 pk.pack(a4); 1640 pk.pack(a5); 1641 pk.pack(a6); 1642 pk.pack(a7); 1643 pk.pack(a8); 1644 pk.pack(a9); 1645 pk.pack(a10); 1646 pk.pack(a11); 1647 pk.pack(a12); 1648 pk.pack(a13); 1649 pk.pack(a14); 1650 pk.pack(a15); 1651 pk.pack(a16); 1652 pk.pack(a17); 1653 pk.pack(a18); 1654 pk.pack(a19); 1655 pk.pack(a20); 1656 pk.pack(a21); 1657 pk.pack(a22); 1658 pk.pack(a23); 1659 pk.pack(a24); 1660 pk.pack(a25); 1661 } 1662 void msgpack_unpack(msgpack::object const& o) const 1663 { 1664 if(o.type != msgpack::type::MAP) { throw msgpack::type_error(); } 1665 std::map<std::string, msgpack::object const*> kvmap; 1666 for (uint32_t i = 0; i < o.via.map.size; ++i) { 1667 kvmap.insert( 1668 std::map<std::string, msgpack::object const*>::value_type( 1669 std::string( 1670 o.via.map.ptr[i].key.via.str.ptr, 1671 o.via.map.ptr[i].key.via.str.size), 1672 &o.via.map.ptr[i].val 1673 ) 1674 ); 1675 } 1676 1677 { 1678 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 1679 if (it != kvmap.end()) { 1680 it->second->convert(a1); 1681 } 1682 } 1683 1684 { 1685 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a2); 1686 if (it != kvmap.end()) { 1687 it->second->convert(a3); 1688 } 1689 } 1690 1691 { 1692 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a4); 1693 if (it != kvmap.end()) { 1694 it->second->convert(a5); 1695 } 1696 } 1697 1698 { 1699 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a6); 1700 if (it != kvmap.end()) { 1701 it->second->convert(a7); 1702 } 1703 } 1704 1705 { 1706 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a8); 1707 if (it != kvmap.end()) { 1708 it->second->convert(a9); 1709 } 1710 } 1711 1712 { 1713 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a10); 1714 if (it != kvmap.end()) { 1715 it->second->convert(a11); 1716 } 1717 } 1718 1719 { 1720 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a12); 1721 if (it != kvmap.end()) { 1722 it->second->convert(a13); 1723 } 1724 } 1725 1726 { 1727 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a14); 1728 if (it != kvmap.end()) { 1729 it->second->convert(a15); 1730 } 1731 } 1732 1733 { 1734 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a16); 1735 if (it != kvmap.end()) { 1736 it->second->convert(a17); 1737 } 1738 } 1739 1740 { 1741 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a18); 1742 if (it != kvmap.end()) { 1743 it->second->convert(a19); 1744 } 1745 } 1746 1747 { 1748 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a20); 1749 if (it != kvmap.end()) { 1750 it->second->convert(a21); 1751 } 1752 } 1753 1754 { 1755 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a22); 1756 if (it != kvmap.end()) { 1757 it->second->convert(a23); 1758 } 1759 } 1760 1761 { 1762 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a24); 1763 if (it != kvmap.end()) { 1764 it->second->convert(a25); 1765 } 1766 } 1767 1768 } 1769 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 1770 { 1771 o->type = msgpack::type::MAP; 1772 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*13)); 1773 o->via.map.size = 13; 1774 1775 o->via.map.ptr[0].key = msgpack::object(a0, z); 1776 o->via.map.ptr[0].val = msgpack::object(a1, z); 1777 1778 o->via.map.ptr[1].key = msgpack::object(a2, z); 1779 o->via.map.ptr[1].val = msgpack::object(a3, z); 1780 1781 o->via.map.ptr[2].key = msgpack::object(a4, z); 1782 o->via.map.ptr[2].val = msgpack::object(a5, z); 1783 1784 o->via.map.ptr[3].key = msgpack::object(a6, z); 1785 o->via.map.ptr[3].val = msgpack::object(a7, z); 1786 1787 o->via.map.ptr[4].key = msgpack::object(a8, z); 1788 o->via.map.ptr[4].val = msgpack::object(a9, z); 1789 1790 o->via.map.ptr[5].key = msgpack::object(a10, z); 1791 o->via.map.ptr[5].val = msgpack::object(a11, z); 1792 1793 o->via.map.ptr[6].key = msgpack::object(a12, z); 1794 o->via.map.ptr[6].val = msgpack::object(a13, z); 1795 1796 o->via.map.ptr[7].key = msgpack::object(a14, z); 1797 o->via.map.ptr[7].val = msgpack::object(a15, z); 1798 1799 o->via.map.ptr[8].key = msgpack::object(a16, z); 1800 o->via.map.ptr[8].val = msgpack::object(a17, z); 1801 1802 o->via.map.ptr[9].key = msgpack::object(a18, z); 1803 o->via.map.ptr[9].val = msgpack::object(a19, z); 1804 1805 o->via.map.ptr[10].key = msgpack::object(a20, z); 1806 o->via.map.ptr[10].val = msgpack::object(a21, z); 1807 1808 o->via.map.ptr[11].key = msgpack::object(a22, z); 1809 o->via.map.ptr[11].val = msgpack::object(a23, z); 1810 1811 o->via.map.ptr[12].key = msgpack::object(a24, z); 1812 o->via.map.ptr[12].val = msgpack::object(a25, z); 1813 1814 } 1815 1816 A0& a0; 1817 A1& a1; 1818 A2& a2; 1819 A3& a3; 1820 A4& a4; 1821 A5& a5; 1822 A6& a6; 1823 A7& a7; 1824 A8& a8; 1825 A9& a9; 1826 A10& a10; 1827 A11& a11; 1828 A12& a12; 1829 A13& a13; 1830 A14& a14; 1831 A15& a15; 1832 A16& a16; 1833 A17& a17; 1834 A18& a18; 1835 A19& a19; 1836 A20& a20; 1837 A21& a21; 1838 A22& a22; 1839 A23& a23; 1840 A24& a24; 1841 A25& a25; 1842}; 1843 1844template <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> 1845struct 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> { 1846 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) : 1847 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) {} 1848 template <typename Packer> 1849 void msgpack_pack(Packer& pk) const 1850 { 1851 pk.pack_map(14); 1852 1853 pk.pack(a0); 1854 pk.pack(a1); 1855 pk.pack(a2); 1856 pk.pack(a3); 1857 pk.pack(a4); 1858 pk.pack(a5); 1859 pk.pack(a6); 1860 pk.pack(a7); 1861 pk.pack(a8); 1862 pk.pack(a9); 1863 pk.pack(a10); 1864 pk.pack(a11); 1865 pk.pack(a12); 1866 pk.pack(a13); 1867 pk.pack(a14); 1868 pk.pack(a15); 1869 pk.pack(a16); 1870 pk.pack(a17); 1871 pk.pack(a18); 1872 pk.pack(a19); 1873 pk.pack(a20); 1874 pk.pack(a21); 1875 pk.pack(a22); 1876 pk.pack(a23); 1877 pk.pack(a24); 1878 pk.pack(a25); 1879 pk.pack(a26); 1880 pk.pack(a27); 1881 } 1882 void msgpack_unpack(msgpack::object const& o) const 1883 { 1884 if(o.type != msgpack::type::MAP) { throw msgpack::type_error(); } 1885 std::map<std::string, msgpack::object const*> kvmap; 1886 for (uint32_t i = 0; i < o.via.map.size; ++i) { 1887 kvmap.insert( 1888 std::map<std::string, msgpack::object const*>::value_type( 1889 std::string( 1890 o.via.map.ptr[i].key.via.str.ptr, 1891 o.via.map.ptr[i].key.via.str.size), 1892 &o.via.map.ptr[i].val 1893 ) 1894 ); 1895 } 1896 1897 { 1898 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 1899 if (it != kvmap.end()) { 1900 it->second->convert(a1); 1901 } 1902 } 1903 1904 { 1905 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a2); 1906 if (it != kvmap.end()) { 1907 it->second->convert(a3); 1908 } 1909 } 1910 1911 { 1912 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a4); 1913 if (it != kvmap.end()) { 1914 it->second->convert(a5); 1915 } 1916 } 1917 1918 { 1919 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a6); 1920 if (it != kvmap.end()) { 1921 it->second->convert(a7); 1922 } 1923 } 1924 1925 { 1926 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a8); 1927 if (it != kvmap.end()) { 1928 it->second->convert(a9); 1929 } 1930 } 1931 1932 { 1933 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a10); 1934 if (it != kvmap.end()) { 1935 it->second->convert(a11); 1936 } 1937 } 1938 1939 { 1940 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a12); 1941 if (it != kvmap.end()) { 1942 it->second->convert(a13); 1943 } 1944 } 1945 1946 { 1947 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a14); 1948 if (it != kvmap.end()) { 1949 it->second->convert(a15); 1950 } 1951 } 1952 1953 { 1954 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a16); 1955 if (it != kvmap.end()) { 1956 it->second->convert(a17); 1957 } 1958 } 1959 1960 { 1961 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a18); 1962 if (it != kvmap.end()) { 1963 it->second->convert(a19); 1964 } 1965 } 1966 1967 { 1968 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a20); 1969 if (it != kvmap.end()) { 1970 it->second->convert(a21); 1971 } 1972 } 1973 1974 { 1975 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a22); 1976 if (it != kvmap.end()) { 1977 it->second->convert(a23); 1978 } 1979 } 1980 1981 { 1982 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a24); 1983 if (it != kvmap.end()) { 1984 it->second->convert(a25); 1985 } 1986 } 1987 1988 { 1989 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a26); 1990 if (it != kvmap.end()) { 1991 it->second->convert(a27); 1992 } 1993 } 1994 1995 } 1996 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 1997 { 1998 o->type = msgpack::type::MAP; 1999 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*14)); 2000 o->via.map.size = 14; 2001 2002 o->via.map.ptr[0].key = msgpack::object(a0, z); 2003 o->via.map.ptr[0].val = msgpack::object(a1, z); 2004 2005 o->via.map.ptr[1].key = msgpack::object(a2, z); 2006 o->via.map.ptr[1].val = msgpack::object(a3, z); 2007 2008 o->via.map.ptr[2].key = msgpack::object(a4, z); 2009 o->via.map.ptr[2].val = msgpack::object(a5, z); 2010 2011 o->via.map.ptr[3].key = msgpack::object(a6, z); 2012 o->via.map.ptr[3].val = msgpack::object(a7, z); 2013 2014 o->via.map.ptr[4].key = msgpack::object(a8, z); 2015 o->via.map.ptr[4].val = msgpack::object(a9, z); 2016 2017 o->via.map.ptr[5].key = msgpack::object(a10, z); 2018 o->via.map.ptr[5].val = msgpack::object(a11, z); 2019 2020 o->via.map.ptr[6].key = msgpack::object(a12, z); 2021 o->via.map.ptr[6].val = msgpack::object(a13, z); 2022 2023 o->via.map.ptr[7].key = msgpack::object(a14, z); 2024 o->via.map.ptr[7].val = msgpack::object(a15, z); 2025 2026 o->via.map.ptr[8].key = msgpack::object(a16, z); 2027 o->via.map.ptr[8].val = msgpack::object(a17, z); 2028 2029 o->via.map.ptr[9].key = msgpack::object(a18, z); 2030 o->via.map.ptr[9].val = msgpack::object(a19, z); 2031 2032 o->via.map.ptr[10].key = msgpack::object(a20, z); 2033 o->via.map.ptr[10].val = msgpack::object(a21, z); 2034 2035 o->via.map.ptr[11].key = msgpack::object(a22, z); 2036 o->via.map.ptr[11].val = msgpack::object(a23, z); 2037 2038 o->via.map.ptr[12].key = msgpack::object(a24, z); 2039 o->via.map.ptr[12].val = msgpack::object(a25, z); 2040 2041 o->via.map.ptr[13].key = msgpack::object(a26, z); 2042 o->via.map.ptr[13].val = msgpack::object(a27, z); 2043 2044 } 2045 2046 A0& a0; 2047 A1& a1; 2048 A2& a2; 2049 A3& a3; 2050 A4& a4; 2051 A5& a5; 2052 A6& a6; 2053 A7& a7; 2054 A8& a8; 2055 A9& a9; 2056 A10& a10; 2057 A11& a11; 2058 A12& a12; 2059 A13& a13; 2060 A14& a14; 2061 A15& a15; 2062 A16& a16; 2063 A17& a17; 2064 A18& a18; 2065 A19& a19; 2066 A20& a20; 2067 A21& a21; 2068 A22& a22; 2069 A23& a23; 2070 A24& a24; 2071 A25& a25; 2072 A26& a26; 2073 A27& a27; 2074}; 2075 2076template <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> 2077struct 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> { 2078 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) : 2079 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) {} 2080 template <typename Packer> 2081 void msgpack_pack(Packer& pk) const 2082 { 2083 pk.pack_map(15); 2084 2085 pk.pack(a0); 2086 pk.pack(a1); 2087 pk.pack(a2); 2088 pk.pack(a3); 2089 pk.pack(a4); 2090 pk.pack(a5); 2091 pk.pack(a6); 2092 pk.pack(a7); 2093 pk.pack(a8); 2094 pk.pack(a9); 2095 pk.pack(a10); 2096 pk.pack(a11); 2097 pk.pack(a12); 2098 pk.pack(a13); 2099 pk.pack(a14); 2100 pk.pack(a15); 2101 pk.pack(a16); 2102 pk.pack(a17); 2103 pk.pack(a18); 2104 pk.pack(a19); 2105 pk.pack(a20); 2106 pk.pack(a21); 2107 pk.pack(a22); 2108 pk.pack(a23); 2109 pk.pack(a24); 2110 pk.pack(a25); 2111 pk.pack(a26); 2112 pk.pack(a27); 2113 pk.pack(a28); 2114 pk.pack(a29); 2115 } 2116 void msgpack_unpack(msgpack::object const& o) const 2117 { 2118 if(o.type != msgpack::type::MAP) { throw msgpack::type_error(); } 2119 std::map<std::string, msgpack::object const*> kvmap; 2120 for (uint32_t i = 0; i < o.via.map.size; ++i) { 2121 kvmap.insert( 2122 std::map<std::string, msgpack::object const*>::value_type( 2123 std::string( 2124 o.via.map.ptr[i].key.via.str.ptr, 2125 o.via.map.ptr[i].key.via.str.size), 2126 &o.via.map.ptr[i].val 2127 ) 2128 ); 2129 } 2130 2131 { 2132 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 2133 if (it != kvmap.end()) { 2134 it->second->convert(a1); 2135 } 2136 } 2137 2138 { 2139 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a2); 2140 if (it != kvmap.end()) { 2141 it->second->convert(a3); 2142 } 2143 } 2144 2145 { 2146 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a4); 2147 if (it != kvmap.end()) { 2148 it->second->convert(a5); 2149 } 2150 } 2151 2152 { 2153 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a6); 2154 if (it != kvmap.end()) { 2155 it->second->convert(a7); 2156 } 2157 } 2158 2159 { 2160 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a8); 2161 if (it != kvmap.end()) { 2162 it->second->convert(a9); 2163 } 2164 } 2165 2166 { 2167 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a10); 2168 if (it != kvmap.end()) { 2169 it->second->convert(a11); 2170 } 2171 } 2172 2173 { 2174 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a12); 2175 if (it != kvmap.end()) { 2176 it->second->convert(a13); 2177 } 2178 } 2179 2180 { 2181 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a14); 2182 if (it != kvmap.end()) { 2183 it->second->convert(a15); 2184 } 2185 } 2186 2187 { 2188 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a16); 2189 if (it != kvmap.end()) { 2190 it->second->convert(a17); 2191 } 2192 } 2193 2194 { 2195 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a18); 2196 if (it != kvmap.end()) { 2197 it->second->convert(a19); 2198 } 2199 } 2200 2201 { 2202 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a20); 2203 if (it != kvmap.end()) { 2204 it->second->convert(a21); 2205 } 2206 } 2207 2208 { 2209 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a22); 2210 if (it != kvmap.end()) { 2211 it->second->convert(a23); 2212 } 2213 } 2214 2215 { 2216 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a24); 2217 if (it != kvmap.end()) { 2218 it->second->convert(a25); 2219 } 2220 } 2221 2222 { 2223 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a26); 2224 if (it != kvmap.end()) { 2225 it->second->convert(a27); 2226 } 2227 } 2228 2229 { 2230 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a28); 2231 if (it != kvmap.end()) { 2232 it->second->convert(a29); 2233 } 2234 } 2235 2236 } 2237 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 2238 { 2239 o->type = msgpack::type::MAP; 2240 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*15)); 2241 o->via.map.size = 15; 2242 2243 o->via.map.ptr[0].key = msgpack::object(a0, z); 2244 o->via.map.ptr[0].val = msgpack::object(a1, z); 2245 2246 o->via.map.ptr[1].key = msgpack::object(a2, z); 2247 o->via.map.ptr[1].val = msgpack::object(a3, z); 2248 2249 o->via.map.ptr[2].key = msgpack::object(a4, z); 2250 o->via.map.ptr[2].val = msgpack::object(a5, z); 2251 2252 o->via.map.ptr[3].key = msgpack::object(a6, z); 2253 o->via.map.ptr[3].val = msgpack::object(a7, z); 2254 2255 o->via.map.ptr[4].key = msgpack::object(a8, z); 2256 o->via.map.ptr[4].val = msgpack::object(a9, z); 2257 2258 o->via.map.ptr[5].key = msgpack::object(a10, z); 2259 o->via.map.ptr[5].val = msgpack::object(a11, z); 2260 2261 o->via.map.ptr[6].key = msgpack::object(a12, z); 2262 o->via.map.ptr[6].val = msgpack::object(a13, z); 2263 2264 o->via.map.ptr[7].key = msgpack::object(a14, z); 2265 o->via.map.ptr[7].val = msgpack::object(a15, z); 2266 2267 o->via.map.ptr[8].key = msgpack::object(a16, z); 2268 o->via.map.ptr[8].val = msgpack::object(a17, z); 2269 2270 o->via.map.ptr[9].key = msgpack::object(a18, z); 2271 o->via.map.ptr[9].val = msgpack::object(a19, z); 2272 2273 o->via.map.ptr[10].key = msgpack::object(a20, z); 2274 o->via.map.ptr[10].val = msgpack::object(a21, z); 2275 2276 o->via.map.ptr[11].key = msgpack::object(a22, z); 2277 o->via.map.ptr[11].val = msgpack::object(a23, z); 2278 2279 o->via.map.ptr[12].key = msgpack::object(a24, z); 2280 o->via.map.ptr[12].val = msgpack::object(a25, z); 2281 2282 o->via.map.ptr[13].key = msgpack::object(a26, z); 2283 o->via.map.ptr[13].val = msgpack::object(a27, z); 2284 2285 o->via.map.ptr[14].key = msgpack::object(a28, z); 2286 o->via.map.ptr[14].val = msgpack::object(a29, z); 2287 2288 } 2289 2290 A0& a0; 2291 A1& a1; 2292 A2& a2; 2293 A3& a3; 2294 A4& a4; 2295 A5& a5; 2296 A6& a6; 2297 A7& a7; 2298 A8& a8; 2299 A9& a9; 2300 A10& a10; 2301 A11& a11; 2302 A12& a12; 2303 A13& a13; 2304 A14& a14; 2305 A15& a15; 2306 A16& a16; 2307 A17& a17; 2308 A18& a18; 2309 A19& a19; 2310 A20& a20; 2311 A21& a21; 2312 A22& a22; 2313 A23& a23; 2314 A24& a24; 2315 A25& a25; 2316 A26& a26; 2317 A27& a27; 2318 A28& a28; 2319 A29& a29; 2320}; 2321 2322template <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> 2323struct 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> { 2324 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) : 2325 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) {} 2326 template <typename Packer> 2327 void msgpack_pack(Packer& pk) const 2328 { 2329 pk.pack_map(16); 2330 2331 pk.pack(a0); 2332 pk.pack(a1); 2333 pk.pack(a2); 2334 pk.pack(a3); 2335 pk.pack(a4); 2336 pk.pack(a5); 2337 pk.pack(a6); 2338 pk.pack(a7); 2339 pk.pack(a8); 2340 pk.pack(a9); 2341 pk.pack(a10); 2342 pk.pack(a11); 2343 pk.pack(a12); 2344 pk.pack(a13); 2345 pk.pack(a14); 2346 pk.pack(a15); 2347 pk.pack(a16); 2348 pk.pack(a17); 2349 pk.pack(a18); 2350 pk.pack(a19); 2351 pk.pack(a20); 2352 pk.pack(a21); 2353 pk.pack(a22); 2354 pk.pack(a23); 2355 pk.pack(a24); 2356 pk.pack(a25); 2357 pk.pack(a26); 2358 pk.pack(a27); 2359 pk.pack(a28); 2360 pk.pack(a29); 2361 pk.pack(a30); 2362 pk.pack(a31); 2363 } 2364 void msgpack_unpack(msgpack::object const& o) const 2365 { 2366 if(o.type != msgpack::type::MAP) { throw msgpack::type_error(); } 2367 std::map<std::string, msgpack::object const*> kvmap; 2368 for (uint32_t i = 0; i < o.via.map.size; ++i) { 2369 kvmap.insert( 2370 std::map<std::string, msgpack::object const*>::value_type( 2371 std::string( 2372 o.via.map.ptr[i].key.via.str.ptr, 2373 o.via.map.ptr[i].key.via.str.size), 2374 &o.via.map.ptr[i].val 2375 ) 2376 ); 2377 } 2378 2379 { 2380 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a0); 2381 if (it != kvmap.end()) { 2382 it->second->convert(a1); 2383 } 2384 } 2385 2386 { 2387 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a2); 2388 if (it != kvmap.end()) { 2389 it->second->convert(a3); 2390 } 2391 } 2392 2393 { 2394 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a4); 2395 if (it != kvmap.end()) { 2396 it->second->convert(a5); 2397 } 2398 } 2399 2400 { 2401 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a6); 2402 if (it != kvmap.end()) { 2403 it->second->convert(a7); 2404 } 2405 } 2406 2407 { 2408 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a8); 2409 if (it != kvmap.end()) { 2410 it->second->convert(a9); 2411 } 2412 } 2413 2414 { 2415 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a10); 2416 if (it != kvmap.end()) { 2417 it->second->convert(a11); 2418 } 2419 } 2420 2421 { 2422 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a12); 2423 if (it != kvmap.end()) { 2424 it->second->convert(a13); 2425 } 2426 } 2427 2428 { 2429 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a14); 2430 if (it != kvmap.end()) { 2431 it->second->convert(a15); 2432 } 2433 } 2434 2435 { 2436 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a16); 2437 if (it != kvmap.end()) { 2438 it->second->convert(a17); 2439 } 2440 } 2441 2442 { 2443 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a18); 2444 if (it != kvmap.end()) { 2445 it->second->convert(a19); 2446 } 2447 } 2448 2449 { 2450 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a20); 2451 if (it != kvmap.end()) { 2452 it->second->convert(a21); 2453 } 2454 } 2455 2456 { 2457 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a22); 2458 if (it != kvmap.end()) { 2459 it->second->convert(a23); 2460 } 2461 } 2462 2463 { 2464 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a24); 2465 if (it != kvmap.end()) { 2466 it->second->convert(a25); 2467 } 2468 } 2469 2470 { 2471 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a26); 2472 if (it != kvmap.end()) { 2473 it->second->convert(a27); 2474 } 2475 } 2476 2477 { 2478 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a28); 2479 if (it != kvmap.end()) { 2480 it->second->convert(a29); 2481 } 2482 } 2483 2484 { 2485 std::map<std::string, msgpack::object const*>::const_iterator it = kvmap.find(a30); 2486 if (it != kvmap.end()) { 2487 it->second->convert(a31); 2488 } 2489 } 2490 2491 } 2492 void msgpack_object(msgpack::object* o, msgpack::zone& z) const 2493 { 2494 o->type = msgpack::type::MAP; 2495 o->via.map.ptr = static_cast<msgpack::object_kv*>(z.allocate_align(sizeof(msgpack::object_kv)*16)); 2496 o->via.map.size = 16; 2497 2498 o->via.map.ptr[0].key = msgpack::object(a0, z); 2499 o->via.map.ptr[0].val = msgpack::object(a1, z); 2500 2501 o->via.map.ptr[1].key = msgpack::object(a2, z); 2502 o->via.map.ptr[1].val = msgpack::object(a3, z); 2503 2504 o->via.map.ptr[2].key = msgpack::object(a4, z); 2505 o->via.map.ptr[2].val = msgpack::object(a5, z); 2506 2507 o->via.map.ptr[3].key = msgpack::object(a6, z); 2508 o->via.map.ptr[3].val = msgpack::object(a7, z); 2509 2510 o->via.map.ptr[4].key = msgpack::object(a8, z); 2511 o->via.map.ptr[4].val = msgpack::object(a9, z); 2512 2513 o->via.map.ptr[5].key = msgpack::object(a10, z); 2514 o->via.map.ptr[5].val = msgpack::object(a11, z); 2515 2516 o->via.map.ptr[6].key = msgpack::object(a12, z); 2517 o->via.map.ptr[6].val = msgpack::object(a13, z); 2518 2519 o->via.map.ptr[7].key = msgpack::object(a14, z); 2520 o->via.map.ptr[7].val = msgpack::object(a15, z); 2521 2522 o->via.map.ptr[8].key = msgpack::object(a16, z); 2523 o->via.map.ptr[8].val = msgpack::object(a17, z); 2524 2525 o->via.map.ptr[9].key = msgpack::object(a18, z); 2526 o->via.map.ptr[9].val = msgpack::object(a19, z); 2527 2528 o->via.map.ptr[10].key = msgpack::object(a20, z); 2529 o->via.map.ptr[10].val = msgpack::object(a21, z); 2530 2531 o->via.map.ptr[11].key = msgpack::object(a22, z); 2532 o->via.map.ptr[11].val = msgpack::object(a23, z); 2533 2534 o->via.map.ptr[12].key = msgpack::object(a24, z); 2535 o->via.map.ptr[12].val = msgpack::object(a25, z); 2536 2537 o->via.map.ptr[13].key = msgpack::object(a26, z); 2538 o->via.map.ptr[13].val = msgpack::object(a27, z); 2539 2540 o->via.map.ptr[14].key = msgpack::object(a28, z); 2541 o->via.map.ptr[14].val = msgpack::object(a29, z); 2542 2543 o->via.map.ptr[15].key = msgpack::object(a30, z); 2544 o->via.map.ptr[15].val = msgpack::object(a31, z); 2545 2546 } 2547 2548 A0& a0; 2549 A1& a1; 2550 A2& a2; 2551 A3& a3; 2552 A4& a4; 2553 A5& a5; 2554 A6& a6; 2555 A7& a7; 2556 A8& a8; 2557 A9& a9; 2558 A10& a10; 2559 A11& a11; 2560 A12& a12; 2561 A13& a13; 2562 A14& a14; 2563 A15& a15; 2564 A16& a16; 2565 A17& a17; 2566 A18& a18; 2567 A19& a19; 2568 A20& a20; 2569 A21& a21; 2570 A22& a22; 2571 A23& a23; 2572 A24& a24; 2573 A25& a25; 2574 A26& a26; 2575 A27& a27; 2576 A28& a28; 2577 A29& a29; 2578 A30& a30; 2579 A31& a31; 2580}; 2581 2582/// @endcond 2583 2584inline define_map<> make_define_map() 2585{ 2586 return define_map<>(); 2587} 2588 2589/// @cond 2590 2591template <typename A0> 2592inline define_map<A0> make_define_map(A0& a0) 2593{ 2594 return define_map<A0>(a0); 2595} 2596 2597template <typename A0, typename A1> 2598inline define_map<A0, A1> make_define_map(A0& a0, A1& a1) 2599{ 2600 return define_map<A0, A1>(a0, a1); 2601} 2602 2603template <typename A0, typename A1, typename A2> 2604inline define_map<A0, A1, A2> make_define_map(A0& a0, A1& a1, A2& a2) 2605{ 2606 return define_map<A0, A1, A2>(a0, a1, a2); 2607} 2608 2609template <typename A0, typename A1, typename A2, typename A3> 2610inline define_map<A0, A1, A2, A3> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3) 2611{ 2612 return define_map<A0, A1, A2, A3>(a0, a1, a2, a3); 2613} 2614 2615template <typename A0, typename A1, typename A2, typename A3, typename A4> 2616inline define_map<A0, A1, A2, A3, A4> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4) 2617{ 2618 return define_map<A0, A1, A2, A3, A4>(a0, a1, a2, a3, a4); 2619} 2620 2621template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5> 2622inline define_map<A0, A1, A2, A3, A4, A5> make_define_map(A0& a0, A1& a1, A2& a2, A3& a3, A4& a4, A5& a5) 2623{ 2624 return define_map<A0, A1, A2, A3, A4, A5>(a0, a1, a2, a3, a4, a5); 2625} 2626 2627template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6> 2628inline 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) 2629{ 2630 return define_map<A0, A1, A2, A3, A4, A5, A6>(a0, a1, a2, a3, a4, a5, a6); 2631} 2632 2633template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7> 2634inline 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) 2635{ 2636 return define_map<A0, A1, A2, A3, A4, A5, A6, A7>(a0, a1, a2, a3, a4, a5, a6, a7); 2637} 2638 2639template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8> 2640inline 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) 2641{ 2642 return define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8>(a0, a1, a2, a3, a4, a5, a6, a7, a8); 2643} 2644 2645template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9> 2646inline 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) 2647{ 2648 return define_map<A0, A1, A2, A3, A4, A5, A6, A7, A8, A9>(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9); 2649} 2650 2651template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10> 2652inline 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) 2653{ 2654 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); 2655} 2656 2657template <typename A0, typename A1, typename A2, typename A3, typename A4, typename A5, typename A6, typename A7, typename A8, typename A9, typename A10, typename A11> 2658inline 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) 2659{ 2660 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); 2661} 2662 2663template <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> 2664inline 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) 2665{ 2666 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); 2667} 2668 2669template <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> 2670inline 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) 2671{ 2672 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); 2673} 2674 2675template <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> 2676inline 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) 2677{ 2678 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); 2679} 2680 2681template <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> 2682inline 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) 2683{ 2684 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); 2685} 2686 2687template <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> 2688inline 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) 2689{ 2690 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); 2691} 2692 2693template <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> 2694inline 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) 2695{ 2696 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); 2697} 2698 2699template <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> 2700inline 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) 2701{ 2702 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); 2703} 2704 2705template <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> 2706inline 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) 2707{ 2708 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); 2709} 2710 2711template <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> 2712inline 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) 2713{ 2714 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); 2715} 2716 2717template <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> 2718inline 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) 2719{ 2720 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); 2721} 2722 2723template <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> 2724inline 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) 2725{ 2726 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); 2727} 2728 2729template <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> 2730inline 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) 2731{ 2732 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); 2733} 2734 2735template <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> 2736inline 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) 2737{ 2738 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); 2739} 2740 2741template <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> 2742inline 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) 2743{ 2744 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); 2745} 2746 2747template <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> 2748inline 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) 2749{ 2750 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); 2751} 2752 2753template <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> 2754inline 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) 2755{ 2756 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); 2757} 2758 2759template <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> 2760inline 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) 2761{ 2762 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); 2763} 2764 2765template <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> 2766inline 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) 2767{ 2768 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); 2769} 2770 2771template <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> 2772inline 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) 2773{ 2774 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); 2775} 2776 2777template <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> 2778inline 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) 2779{ 2780 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); 2781} 2782 2783/// @endcond 2784 2785} // namespace type 2786/// @cond 2787} // MSGPACK_API_VERSION_NAMESPACE(v1) 2788/// @endcond 2789} // namespace msgpack 2790 2791#endif // MSGPACK_CPP03_DEFINE_MAP_HPP 2792