1 /*============================================================================== 2 Copyright (c) 2005-2010 Joel de Guzman 3 Copyright (c) 2010 Thomas Heller 4 5 Distributed under the Boost Software License, Version 1.0. (See accompanying 6 file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 7 ==============================================================================*/ 8 9 10 11 12 13 14 15 template <typename A0> 16 struct dynamic<A0> : noncopyable 17 { 18 typedef 19 vector1<A0> 20 tuple_type; 21 typedef 22 dynamic<A0> 23 self_type; 24 typedef 25 dynamic_frame<self_type> 26 dynamic_frame_type; dynamicdynamic27 dynamic() 28 : frame(0) {} 29 template <int N> 30 static 31 typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const initdynamic32 init(self_type * scope) 33 { 34 return 35 expression:: 36 dynamic_member<mpl::int_<N>, self_type *>:: 37 make(mpl::int_<N>(), scope); 38 } 39 typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; 40 mutable dynamic_frame_type* frame; 41 }; 42 43 44 45 46 47 48 49 template <typename A0 , typename A1> 50 struct dynamic<A0 , A1> : noncopyable 51 { 52 typedef 53 vector2<A0 , A1> 54 tuple_type; 55 typedef 56 dynamic<A0 , A1> 57 self_type; 58 typedef 59 dynamic_frame<self_type> 60 dynamic_frame_type; dynamicdynamic61 dynamic() 62 : frame(0) {} 63 template <int N> 64 static 65 typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const initdynamic66 init(self_type * scope) 67 { 68 return 69 expression:: 70 dynamic_member<mpl::int_<N>, self_type *>:: 71 make(mpl::int_<N>(), scope); 72 } 73 typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; 74 mutable dynamic_frame_type* frame; 75 }; 76 77 78 79 80 81 82 83 template <typename A0 , typename A1 , typename A2> 84 struct dynamic<A0 , A1 , A2> : noncopyable 85 { 86 typedef 87 vector3<A0 , A1 , A2> 88 tuple_type; 89 typedef 90 dynamic<A0 , A1 , A2> 91 self_type; 92 typedef 93 dynamic_frame<self_type> 94 dynamic_frame_type; dynamicdynamic95 dynamic() 96 : frame(0) {} 97 template <int N> 98 static 99 typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const initdynamic100 init(self_type * scope) 101 { 102 return 103 expression:: 104 dynamic_member<mpl::int_<N>, self_type *>:: 105 make(mpl::int_<N>(), scope); 106 } 107 typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; 108 mutable dynamic_frame_type* frame; 109 }; 110 111 112 113 114 115 116 117 template <typename A0 , typename A1 , typename A2 , typename A3> 118 struct dynamic<A0 , A1 , A2 , A3> : noncopyable 119 { 120 typedef 121 vector4<A0 , A1 , A2 , A3> 122 tuple_type; 123 typedef 124 dynamic<A0 , A1 , A2 , A3> 125 self_type; 126 typedef 127 dynamic_frame<self_type> 128 dynamic_frame_type; dynamicdynamic129 dynamic() 130 : frame(0) {} 131 template <int N> 132 static 133 typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const initdynamic134 init(self_type * scope) 135 { 136 return 137 expression:: 138 dynamic_member<mpl::int_<N>, self_type *>:: 139 make(mpl::int_<N>(), scope); 140 } 141 typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; 142 mutable dynamic_frame_type* frame; 143 }; 144 145 146 147 148 149 150 151 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4> 152 struct dynamic<A0 , A1 , A2 , A3 , A4> : noncopyable 153 { 154 typedef 155 vector5<A0 , A1 , A2 , A3 , A4> 156 tuple_type; 157 typedef 158 dynamic<A0 , A1 , A2 , A3 , A4> 159 self_type; 160 typedef 161 dynamic_frame<self_type> 162 dynamic_frame_type; dynamicdynamic163 dynamic() 164 : frame(0) {} 165 template <int N> 166 static 167 typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const initdynamic168 init(self_type * scope) 169 { 170 return 171 expression:: 172 dynamic_member<mpl::int_<N>, self_type *>:: 173 make(mpl::int_<N>(), scope); 174 } 175 typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; 176 mutable dynamic_frame_type* frame; 177 }; 178 179 180 181 182 183 184 185 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5> 186 struct dynamic<A0 , A1 , A2 , A3 , A4 , A5> : noncopyable 187 { 188 typedef 189 vector6<A0 , A1 , A2 , A3 , A4 , A5> 190 tuple_type; 191 typedef 192 dynamic<A0 , A1 , A2 , A3 , A4 , A5> 193 self_type; 194 typedef 195 dynamic_frame<self_type> 196 dynamic_frame_type; dynamicdynamic197 dynamic() 198 : frame(0) {} 199 template <int N> 200 static 201 typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const initdynamic202 init(self_type * scope) 203 { 204 return 205 expression:: 206 dynamic_member<mpl::int_<N>, self_type *>:: 207 make(mpl::int_<N>(), scope); 208 } 209 typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; typedef typename expression::dynamic_member< mpl::int_< 5> , self_type * >::type const member6; 210 mutable dynamic_frame_type* frame; 211 }; 212 213 214 215 216 217 218 219 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6> 220 struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6> : noncopyable 221 { 222 typedef 223 vector7<A0 , A1 , A2 , A3 , A4 , A5 , A6> 224 tuple_type; 225 typedef 226 dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6> 227 self_type; 228 typedef 229 dynamic_frame<self_type> 230 dynamic_frame_type; dynamicdynamic231 dynamic() 232 : frame(0) {} 233 template <int N> 234 static 235 typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const initdynamic236 init(self_type * scope) 237 { 238 return 239 expression:: 240 dynamic_member<mpl::int_<N>, self_type *>:: 241 make(mpl::int_<N>(), scope); 242 } 243 typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; typedef typename expression::dynamic_member< mpl::int_< 5> , self_type * >::type const member6; typedef typename expression::dynamic_member< mpl::int_< 6> , self_type * >::type const member7; 244 mutable dynamic_frame_type* frame; 245 }; 246 247 248 249 250 251 252 253 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7> 254 struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7> : noncopyable 255 { 256 typedef 257 vector8<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7> 258 tuple_type; 259 typedef 260 dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7> 261 self_type; 262 typedef 263 dynamic_frame<self_type> 264 dynamic_frame_type; dynamicdynamic265 dynamic() 266 : frame(0) {} 267 template <int N> 268 static 269 typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const initdynamic270 init(self_type * scope) 271 { 272 return 273 expression:: 274 dynamic_member<mpl::int_<N>, self_type *>:: 275 make(mpl::int_<N>(), scope); 276 } 277 typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; typedef typename expression::dynamic_member< mpl::int_< 5> , self_type * >::type const member6; typedef typename expression::dynamic_member< mpl::int_< 6> , self_type * >::type const member7; typedef typename expression::dynamic_member< mpl::int_< 7> , self_type * >::type const member8; 278 mutable dynamic_frame_type* frame; 279 }; 280 281 282 283 284 285 286 287 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8> 288 struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8> : noncopyable 289 { 290 typedef 291 vector9<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8> 292 tuple_type; 293 typedef 294 dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8> 295 self_type; 296 typedef 297 dynamic_frame<self_type> 298 dynamic_frame_type; dynamicdynamic299 dynamic() 300 : frame(0) {} 301 template <int N> 302 static 303 typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const initdynamic304 init(self_type * scope) 305 { 306 return 307 expression:: 308 dynamic_member<mpl::int_<N>, self_type *>:: 309 make(mpl::int_<N>(), scope); 310 } 311 typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; typedef typename expression::dynamic_member< mpl::int_< 5> , self_type * >::type const member6; typedef typename expression::dynamic_member< mpl::int_< 6> , self_type * >::type const member7; typedef typename expression::dynamic_member< mpl::int_< 7> , self_type * >::type const member8; typedef typename expression::dynamic_member< mpl::int_< 8> , self_type * >::type const member9; 312 mutable dynamic_frame_type* frame; 313 }; 314 315 316 317 318 319 320 321 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9> 322 struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9> : noncopyable 323 { 324 typedef 325 vector10<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9> 326 tuple_type; 327 typedef 328 dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9> 329 self_type; 330 typedef 331 dynamic_frame<self_type> 332 dynamic_frame_type; dynamicdynamic333 dynamic() 334 : frame(0) {} 335 template <int N> 336 static 337 typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const initdynamic338 init(self_type * scope) 339 { 340 return 341 expression:: 342 dynamic_member<mpl::int_<N>, self_type *>:: 343 make(mpl::int_<N>(), scope); 344 } 345 typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; typedef typename expression::dynamic_member< mpl::int_< 5> , self_type * >::type const member6; typedef typename expression::dynamic_member< mpl::int_< 6> , self_type * >::type const member7; typedef typename expression::dynamic_member< mpl::int_< 7> , self_type * >::type const member8; typedef typename expression::dynamic_member< mpl::int_< 8> , self_type * >::type const member9; typedef typename expression::dynamic_member< mpl::int_< 9> , self_type * >::type const member10; 346 mutable dynamic_frame_type* frame; 347 }; 348 349 350 351 352 353 354 355 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10> 356 struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10> : noncopyable 357 { 358 typedef 359 vector11<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10> 360 tuple_type; 361 typedef 362 dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10> 363 self_type; 364 typedef 365 dynamic_frame<self_type> 366 dynamic_frame_type; dynamicdynamic367 dynamic() 368 : frame(0) {} 369 template <int N> 370 static 371 typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const initdynamic372 init(self_type * scope) 373 { 374 return 375 expression:: 376 dynamic_member<mpl::int_<N>, self_type *>:: 377 make(mpl::int_<N>(), scope); 378 } 379 typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; typedef typename expression::dynamic_member< mpl::int_< 5> , self_type * >::type const member6; typedef typename expression::dynamic_member< mpl::int_< 6> , self_type * >::type const member7; typedef typename expression::dynamic_member< mpl::int_< 7> , self_type * >::type const member8; typedef typename expression::dynamic_member< mpl::int_< 8> , self_type * >::type const member9; typedef typename expression::dynamic_member< mpl::int_< 9> , self_type * >::type const member10; typedef typename expression::dynamic_member< mpl::int_< 10> , self_type * >::type const member11; 380 mutable dynamic_frame_type* frame; 381 }; 382 383 384 385 386 387 388 389 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11> 390 struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11> : noncopyable 391 { 392 typedef 393 vector12<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11> 394 tuple_type; 395 typedef 396 dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11> 397 self_type; 398 typedef 399 dynamic_frame<self_type> 400 dynamic_frame_type; dynamicdynamic401 dynamic() 402 : frame(0) {} 403 template <int N> 404 static 405 typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const initdynamic406 init(self_type * scope) 407 { 408 return 409 expression:: 410 dynamic_member<mpl::int_<N>, self_type *>:: 411 make(mpl::int_<N>(), scope); 412 } 413 typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; typedef typename expression::dynamic_member< mpl::int_< 5> , self_type * >::type const member6; typedef typename expression::dynamic_member< mpl::int_< 6> , self_type * >::type const member7; typedef typename expression::dynamic_member< mpl::int_< 7> , self_type * >::type const member8; typedef typename expression::dynamic_member< mpl::int_< 8> , self_type * >::type const member9; typedef typename expression::dynamic_member< mpl::int_< 9> , self_type * >::type const member10; typedef typename expression::dynamic_member< mpl::int_< 10> , self_type * >::type const member11; typedef typename expression::dynamic_member< mpl::int_< 11> , self_type * >::type const member12; 414 mutable dynamic_frame_type* frame; 415 }; 416 417 418 419 420 421 422 423 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12> 424 struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12> : noncopyable 425 { 426 typedef 427 vector13<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12> 428 tuple_type; 429 typedef 430 dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12> 431 self_type; 432 typedef 433 dynamic_frame<self_type> 434 dynamic_frame_type; dynamicdynamic435 dynamic() 436 : frame(0) {} 437 template <int N> 438 static 439 typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const initdynamic440 init(self_type * scope) 441 { 442 return 443 expression:: 444 dynamic_member<mpl::int_<N>, self_type *>:: 445 make(mpl::int_<N>(), scope); 446 } 447 typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; typedef typename expression::dynamic_member< mpl::int_< 5> , self_type * >::type const member6; typedef typename expression::dynamic_member< mpl::int_< 6> , self_type * >::type const member7; typedef typename expression::dynamic_member< mpl::int_< 7> , self_type * >::type const member8; typedef typename expression::dynamic_member< mpl::int_< 8> , self_type * >::type const member9; typedef typename expression::dynamic_member< mpl::int_< 9> , self_type * >::type const member10; typedef typename expression::dynamic_member< mpl::int_< 10> , self_type * >::type const member11; typedef typename expression::dynamic_member< mpl::int_< 11> , self_type * >::type const member12; typedef typename expression::dynamic_member< mpl::int_< 12> , self_type * >::type const member13; 448 mutable dynamic_frame_type* frame; 449 }; 450 451 452 453 454 455 456 457 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13> 458 struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13> : noncopyable 459 { 460 typedef 461 vector14<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13> 462 tuple_type; 463 typedef 464 dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13> 465 self_type; 466 typedef 467 dynamic_frame<self_type> 468 dynamic_frame_type; dynamicdynamic469 dynamic() 470 : frame(0) {} 471 template <int N> 472 static 473 typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const initdynamic474 init(self_type * scope) 475 { 476 return 477 expression:: 478 dynamic_member<mpl::int_<N>, self_type *>:: 479 make(mpl::int_<N>(), scope); 480 } 481 typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; typedef typename expression::dynamic_member< mpl::int_< 5> , self_type * >::type const member6; typedef typename expression::dynamic_member< mpl::int_< 6> , self_type * >::type const member7; typedef typename expression::dynamic_member< mpl::int_< 7> , self_type * >::type const member8; typedef typename expression::dynamic_member< mpl::int_< 8> , self_type * >::type const member9; typedef typename expression::dynamic_member< mpl::int_< 9> , self_type * >::type const member10; typedef typename expression::dynamic_member< mpl::int_< 10> , self_type * >::type const member11; typedef typename expression::dynamic_member< mpl::int_< 11> , self_type * >::type const member12; typedef typename expression::dynamic_member< mpl::int_< 12> , self_type * >::type const member13; typedef typename expression::dynamic_member< mpl::int_< 13> , self_type * >::type const member14; 482 mutable dynamic_frame_type* frame; 483 }; 484 485 486 487 488 489 490 491 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14> 492 struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14> : noncopyable 493 { 494 typedef 495 vector15<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14> 496 tuple_type; 497 typedef 498 dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14> 499 self_type; 500 typedef 501 dynamic_frame<self_type> 502 dynamic_frame_type; dynamicdynamic503 dynamic() 504 : frame(0) {} 505 template <int N> 506 static 507 typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const initdynamic508 init(self_type * scope) 509 { 510 return 511 expression:: 512 dynamic_member<mpl::int_<N>, self_type *>:: 513 make(mpl::int_<N>(), scope); 514 } 515 typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; typedef typename expression::dynamic_member< mpl::int_< 5> , self_type * >::type const member6; typedef typename expression::dynamic_member< mpl::int_< 6> , self_type * >::type const member7; typedef typename expression::dynamic_member< mpl::int_< 7> , self_type * >::type const member8; typedef typename expression::dynamic_member< mpl::int_< 8> , self_type * >::type const member9; typedef typename expression::dynamic_member< mpl::int_< 9> , self_type * >::type const member10; typedef typename expression::dynamic_member< mpl::int_< 10> , self_type * >::type const member11; typedef typename expression::dynamic_member< mpl::int_< 11> , self_type * >::type const member12; typedef typename expression::dynamic_member< mpl::int_< 12> , self_type * >::type const member13; typedef typename expression::dynamic_member< mpl::int_< 13> , self_type * >::type const member14; typedef typename expression::dynamic_member< mpl::int_< 14> , self_type * >::type const member15; 516 mutable dynamic_frame_type* frame; 517 }; 518 519 520 521 522 523 524 525 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15> 526 struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15> : noncopyable 527 { 528 typedef 529 vector16<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15> 530 tuple_type; 531 typedef 532 dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15> 533 self_type; 534 typedef 535 dynamic_frame<self_type> 536 dynamic_frame_type; dynamicdynamic537 dynamic() 538 : frame(0) {} 539 template <int N> 540 static 541 typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const initdynamic542 init(self_type * scope) 543 { 544 return 545 expression:: 546 dynamic_member<mpl::int_<N>, self_type *>:: 547 make(mpl::int_<N>(), scope); 548 } 549 typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; typedef typename expression::dynamic_member< mpl::int_< 5> , self_type * >::type const member6; typedef typename expression::dynamic_member< mpl::int_< 6> , self_type * >::type const member7; typedef typename expression::dynamic_member< mpl::int_< 7> , self_type * >::type const member8; typedef typename expression::dynamic_member< mpl::int_< 8> , self_type * >::type const member9; typedef typename expression::dynamic_member< mpl::int_< 9> , self_type * >::type const member10; typedef typename expression::dynamic_member< mpl::int_< 10> , self_type * >::type const member11; typedef typename expression::dynamic_member< mpl::int_< 11> , self_type * >::type const member12; typedef typename expression::dynamic_member< mpl::int_< 12> , self_type * >::type const member13; typedef typename expression::dynamic_member< mpl::int_< 13> , self_type * >::type const member14; typedef typename expression::dynamic_member< mpl::int_< 14> , self_type * >::type const member15; typedef typename expression::dynamic_member< mpl::int_< 15> , self_type * >::type const member16; 550 mutable dynamic_frame_type* frame; 551 }; 552 553 554 555 556 557 558 559 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16> 560 struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16> : noncopyable 561 { 562 typedef 563 vector17<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16> 564 tuple_type; 565 typedef 566 dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16> 567 self_type; 568 typedef 569 dynamic_frame<self_type> 570 dynamic_frame_type; dynamicdynamic571 dynamic() 572 : frame(0) {} 573 template <int N> 574 static 575 typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const initdynamic576 init(self_type * scope) 577 { 578 return 579 expression:: 580 dynamic_member<mpl::int_<N>, self_type *>:: 581 make(mpl::int_<N>(), scope); 582 } 583 typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; typedef typename expression::dynamic_member< mpl::int_< 5> , self_type * >::type const member6; typedef typename expression::dynamic_member< mpl::int_< 6> , self_type * >::type const member7; typedef typename expression::dynamic_member< mpl::int_< 7> , self_type * >::type const member8; typedef typename expression::dynamic_member< mpl::int_< 8> , self_type * >::type const member9; typedef typename expression::dynamic_member< mpl::int_< 9> , self_type * >::type const member10; typedef typename expression::dynamic_member< mpl::int_< 10> , self_type * >::type const member11; typedef typename expression::dynamic_member< mpl::int_< 11> , self_type * >::type const member12; typedef typename expression::dynamic_member< mpl::int_< 12> , self_type * >::type const member13; typedef typename expression::dynamic_member< mpl::int_< 13> , self_type * >::type const member14; typedef typename expression::dynamic_member< mpl::int_< 14> , self_type * >::type const member15; typedef typename expression::dynamic_member< mpl::int_< 15> , self_type * >::type const member16; typedef typename expression::dynamic_member< mpl::int_< 16> , self_type * >::type const member17; 584 mutable dynamic_frame_type* frame; 585 }; 586 587 588 589 590 591 592 593 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17> 594 struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17> : noncopyable 595 { 596 typedef 597 vector18<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17> 598 tuple_type; 599 typedef 600 dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17> 601 self_type; 602 typedef 603 dynamic_frame<self_type> 604 dynamic_frame_type; dynamicdynamic605 dynamic() 606 : frame(0) {} 607 template <int N> 608 static 609 typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const initdynamic610 init(self_type * scope) 611 { 612 return 613 expression:: 614 dynamic_member<mpl::int_<N>, self_type *>:: 615 make(mpl::int_<N>(), scope); 616 } 617 typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; typedef typename expression::dynamic_member< mpl::int_< 5> , self_type * >::type const member6; typedef typename expression::dynamic_member< mpl::int_< 6> , self_type * >::type const member7; typedef typename expression::dynamic_member< mpl::int_< 7> , self_type * >::type const member8; typedef typename expression::dynamic_member< mpl::int_< 8> , self_type * >::type const member9; typedef typename expression::dynamic_member< mpl::int_< 9> , self_type * >::type const member10; typedef typename expression::dynamic_member< mpl::int_< 10> , self_type * >::type const member11; typedef typename expression::dynamic_member< mpl::int_< 11> , self_type * >::type const member12; typedef typename expression::dynamic_member< mpl::int_< 12> , self_type * >::type const member13; typedef typename expression::dynamic_member< mpl::int_< 13> , self_type * >::type const member14; typedef typename expression::dynamic_member< mpl::int_< 14> , self_type * >::type const member15; typedef typename expression::dynamic_member< mpl::int_< 15> , self_type * >::type const member16; typedef typename expression::dynamic_member< mpl::int_< 16> , self_type * >::type const member17; typedef typename expression::dynamic_member< mpl::int_< 17> , self_type * >::type const member18; 618 mutable dynamic_frame_type* frame; 619 }; 620 621 622 623 624 625 626 627 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18> 628 struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18> : noncopyable 629 { 630 typedef 631 vector19<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18> 632 tuple_type; 633 typedef 634 dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18> 635 self_type; 636 typedef 637 dynamic_frame<self_type> 638 dynamic_frame_type; dynamicdynamic639 dynamic() 640 : frame(0) {} 641 template <int N> 642 static 643 typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const initdynamic644 init(self_type * scope) 645 { 646 return 647 expression:: 648 dynamic_member<mpl::int_<N>, self_type *>:: 649 make(mpl::int_<N>(), scope); 650 } 651 typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; typedef typename expression::dynamic_member< mpl::int_< 5> , self_type * >::type const member6; typedef typename expression::dynamic_member< mpl::int_< 6> , self_type * >::type const member7; typedef typename expression::dynamic_member< mpl::int_< 7> , self_type * >::type const member8; typedef typename expression::dynamic_member< mpl::int_< 8> , self_type * >::type const member9; typedef typename expression::dynamic_member< mpl::int_< 9> , self_type * >::type const member10; typedef typename expression::dynamic_member< mpl::int_< 10> , self_type * >::type const member11; typedef typename expression::dynamic_member< mpl::int_< 11> , self_type * >::type const member12; typedef typename expression::dynamic_member< mpl::int_< 12> , self_type * >::type const member13; typedef typename expression::dynamic_member< mpl::int_< 13> , self_type * >::type const member14; typedef typename expression::dynamic_member< mpl::int_< 14> , self_type * >::type const member15; typedef typename expression::dynamic_member< mpl::int_< 15> , self_type * >::type const member16; typedef typename expression::dynamic_member< mpl::int_< 16> , self_type * >::type const member17; typedef typename expression::dynamic_member< mpl::int_< 17> , self_type * >::type const member18; typedef typename expression::dynamic_member< mpl::int_< 18> , self_type * >::type const member19; 652 mutable dynamic_frame_type* frame; 653 }; 654 655 656 657 658 659 660 661 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19> 662 struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19> : noncopyable 663 { 664 typedef 665 vector20<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19> 666 tuple_type; 667 typedef 668 dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19> 669 self_type; 670 typedef 671 dynamic_frame<self_type> 672 dynamic_frame_type; dynamicdynamic673 dynamic() 674 : frame(0) {} 675 template <int N> 676 static 677 typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const initdynamic678 init(self_type * scope) 679 { 680 return 681 expression:: 682 dynamic_member<mpl::int_<N>, self_type *>:: 683 make(mpl::int_<N>(), scope); 684 } 685 typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; typedef typename expression::dynamic_member< mpl::int_< 5> , self_type * >::type const member6; typedef typename expression::dynamic_member< mpl::int_< 6> , self_type * >::type const member7; typedef typename expression::dynamic_member< mpl::int_< 7> , self_type * >::type const member8; typedef typename expression::dynamic_member< mpl::int_< 8> , self_type * >::type const member9; typedef typename expression::dynamic_member< mpl::int_< 9> , self_type * >::type const member10; typedef typename expression::dynamic_member< mpl::int_< 10> , self_type * >::type const member11; typedef typename expression::dynamic_member< mpl::int_< 11> , self_type * >::type const member12; typedef typename expression::dynamic_member< mpl::int_< 12> , self_type * >::type const member13; typedef typename expression::dynamic_member< mpl::int_< 13> , self_type * >::type const member14; typedef typename expression::dynamic_member< mpl::int_< 14> , self_type * >::type const member15; typedef typename expression::dynamic_member< mpl::int_< 15> , self_type * >::type const member16; typedef typename expression::dynamic_member< mpl::int_< 16> , self_type * >::type const member17; typedef typename expression::dynamic_member< mpl::int_< 17> , self_type * >::type const member18; typedef typename expression::dynamic_member< mpl::int_< 18> , self_type * >::type const member19; typedef typename expression::dynamic_member< mpl::int_< 19> , self_type * >::type const member20; 686 mutable dynamic_frame_type* frame; 687 }; 688 689 690 691 692 693 694 695 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20> 696 struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20> : noncopyable 697 { 698 typedef 699 vector21<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20> 700 tuple_type; 701 typedef 702 dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20> 703 self_type; 704 typedef 705 dynamic_frame<self_type> 706 dynamic_frame_type; dynamicdynamic707 dynamic() 708 : frame(0) {} 709 template <int N> 710 static 711 typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const initdynamic712 init(self_type * scope) 713 { 714 return 715 expression:: 716 dynamic_member<mpl::int_<N>, self_type *>:: 717 make(mpl::int_<N>(), scope); 718 } 719 typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; typedef typename expression::dynamic_member< mpl::int_< 5> , self_type * >::type const member6; typedef typename expression::dynamic_member< mpl::int_< 6> , self_type * >::type const member7; typedef typename expression::dynamic_member< mpl::int_< 7> , self_type * >::type const member8; typedef typename expression::dynamic_member< mpl::int_< 8> , self_type * >::type const member9; typedef typename expression::dynamic_member< mpl::int_< 9> , self_type * >::type const member10; typedef typename expression::dynamic_member< mpl::int_< 10> , self_type * >::type const member11; typedef typename expression::dynamic_member< mpl::int_< 11> , self_type * >::type const member12; typedef typename expression::dynamic_member< mpl::int_< 12> , self_type * >::type const member13; typedef typename expression::dynamic_member< mpl::int_< 13> , self_type * >::type const member14; typedef typename expression::dynamic_member< mpl::int_< 14> , self_type * >::type const member15; typedef typename expression::dynamic_member< mpl::int_< 15> , self_type * >::type const member16; typedef typename expression::dynamic_member< mpl::int_< 16> , self_type * >::type const member17; typedef typename expression::dynamic_member< mpl::int_< 17> , self_type * >::type const member18; typedef typename expression::dynamic_member< mpl::int_< 18> , self_type * >::type const member19; typedef typename expression::dynamic_member< mpl::int_< 19> , self_type * >::type const member20; typedef typename expression::dynamic_member< mpl::int_< 20> , self_type * >::type const member21; 720 mutable dynamic_frame_type* frame; 721 }; 722 723 724 725 726 727 728 729 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21> 730 struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21> : noncopyable 731 { 732 typedef 733 vector22<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21> 734 tuple_type; 735 typedef 736 dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21> 737 self_type; 738 typedef 739 dynamic_frame<self_type> 740 dynamic_frame_type; dynamicdynamic741 dynamic() 742 : frame(0) {} 743 template <int N> 744 static 745 typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const initdynamic746 init(self_type * scope) 747 { 748 return 749 expression:: 750 dynamic_member<mpl::int_<N>, self_type *>:: 751 make(mpl::int_<N>(), scope); 752 } 753 typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; typedef typename expression::dynamic_member< mpl::int_< 5> , self_type * >::type const member6; typedef typename expression::dynamic_member< mpl::int_< 6> , self_type * >::type const member7; typedef typename expression::dynamic_member< mpl::int_< 7> , self_type * >::type const member8; typedef typename expression::dynamic_member< mpl::int_< 8> , self_type * >::type const member9; typedef typename expression::dynamic_member< mpl::int_< 9> , self_type * >::type const member10; typedef typename expression::dynamic_member< mpl::int_< 10> , self_type * >::type const member11; typedef typename expression::dynamic_member< mpl::int_< 11> , self_type * >::type const member12; typedef typename expression::dynamic_member< mpl::int_< 12> , self_type * >::type const member13; typedef typename expression::dynamic_member< mpl::int_< 13> , self_type * >::type const member14; typedef typename expression::dynamic_member< mpl::int_< 14> , self_type * >::type const member15; typedef typename expression::dynamic_member< mpl::int_< 15> , self_type * >::type const member16; typedef typename expression::dynamic_member< mpl::int_< 16> , self_type * >::type const member17; typedef typename expression::dynamic_member< mpl::int_< 17> , self_type * >::type const member18; typedef typename expression::dynamic_member< mpl::int_< 18> , self_type * >::type const member19; typedef typename expression::dynamic_member< mpl::int_< 19> , self_type * >::type const member20; typedef typename expression::dynamic_member< mpl::int_< 20> , self_type * >::type const member21; typedef typename expression::dynamic_member< mpl::int_< 21> , self_type * >::type const member22; 754 mutable dynamic_frame_type* frame; 755 }; 756 757 758 759 760 761 762 763 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22> 764 struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22> : noncopyable 765 { 766 typedef 767 vector23<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22> 768 tuple_type; 769 typedef 770 dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22> 771 self_type; 772 typedef 773 dynamic_frame<self_type> 774 dynamic_frame_type; dynamicdynamic775 dynamic() 776 : frame(0) {} 777 template <int N> 778 static 779 typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const initdynamic780 init(self_type * scope) 781 { 782 return 783 expression:: 784 dynamic_member<mpl::int_<N>, self_type *>:: 785 make(mpl::int_<N>(), scope); 786 } 787 typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; typedef typename expression::dynamic_member< mpl::int_< 5> , self_type * >::type const member6; typedef typename expression::dynamic_member< mpl::int_< 6> , self_type * >::type const member7; typedef typename expression::dynamic_member< mpl::int_< 7> , self_type * >::type const member8; typedef typename expression::dynamic_member< mpl::int_< 8> , self_type * >::type const member9; typedef typename expression::dynamic_member< mpl::int_< 9> , self_type * >::type const member10; typedef typename expression::dynamic_member< mpl::int_< 10> , self_type * >::type const member11; typedef typename expression::dynamic_member< mpl::int_< 11> , self_type * >::type const member12; typedef typename expression::dynamic_member< mpl::int_< 12> , self_type * >::type const member13; typedef typename expression::dynamic_member< mpl::int_< 13> , self_type * >::type const member14; typedef typename expression::dynamic_member< mpl::int_< 14> , self_type * >::type const member15; typedef typename expression::dynamic_member< mpl::int_< 15> , self_type * >::type const member16; typedef typename expression::dynamic_member< mpl::int_< 16> , self_type * >::type const member17; typedef typename expression::dynamic_member< mpl::int_< 17> , self_type * >::type const member18; typedef typename expression::dynamic_member< mpl::int_< 18> , self_type * >::type const member19; typedef typename expression::dynamic_member< mpl::int_< 19> , self_type * >::type const member20; typedef typename expression::dynamic_member< mpl::int_< 20> , self_type * >::type const member21; typedef typename expression::dynamic_member< mpl::int_< 21> , self_type * >::type const member22; typedef typename expression::dynamic_member< mpl::int_< 22> , self_type * >::type const member23; 788 mutable dynamic_frame_type* frame; 789 }; 790 791 792 793 794 795 796 797 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23> 798 struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23> : noncopyable 799 { 800 typedef 801 vector24<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23> 802 tuple_type; 803 typedef 804 dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22 , A23> 805 self_type; 806 typedef 807 dynamic_frame<self_type> 808 dynamic_frame_type; dynamicdynamic809 dynamic() 810 : frame(0) {} 811 template <int N> 812 static 813 typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const initdynamic814 init(self_type * scope) 815 { 816 return 817 expression:: 818 dynamic_member<mpl::int_<N>, self_type *>:: 819 make(mpl::int_<N>(), scope); 820 } 821 typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; typedef typename expression::dynamic_member< mpl::int_< 5> , self_type * >::type const member6; typedef typename expression::dynamic_member< mpl::int_< 6> , self_type * >::type const member7; typedef typename expression::dynamic_member< mpl::int_< 7> , self_type * >::type const member8; typedef typename expression::dynamic_member< mpl::int_< 8> , self_type * >::type const member9; typedef typename expression::dynamic_member< mpl::int_< 9> , self_type * >::type const member10; typedef typename expression::dynamic_member< mpl::int_< 10> , self_type * >::type const member11; typedef typename expression::dynamic_member< mpl::int_< 11> , self_type * >::type const member12; typedef typename expression::dynamic_member< mpl::int_< 12> , self_type * >::type const member13; typedef typename expression::dynamic_member< mpl::int_< 13> , self_type * >::type const member14; typedef typename expression::dynamic_member< mpl::int_< 14> , self_type * >::type const member15; typedef typename expression::dynamic_member< mpl::int_< 15> , self_type * >::type const member16; typedef typename expression::dynamic_member< mpl::int_< 16> , self_type * >::type const member17; typedef typename expression::dynamic_member< mpl::int_< 17> , self_type * >::type const member18; typedef typename expression::dynamic_member< mpl::int_< 18> , self_type * >::type const member19; typedef typename expression::dynamic_member< mpl::int_< 19> , self_type * >::type const member20; typedef typename expression::dynamic_member< mpl::int_< 20> , self_type * >::type const member21; typedef typename expression::dynamic_member< mpl::int_< 21> , self_type * >::type const member22; typedef typename expression::dynamic_member< mpl::int_< 22> , self_type * >::type const member23; typedef typename expression::dynamic_member< mpl::int_< 23> , self_type * >::type const member24; 822 mutable dynamic_frame_type* frame; 823 }; 824 825 826 827 828 829 830 831 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24> 832 struct dynamic<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> : noncopyable 833 { 834 typedef 835 vector25<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> 836 tuple_type; 837 typedef 838 dynamic<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> 839 self_type; 840 typedef 841 dynamic_frame<self_type> 842 dynamic_frame_type; dynamicdynamic843 dynamic() 844 : frame(0) {} 845 template <int N> 846 static 847 typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const initdynamic848 init(self_type * scope) 849 { 850 return 851 expression:: 852 dynamic_member<mpl::int_<N>, self_type *>:: 853 make(mpl::int_<N>(), scope); 854 } 855 typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; typedef typename expression::dynamic_member< mpl::int_< 5> , self_type * >::type const member6; typedef typename expression::dynamic_member< mpl::int_< 6> , self_type * >::type const member7; typedef typename expression::dynamic_member< mpl::int_< 7> , self_type * >::type const member8; typedef typename expression::dynamic_member< mpl::int_< 8> , self_type * >::type const member9; typedef typename expression::dynamic_member< mpl::int_< 9> , self_type * >::type const member10; typedef typename expression::dynamic_member< mpl::int_< 10> , self_type * >::type const member11; typedef typename expression::dynamic_member< mpl::int_< 11> , self_type * >::type const member12; typedef typename expression::dynamic_member< mpl::int_< 12> , self_type * >::type const member13; typedef typename expression::dynamic_member< mpl::int_< 13> , self_type * >::type const member14; typedef typename expression::dynamic_member< mpl::int_< 14> , self_type * >::type const member15; typedef typename expression::dynamic_member< mpl::int_< 15> , self_type * >::type const member16; typedef typename expression::dynamic_member< mpl::int_< 16> , self_type * >::type const member17; typedef typename expression::dynamic_member< mpl::int_< 17> , self_type * >::type const member18; typedef typename expression::dynamic_member< mpl::int_< 18> , self_type * >::type const member19; typedef typename expression::dynamic_member< mpl::int_< 19> , self_type * >::type const member20; typedef typename expression::dynamic_member< mpl::int_< 20> , self_type * >::type const member21; typedef typename expression::dynamic_member< mpl::int_< 21> , self_type * >::type const member22; typedef typename expression::dynamic_member< mpl::int_< 22> , self_type * >::type const member23; typedef typename expression::dynamic_member< mpl::int_< 23> , self_type * >::type const member24; typedef typename expression::dynamic_member< mpl::int_< 24> , self_type * >::type const member25; 856 mutable dynamic_frame_type* frame; 857 }; 858 859 860 861 862 863 864 865 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24 , typename A25> 866 struct dynamic<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> : noncopyable 867 { 868 typedef 869 vector26<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> 870 tuple_type; 871 typedef 872 dynamic<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> 873 self_type; 874 typedef 875 dynamic_frame<self_type> 876 dynamic_frame_type; dynamicdynamic877 dynamic() 878 : frame(0) {} 879 template <int N> 880 static 881 typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const initdynamic882 init(self_type * scope) 883 { 884 return 885 expression:: 886 dynamic_member<mpl::int_<N>, self_type *>:: 887 make(mpl::int_<N>(), scope); 888 } 889 typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; typedef typename expression::dynamic_member< mpl::int_< 5> , self_type * >::type const member6; typedef typename expression::dynamic_member< mpl::int_< 6> , self_type * >::type const member7; typedef typename expression::dynamic_member< mpl::int_< 7> , self_type * >::type const member8; typedef typename expression::dynamic_member< mpl::int_< 8> , self_type * >::type const member9; typedef typename expression::dynamic_member< mpl::int_< 9> , self_type * >::type const member10; typedef typename expression::dynamic_member< mpl::int_< 10> , self_type * >::type const member11; typedef typename expression::dynamic_member< mpl::int_< 11> , self_type * >::type const member12; typedef typename expression::dynamic_member< mpl::int_< 12> , self_type * >::type const member13; typedef typename expression::dynamic_member< mpl::int_< 13> , self_type * >::type const member14; typedef typename expression::dynamic_member< mpl::int_< 14> , self_type * >::type const member15; typedef typename expression::dynamic_member< mpl::int_< 15> , self_type * >::type const member16; typedef typename expression::dynamic_member< mpl::int_< 16> , self_type * >::type const member17; typedef typename expression::dynamic_member< mpl::int_< 17> , self_type * >::type const member18; typedef typename expression::dynamic_member< mpl::int_< 18> , self_type * >::type const member19; typedef typename expression::dynamic_member< mpl::int_< 19> , self_type * >::type const member20; typedef typename expression::dynamic_member< mpl::int_< 20> , self_type * >::type const member21; typedef typename expression::dynamic_member< mpl::int_< 21> , self_type * >::type const member22; typedef typename expression::dynamic_member< mpl::int_< 22> , self_type * >::type const member23; typedef typename expression::dynamic_member< mpl::int_< 23> , self_type * >::type const member24; typedef typename expression::dynamic_member< mpl::int_< 24> , self_type * >::type const member25; typedef typename expression::dynamic_member< mpl::int_< 25> , self_type * >::type const member26; 890 mutable dynamic_frame_type* frame; 891 }; 892 893 894 895 896 897 898 899 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24 , typename A25 , typename A26> 900 struct dynamic<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> : noncopyable 901 { 902 typedef 903 vector27<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> 904 tuple_type; 905 typedef 906 dynamic<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> 907 self_type; 908 typedef 909 dynamic_frame<self_type> 910 dynamic_frame_type; dynamicdynamic911 dynamic() 912 : frame(0) {} 913 template <int N> 914 static 915 typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const initdynamic916 init(self_type * scope) 917 { 918 return 919 expression:: 920 dynamic_member<mpl::int_<N>, self_type *>:: 921 make(mpl::int_<N>(), scope); 922 } 923 typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; typedef typename expression::dynamic_member< mpl::int_< 5> , self_type * >::type const member6; typedef typename expression::dynamic_member< mpl::int_< 6> , self_type * >::type const member7; typedef typename expression::dynamic_member< mpl::int_< 7> , self_type * >::type const member8; typedef typename expression::dynamic_member< mpl::int_< 8> , self_type * >::type const member9; typedef typename expression::dynamic_member< mpl::int_< 9> , self_type * >::type const member10; typedef typename expression::dynamic_member< mpl::int_< 10> , self_type * >::type const member11; typedef typename expression::dynamic_member< mpl::int_< 11> , self_type * >::type const member12; typedef typename expression::dynamic_member< mpl::int_< 12> , self_type * >::type const member13; typedef typename expression::dynamic_member< mpl::int_< 13> , self_type * >::type const member14; typedef typename expression::dynamic_member< mpl::int_< 14> , self_type * >::type const member15; typedef typename expression::dynamic_member< mpl::int_< 15> , self_type * >::type const member16; typedef typename expression::dynamic_member< mpl::int_< 16> , self_type * >::type const member17; typedef typename expression::dynamic_member< mpl::int_< 17> , self_type * >::type const member18; typedef typename expression::dynamic_member< mpl::int_< 18> , self_type * >::type const member19; typedef typename expression::dynamic_member< mpl::int_< 19> , self_type * >::type const member20; typedef typename expression::dynamic_member< mpl::int_< 20> , self_type * >::type const member21; typedef typename expression::dynamic_member< mpl::int_< 21> , self_type * >::type const member22; typedef typename expression::dynamic_member< mpl::int_< 22> , self_type * >::type const member23; typedef typename expression::dynamic_member< mpl::int_< 23> , self_type * >::type const member24; typedef typename expression::dynamic_member< mpl::int_< 24> , self_type * >::type const member25; typedef typename expression::dynamic_member< mpl::int_< 25> , self_type * >::type const member26; typedef typename expression::dynamic_member< mpl::int_< 26> , self_type * >::type const member27; 924 mutable dynamic_frame_type* frame; 925 }; 926 927 928 929 930 931 932 933 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24 , typename A25 , typename A26 , typename A27> 934 struct dynamic<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> : noncopyable 935 { 936 typedef 937 vector28<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> 938 tuple_type; 939 typedef 940 dynamic<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> 941 self_type; 942 typedef 943 dynamic_frame<self_type> 944 dynamic_frame_type; dynamicdynamic945 dynamic() 946 : frame(0) {} 947 template <int N> 948 static 949 typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const initdynamic950 init(self_type * scope) 951 { 952 return 953 expression:: 954 dynamic_member<mpl::int_<N>, self_type *>:: 955 make(mpl::int_<N>(), scope); 956 } 957 typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; typedef typename expression::dynamic_member< mpl::int_< 5> , self_type * >::type const member6; typedef typename expression::dynamic_member< mpl::int_< 6> , self_type * >::type const member7; typedef typename expression::dynamic_member< mpl::int_< 7> , self_type * >::type const member8; typedef typename expression::dynamic_member< mpl::int_< 8> , self_type * >::type const member9; typedef typename expression::dynamic_member< mpl::int_< 9> , self_type * >::type const member10; typedef typename expression::dynamic_member< mpl::int_< 10> , self_type * >::type const member11; typedef typename expression::dynamic_member< mpl::int_< 11> , self_type * >::type const member12; typedef typename expression::dynamic_member< mpl::int_< 12> , self_type * >::type const member13; typedef typename expression::dynamic_member< mpl::int_< 13> , self_type * >::type const member14; typedef typename expression::dynamic_member< mpl::int_< 14> , self_type * >::type const member15; typedef typename expression::dynamic_member< mpl::int_< 15> , self_type * >::type const member16; typedef typename expression::dynamic_member< mpl::int_< 16> , self_type * >::type const member17; typedef typename expression::dynamic_member< mpl::int_< 17> , self_type * >::type const member18; typedef typename expression::dynamic_member< mpl::int_< 18> , self_type * >::type const member19; typedef typename expression::dynamic_member< mpl::int_< 19> , self_type * >::type const member20; typedef typename expression::dynamic_member< mpl::int_< 20> , self_type * >::type const member21; typedef typename expression::dynamic_member< mpl::int_< 21> , self_type * >::type const member22; typedef typename expression::dynamic_member< mpl::int_< 22> , self_type * >::type const member23; typedef typename expression::dynamic_member< mpl::int_< 23> , self_type * >::type const member24; typedef typename expression::dynamic_member< mpl::int_< 24> , self_type * >::type const member25; typedef typename expression::dynamic_member< mpl::int_< 25> , self_type * >::type const member26; typedef typename expression::dynamic_member< mpl::int_< 26> , self_type * >::type const member27; typedef typename expression::dynamic_member< mpl::int_< 27> , self_type * >::type const member28; 958 mutable dynamic_frame_type* frame; 959 }; 960 961 962 963 964 965 966 967 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24 , typename A25 , typename A26 , typename A27 , typename A28> 968 struct dynamic<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> : noncopyable 969 { 970 typedef 971 vector29<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> 972 tuple_type; 973 typedef 974 dynamic<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> 975 self_type; 976 typedef 977 dynamic_frame<self_type> 978 dynamic_frame_type; dynamicdynamic979 dynamic() 980 : frame(0) {} 981 template <int N> 982 static 983 typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const initdynamic984 init(self_type * scope) 985 { 986 return 987 expression:: 988 dynamic_member<mpl::int_<N>, self_type *>:: 989 make(mpl::int_<N>(), scope); 990 } 991 typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; typedef typename expression::dynamic_member< mpl::int_< 5> , self_type * >::type const member6; typedef typename expression::dynamic_member< mpl::int_< 6> , self_type * >::type const member7; typedef typename expression::dynamic_member< mpl::int_< 7> , self_type * >::type const member8; typedef typename expression::dynamic_member< mpl::int_< 8> , self_type * >::type const member9; typedef typename expression::dynamic_member< mpl::int_< 9> , self_type * >::type const member10; typedef typename expression::dynamic_member< mpl::int_< 10> , self_type * >::type const member11; typedef typename expression::dynamic_member< mpl::int_< 11> , self_type * >::type const member12; typedef typename expression::dynamic_member< mpl::int_< 12> , self_type * >::type const member13; typedef typename expression::dynamic_member< mpl::int_< 13> , self_type * >::type const member14; typedef typename expression::dynamic_member< mpl::int_< 14> , self_type * >::type const member15; typedef typename expression::dynamic_member< mpl::int_< 15> , self_type * >::type const member16; typedef typename expression::dynamic_member< mpl::int_< 16> , self_type * >::type const member17; typedef typename expression::dynamic_member< mpl::int_< 17> , self_type * >::type const member18; typedef typename expression::dynamic_member< mpl::int_< 18> , self_type * >::type const member19; typedef typename expression::dynamic_member< mpl::int_< 19> , self_type * >::type const member20; typedef typename expression::dynamic_member< mpl::int_< 20> , self_type * >::type const member21; typedef typename expression::dynamic_member< mpl::int_< 21> , self_type * >::type const member22; typedef typename expression::dynamic_member< mpl::int_< 22> , self_type * >::type const member23; typedef typename expression::dynamic_member< mpl::int_< 23> , self_type * >::type const member24; typedef typename expression::dynamic_member< mpl::int_< 24> , self_type * >::type const member25; typedef typename expression::dynamic_member< mpl::int_< 25> , self_type * >::type const member26; typedef typename expression::dynamic_member< mpl::int_< 26> , self_type * >::type const member27; typedef typename expression::dynamic_member< mpl::int_< 27> , self_type * >::type const member28; typedef typename expression::dynamic_member< mpl::int_< 28> , self_type * >::type const member29; 992 mutable dynamic_frame_type* frame; 993 }; 994 995 996 997 998 999 1000 1001 template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10 , typename A11 , typename A12 , typename A13 , typename A14 , typename A15 , typename A16 , typename A17 , typename A18 , typename A19 , typename A20 , typename A21 , typename A22 , typename A23 , typename A24 , typename A25 , typename A26 , typename A27 , typename A28 , typename A29> 1002 struct dynamic<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> : noncopyable 1003 { 1004 typedef 1005 vector30<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> 1006 tuple_type; 1007 typedef 1008 dynamic<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> 1009 self_type; 1010 typedef 1011 dynamic_frame<self_type> 1012 dynamic_frame_type; dynamicdynamic1013 dynamic() 1014 : frame(0) {} 1015 template <int N> 1016 static 1017 typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const initdynamic1018 init(self_type * scope) 1019 { 1020 return 1021 expression:: 1022 dynamic_member<mpl::int_<N>, self_type *>:: 1023 make(mpl::int_<N>(), scope); 1024 } 1025 typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; typedef typename expression::dynamic_member< mpl::int_< 5> , self_type * >::type const member6; typedef typename expression::dynamic_member< mpl::int_< 6> , self_type * >::type const member7; typedef typename expression::dynamic_member< mpl::int_< 7> , self_type * >::type const member8; typedef typename expression::dynamic_member< mpl::int_< 8> , self_type * >::type const member9; typedef typename expression::dynamic_member< mpl::int_< 9> , self_type * >::type const member10; typedef typename expression::dynamic_member< mpl::int_< 10> , self_type * >::type const member11; typedef typename expression::dynamic_member< mpl::int_< 11> , self_type * >::type const member12; typedef typename expression::dynamic_member< mpl::int_< 12> , self_type * >::type const member13; typedef typename expression::dynamic_member< mpl::int_< 13> , self_type * >::type const member14; typedef typename expression::dynamic_member< mpl::int_< 14> , self_type * >::type const member15; typedef typename expression::dynamic_member< mpl::int_< 15> , self_type * >::type const member16; typedef typename expression::dynamic_member< mpl::int_< 16> , self_type * >::type const member17; typedef typename expression::dynamic_member< mpl::int_< 17> , self_type * >::type const member18; typedef typename expression::dynamic_member< mpl::int_< 18> , self_type * >::type const member19; typedef typename expression::dynamic_member< mpl::int_< 19> , self_type * >::type const member20; typedef typename expression::dynamic_member< mpl::int_< 20> , self_type * >::type const member21; typedef typename expression::dynamic_member< mpl::int_< 21> , self_type * >::type const member22; typedef typename expression::dynamic_member< mpl::int_< 22> , self_type * >::type const member23; typedef typename expression::dynamic_member< mpl::int_< 23> , self_type * >::type const member24; typedef typename expression::dynamic_member< mpl::int_< 24> , self_type * >::type const member25; typedef typename expression::dynamic_member< mpl::int_< 25> , self_type * >::type const member26; typedef typename expression::dynamic_member< mpl::int_< 26> , self_type * >::type const member27; typedef typename expression::dynamic_member< mpl::int_< 27> , self_type * >::type const member28; typedef typename expression::dynamic_member< mpl::int_< 28> , self_type * >::type const member29; typedef typename expression::dynamic_member< mpl::int_< 29> , self_type * >::type const member30; 1026 mutable dynamic_frame_type* frame; 1027 }; 1028