dynamic_30.hpp 80 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027
  1. /*==============================================================================
  2. Copyright (c) 2005-2010 Joel de Guzman
  3. Copyright (c) 2010 Thomas Heller
  4. Distributed under the Boost Software License, Version 1.0. (See accompanying
  5. file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
  6. ==============================================================================*/
  7. template <typename A0>
  8. struct dynamic<A0> : noncopyable
  9. {
  10. typedef
  11. vector1<A0>
  12. tuple_type;
  13. typedef
  14. dynamic<A0>
  15. self_type;
  16. typedef
  17. dynamic_frame<self_type>
  18. dynamic_frame_type;
  19. dynamic()
  20. : frame(0) {}
  21. template <int N>
  22. static
  23. typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const
  24. init(self_type * scope)
  25. {
  26. return
  27. expression::
  28. dynamic_member<mpl::int_<N>, self_type *>::
  29. make(mpl::int_<N>(), scope);
  30. }
  31. typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1;
  32. mutable dynamic_frame_type* frame;
  33. };
  34. template <typename A0 , typename A1>
  35. struct dynamic<A0 , A1> : noncopyable
  36. {
  37. typedef
  38. vector2<A0 , A1>
  39. tuple_type;
  40. typedef
  41. dynamic<A0 , A1>
  42. self_type;
  43. typedef
  44. dynamic_frame<self_type>
  45. dynamic_frame_type;
  46. dynamic()
  47. : frame(0) {}
  48. template <int N>
  49. static
  50. typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const
  51. init(self_type * scope)
  52. {
  53. return
  54. expression::
  55. dynamic_member<mpl::int_<N>, self_type *>::
  56. make(mpl::int_<N>(), scope);
  57. }
  58. 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;
  59. mutable dynamic_frame_type* frame;
  60. };
  61. template <typename A0 , typename A1 , typename A2>
  62. struct dynamic<A0 , A1 , A2> : noncopyable
  63. {
  64. typedef
  65. vector3<A0 , A1 , A2>
  66. tuple_type;
  67. typedef
  68. dynamic<A0 , A1 , A2>
  69. self_type;
  70. typedef
  71. dynamic_frame<self_type>
  72. dynamic_frame_type;
  73. dynamic()
  74. : frame(0) {}
  75. template <int N>
  76. static
  77. typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const
  78. init(self_type * scope)
  79. {
  80. return
  81. expression::
  82. dynamic_member<mpl::int_<N>, self_type *>::
  83. make(mpl::int_<N>(), scope);
  84. }
  85. 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;
  86. mutable dynamic_frame_type* frame;
  87. };
  88. template <typename A0 , typename A1 , typename A2 , typename A3>
  89. struct dynamic<A0 , A1 , A2 , A3> : noncopyable
  90. {
  91. typedef
  92. vector4<A0 , A1 , A2 , A3>
  93. tuple_type;
  94. typedef
  95. dynamic<A0 , A1 , A2 , A3>
  96. self_type;
  97. typedef
  98. dynamic_frame<self_type>
  99. dynamic_frame_type;
  100. dynamic()
  101. : frame(0) {}
  102. template <int N>
  103. static
  104. typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const
  105. init(self_type * scope)
  106. {
  107. return
  108. expression::
  109. dynamic_member<mpl::int_<N>, self_type *>::
  110. make(mpl::int_<N>(), scope);
  111. }
  112. 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;
  113. mutable dynamic_frame_type* frame;
  114. };
  115. template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
  116. struct dynamic<A0 , A1 , A2 , A3 , A4> : noncopyable
  117. {
  118. typedef
  119. vector5<A0 , A1 , A2 , A3 , A4>
  120. tuple_type;
  121. typedef
  122. dynamic<A0 , A1 , A2 , A3 , A4>
  123. self_type;
  124. typedef
  125. dynamic_frame<self_type>
  126. dynamic_frame_type;
  127. dynamic()
  128. : frame(0) {}
  129. template <int N>
  130. static
  131. typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const
  132. init(self_type * scope)
  133. {
  134. return
  135. expression::
  136. dynamic_member<mpl::int_<N>, self_type *>::
  137. make(mpl::int_<N>(), scope);
  138. }
  139. 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;
  140. mutable dynamic_frame_type* frame;
  141. };
  142. template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
  143. struct dynamic<A0 , A1 , A2 , A3 , A4 , A5> : noncopyable
  144. {
  145. typedef
  146. vector6<A0 , A1 , A2 , A3 , A4 , A5>
  147. tuple_type;
  148. typedef
  149. dynamic<A0 , A1 , A2 , A3 , A4 , A5>
  150. self_type;
  151. typedef
  152. dynamic_frame<self_type>
  153. dynamic_frame_type;
  154. dynamic()
  155. : frame(0) {}
  156. template <int N>
  157. static
  158. typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const
  159. init(self_type * scope)
  160. {
  161. return
  162. expression::
  163. dynamic_member<mpl::int_<N>, self_type *>::
  164. make(mpl::int_<N>(), scope);
  165. }
  166. 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;
  167. mutable dynamic_frame_type* frame;
  168. };
  169. template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
  170. struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6> : noncopyable
  171. {
  172. typedef
  173. vector7<A0 , A1 , A2 , A3 , A4 , A5 , A6>
  174. tuple_type;
  175. typedef
  176. dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6>
  177. self_type;
  178. typedef
  179. dynamic_frame<self_type>
  180. dynamic_frame_type;
  181. dynamic()
  182. : frame(0) {}
  183. template <int N>
  184. static
  185. typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const
  186. init(self_type * scope)
  187. {
  188. return
  189. expression::
  190. dynamic_member<mpl::int_<N>, self_type *>::
  191. make(mpl::int_<N>(), scope);
  192. }
  193. 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;
  194. mutable dynamic_frame_type* frame;
  195. };
  196. template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
  197. struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7> : noncopyable
  198. {
  199. typedef
  200. vector8<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7>
  201. tuple_type;
  202. typedef
  203. dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7>
  204. self_type;
  205. typedef
  206. dynamic_frame<self_type>
  207. dynamic_frame_type;
  208. dynamic()
  209. : frame(0) {}
  210. template <int N>
  211. static
  212. typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const
  213. init(self_type * scope)
  214. {
  215. return
  216. expression::
  217. dynamic_member<mpl::int_<N>, self_type *>::
  218. make(mpl::int_<N>(), scope);
  219. }
  220. 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;
  221. mutable dynamic_frame_type* frame;
  222. };
  223. template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
  224. struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8> : noncopyable
  225. {
  226. typedef
  227. vector9<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8>
  228. tuple_type;
  229. typedef
  230. dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8>
  231. self_type;
  232. typedef
  233. dynamic_frame<self_type>
  234. dynamic_frame_type;
  235. dynamic()
  236. : frame(0) {}
  237. template <int N>
  238. static
  239. typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const
  240. init(self_type * scope)
  241. {
  242. return
  243. expression::
  244. dynamic_member<mpl::int_<N>, self_type *>::
  245. make(mpl::int_<N>(), scope);
  246. }
  247. 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;
  248. mutable dynamic_frame_type* frame;
  249. };
  250. template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9>
  251. struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9> : noncopyable
  252. {
  253. typedef
  254. vector10<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9>
  255. tuple_type;
  256. typedef
  257. dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9>
  258. self_type;
  259. typedef
  260. dynamic_frame<self_type>
  261. dynamic_frame_type;
  262. dynamic()
  263. : frame(0) {}
  264. template <int N>
  265. static
  266. typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const
  267. init(self_type * scope)
  268. {
  269. return
  270. expression::
  271. dynamic_member<mpl::int_<N>, self_type *>::
  272. make(mpl::int_<N>(), scope);
  273. }
  274. 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;
  275. mutable dynamic_frame_type* frame;
  276. };
  277. template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10>
  278. struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10> : noncopyable
  279. {
  280. typedef
  281. vector11<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10>
  282. tuple_type;
  283. typedef
  284. dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10>
  285. self_type;
  286. typedef
  287. dynamic_frame<self_type>
  288. dynamic_frame_type;
  289. dynamic()
  290. : frame(0) {}
  291. template <int N>
  292. static
  293. typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const
  294. init(self_type * scope)
  295. {
  296. return
  297. expression::
  298. dynamic_member<mpl::int_<N>, self_type *>::
  299. make(mpl::int_<N>(), scope);
  300. }
  301. 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;
  302. mutable dynamic_frame_type* frame;
  303. };
  304. 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>
  305. struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11> : noncopyable
  306. {
  307. typedef
  308. vector12<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11>
  309. tuple_type;
  310. typedef
  311. dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11>
  312. self_type;
  313. typedef
  314. dynamic_frame<self_type>
  315. dynamic_frame_type;
  316. dynamic()
  317. : frame(0) {}
  318. template <int N>
  319. static
  320. typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const
  321. init(self_type * scope)
  322. {
  323. return
  324. expression::
  325. dynamic_member<mpl::int_<N>, self_type *>::
  326. make(mpl::int_<N>(), scope);
  327. }
  328. 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;
  329. mutable dynamic_frame_type* frame;
  330. };
  331. 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>
  332. struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12> : noncopyable
  333. {
  334. typedef
  335. vector13<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12>
  336. tuple_type;
  337. typedef
  338. dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12>
  339. self_type;
  340. typedef
  341. dynamic_frame<self_type>
  342. dynamic_frame_type;
  343. dynamic()
  344. : frame(0) {}
  345. template <int N>
  346. static
  347. typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const
  348. init(self_type * scope)
  349. {
  350. return
  351. expression::
  352. dynamic_member<mpl::int_<N>, self_type *>::
  353. make(mpl::int_<N>(), scope);
  354. }
  355. 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;
  356. mutable dynamic_frame_type* frame;
  357. };
  358. 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>
  359. struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13> : noncopyable
  360. {
  361. typedef
  362. vector14<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13>
  363. tuple_type;
  364. typedef
  365. dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13>
  366. self_type;
  367. typedef
  368. dynamic_frame<self_type>
  369. dynamic_frame_type;
  370. dynamic()
  371. : frame(0) {}
  372. template <int N>
  373. static
  374. typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const
  375. init(self_type * scope)
  376. {
  377. return
  378. expression::
  379. dynamic_member<mpl::int_<N>, self_type *>::
  380. make(mpl::int_<N>(), scope);
  381. }
  382. 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;
  383. mutable dynamic_frame_type* frame;
  384. };
  385. 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>
  386. struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14> : noncopyable
  387. {
  388. typedef
  389. vector15<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14>
  390. tuple_type;
  391. typedef
  392. dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14>
  393. self_type;
  394. typedef
  395. dynamic_frame<self_type>
  396. dynamic_frame_type;
  397. dynamic()
  398. : frame(0) {}
  399. template <int N>
  400. static
  401. typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const
  402. init(self_type * scope)
  403. {
  404. return
  405. expression::
  406. dynamic_member<mpl::int_<N>, self_type *>::
  407. make(mpl::int_<N>(), scope);
  408. }
  409. 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;
  410. mutable dynamic_frame_type* frame;
  411. };
  412. 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>
  413. struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15> : noncopyable
  414. {
  415. typedef
  416. vector16<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15>
  417. tuple_type;
  418. typedef
  419. dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15>
  420. self_type;
  421. typedef
  422. dynamic_frame<self_type>
  423. dynamic_frame_type;
  424. dynamic()
  425. : frame(0) {}
  426. template <int N>
  427. static
  428. typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const
  429. init(self_type * scope)
  430. {
  431. return
  432. expression::
  433. dynamic_member<mpl::int_<N>, self_type *>::
  434. make(mpl::int_<N>(), scope);
  435. }
  436. 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;
  437. mutable dynamic_frame_type* frame;
  438. };
  439. 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>
  440. struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16> : noncopyable
  441. {
  442. typedef
  443. vector17<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16>
  444. tuple_type;
  445. typedef
  446. dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16>
  447. self_type;
  448. typedef
  449. dynamic_frame<self_type>
  450. dynamic_frame_type;
  451. dynamic()
  452. : frame(0) {}
  453. template <int N>
  454. static
  455. typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const
  456. init(self_type * scope)
  457. {
  458. return
  459. expression::
  460. dynamic_member<mpl::int_<N>, self_type *>::
  461. make(mpl::int_<N>(), scope);
  462. }
  463. 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;
  464. mutable dynamic_frame_type* frame;
  465. };
  466. 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>
  467. struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17> : noncopyable
  468. {
  469. typedef
  470. vector18<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17>
  471. tuple_type;
  472. typedef
  473. dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17>
  474. self_type;
  475. typedef
  476. dynamic_frame<self_type>
  477. dynamic_frame_type;
  478. dynamic()
  479. : frame(0) {}
  480. template <int N>
  481. static
  482. typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const
  483. init(self_type * scope)
  484. {
  485. return
  486. expression::
  487. dynamic_member<mpl::int_<N>, self_type *>::
  488. make(mpl::int_<N>(), scope);
  489. }
  490. 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;
  491. mutable dynamic_frame_type* frame;
  492. };
  493. 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>
  494. struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18> : noncopyable
  495. {
  496. typedef
  497. vector19<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18>
  498. tuple_type;
  499. typedef
  500. dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18>
  501. self_type;
  502. typedef
  503. dynamic_frame<self_type>
  504. dynamic_frame_type;
  505. dynamic()
  506. : frame(0) {}
  507. template <int N>
  508. static
  509. typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const
  510. init(self_type * scope)
  511. {
  512. return
  513. expression::
  514. dynamic_member<mpl::int_<N>, self_type *>::
  515. make(mpl::int_<N>(), scope);
  516. }
  517. 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;
  518. mutable dynamic_frame_type* frame;
  519. };
  520. 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>
  521. struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19> : noncopyable
  522. {
  523. typedef
  524. vector20<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19>
  525. tuple_type;
  526. typedef
  527. dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19>
  528. self_type;
  529. typedef
  530. dynamic_frame<self_type>
  531. dynamic_frame_type;
  532. dynamic()
  533. : frame(0) {}
  534. template <int N>
  535. static
  536. typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const
  537. init(self_type * scope)
  538. {
  539. return
  540. expression::
  541. dynamic_member<mpl::int_<N>, self_type *>::
  542. make(mpl::int_<N>(), scope);
  543. }
  544. 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;
  545. mutable dynamic_frame_type* frame;
  546. };
  547. 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>
  548. struct dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20> : noncopyable
  549. {
  550. typedef
  551. vector21<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20>
  552. tuple_type;
  553. typedef
  554. dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20>
  555. self_type;
  556. typedef
  557. dynamic_frame<self_type>
  558. dynamic_frame_type;
  559. dynamic()
  560. : frame(0) {}
  561. template <int N>
  562. static
  563. typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const
  564. init(self_type * scope)
  565. {
  566. return
  567. expression::
  568. dynamic_member<mpl::int_<N>, self_type *>::
  569. make(mpl::int_<N>(), scope);
  570. }
  571. 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;
  572. mutable dynamic_frame_type* frame;
  573. };
  574. 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>
  575. 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
  576. {
  577. typedef
  578. vector22<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21>
  579. tuple_type;
  580. typedef
  581. dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21>
  582. self_type;
  583. typedef
  584. dynamic_frame<self_type>
  585. dynamic_frame_type;
  586. dynamic()
  587. : frame(0) {}
  588. template <int N>
  589. static
  590. typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const
  591. init(self_type * scope)
  592. {
  593. return
  594. expression::
  595. dynamic_member<mpl::int_<N>, self_type *>::
  596. make(mpl::int_<N>(), scope);
  597. }
  598. 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;
  599. mutable dynamic_frame_type* frame;
  600. };
  601. 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>
  602. 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
  603. {
  604. typedef
  605. vector23<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22>
  606. tuple_type;
  607. typedef
  608. dynamic<A0 , A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10 , A11 , A12 , A13 , A14 , A15 , A16 , A17 , A18 , A19 , A20 , A21 , A22>
  609. self_type;
  610. typedef
  611. dynamic_frame<self_type>
  612. dynamic_frame_type;
  613. dynamic()
  614. : frame(0) {}
  615. template <int N>
  616. static
  617. typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const
  618. init(self_type * scope)
  619. {
  620. return
  621. expression::
  622. dynamic_member<mpl::int_<N>, self_type *>::
  623. make(mpl::int_<N>(), scope);
  624. }
  625. 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;
  626. mutable dynamic_frame_type* frame;
  627. };
  628. 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>
  629. 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
  630. {
  631. typedef
  632. 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>
  633. tuple_type;
  634. typedef
  635. 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>
  636. self_type;
  637. typedef
  638. dynamic_frame<self_type>
  639. dynamic_frame_type;
  640. dynamic()
  641. : frame(0) {}
  642. template <int N>
  643. static
  644. typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const
  645. init(self_type * scope)
  646. {
  647. return
  648. expression::
  649. dynamic_member<mpl::int_<N>, self_type *>::
  650. make(mpl::int_<N>(), scope);
  651. }
  652. 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;
  653. mutable dynamic_frame_type* frame;
  654. };
  655. 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>
  656. 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
  657. {
  658. typedef
  659. 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>
  660. tuple_type;
  661. typedef
  662. 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>
  663. self_type;
  664. typedef
  665. dynamic_frame<self_type>
  666. dynamic_frame_type;
  667. dynamic()
  668. : frame(0) {}
  669. template <int N>
  670. static
  671. typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const
  672. init(self_type * scope)
  673. {
  674. return
  675. expression::
  676. dynamic_member<mpl::int_<N>, self_type *>::
  677. make(mpl::int_<N>(), scope);
  678. }
  679. 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;
  680. mutable dynamic_frame_type* frame;
  681. };
  682. 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>
  683. 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
  684. {
  685. typedef
  686. 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>
  687. tuple_type;
  688. typedef
  689. 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>
  690. self_type;
  691. typedef
  692. dynamic_frame<self_type>
  693. dynamic_frame_type;
  694. dynamic()
  695. : frame(0) {}
  696. template <int N>
  697. static
  698. typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const
  699. init(self_type * scope)
  700. {
  701. return
  702. expression::
  703. dynamic_member<mpl::int_<N>, self_type *>::
  704. make(mpl::int_<N>(), scope);
  705. }
  706. 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;
  707. mutable dynamic_frame_type* frame;
  708. };
  709. 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>
  710. 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
  711. {
  712. typedef
  713. 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>
  714. tuple_type;
  715. typedef
  716. 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>
  717. self_type;
  718. typedef
  719. dynamic_frame<self_type>
  720. dynamic_frame_type;
  721. dynamic()
  722. : frame(0) {}
  723. template <int N>
  724. static
  725. typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const
  726. init(self_type * scope)
  727. {
  728. return
  729. expression::
  730. dynamic_member<mpl::int_<N>, self_type *>::
  731. make(mpl::int_<N>(), scope);
  732. }
  733. 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;
  734. mutable dynamic_frame_type* frame;
  735. };
  736. 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>
  737. 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
  738. {
  739. typedef
  740. 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>
  741. tuple_type;
  742. typedef
  743. 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>
  744. self_type;
  745. typedef
  746. dynamic_frame<self_type>
  747. dynamic_frame_type;
  748. dynamic()
  749. : frame(0) {}
  750. template <int N>
  751. static
  752. typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const
  753. init(self_type * scope)
  754. {
  755. return
  756. expression::
  757. dynamic_member<mpl::int_<N>, self_type *>::
  758. make(mpl::int_<N>(), scope);
  759. }
  760. 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;
  761. mutable dynamic_frame_type* frame;
  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 , typename A23 , typename A24 , typename A25 , typename A26 , typename A27 , typename A28>
  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 , A23 , A24 , A25 , A26 , A27 , A28> : noncopyable
  765. {
  766. typedef
  767. 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>
  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 , A23 , A24 , A25 , A26 , A27 , A28>
  771. self_type;
  772. typedef
  773. dynamic_frame<self_type>
  774. dynamic_frame_type;
  775. dynamic()
  776. : frame(0) {}
  777. template <int N>
  778. static
  779. typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const
  780. 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; 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;
  788. mutable dynamic_frame_type* frame;
  789. };
  790. 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>
  791. 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
  792. {
  793. typedef
  794. 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>
  795. tuple_type;
  796. typedef
  797. 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>
  798. self_type;
  799. typedef
  800. dynamic_frame<self_type>
  801. dynamic_frame_type;
  802. dynamic()
  803. : frame(0) {}
  804. template <int N>
  805. static
  806. typename expression::dynamic_member<mpl::int_<N>, self_type *>::type const
  807. init(self_type * scope)
  808. {
  809. return
  810. expression::
  811. dynamic_member<mpl::int_<N>, self_type *>::
  812. make(mpl::int_<N>(), scope);
  813. }
  814. 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;
  815. mutable dynamic_frame_type* frame;
  816. };