BVB Source Codes

mars Show vector30.hpp Source code

Return Download mars: download vector30.hpp Source code - Download mars Source code - Type:.hpp
  1.  
  2. // Copyright Aleksey Gurtovoy 2000-2004
  3. //
  4. // Distributed under the Boost Software License, Version 1.0.
  5. // (See accompanying file LICENSE_1_0.txt or copy at
  6. // http://www.boost.org/LICENSE_1_0.txt)
  7. //
  8.  
  9. // Preprocessed version of "boost/mpl/vector/vector30.hpp" header
  10. // -- DO NOT modify by hand!
  11.  
  12. namespace mars_boost {} namespace boost = mars_boost; namespace mars_boost { namespace mpl {
  13.  
  14. template<
  15.       typename T0, typename T1, typename T2, typename T3, typename T4
  16.     , typename T5, typename T6, typename T7, typename T8, typename T9
  17.     , typename T10, typename T11, typename T12, typename T13, typename T14
  18.     , typename T15, typename T16, typename T17, typename T18, typename T19
  19.     , typename T20
  20.     >
  21. struct vector21
  22. {
  23.     typedef aux::vector_tag<21> tag;
  24.     typedef vector21 type;
  25.     typedef T0 item0;
  26.     typedef T1 item1;
  27.     typedef T2 item2;
  28.     typedef T3 item3;
  29.     typedef T4 item4;
  30.     typedef T5 item5;
  31.     typedef T6 item6;
  32.     typedef T7 item7;
  33.     typedef T8 item8;
  34.     typedef T9 item9;
  35.     typedef T10 item10;
  36.     typedef T11 item11;
  37.     typedef T12 item12;
  38.     typedef T13 item13;
  39.     typedef T14 item14;
  40.     typedef T15 item15;
  41.     typedef T16 item16;
  42.     typedef T17 item17;
  43.     typedef T18 item18;
  44.     typedef T19 item19;
  45.     typedef T20 item20;
  46.    
  47.  
  48.     typedef void_ item21;
  49.     typedef T20 back;
  50.     typedef v_iter< type,0 > begin;
  51.     typedef v_iter< type,21 > end;
  52. };
  53.  
  54. template<>
  55. struct push_front_impl< aux::vector_tag<20> >
  56. {
  57.     template< typename Vector, typename T > struct apply
  58.     {
  59.         typedef vector21<
  60.               T
  61.               ,
  62.               typename Vector::item0, typename Vector::item1
  63.             , typename Vector::item2, typename Vector::item3
  64.             , typename Vector::item4, typename Vector::item5
  65.             , typename Vector::item6, typename Vector::item7
  66.             , typename Vector::item8, typename Vector::item9
  67.             , typename Vector::item10, typename Vector::item11
  68.             , typename Vector::item12, typename Vector::item13
  69.             , typename Vector::item14, typename Vector::item15
  70.             , typename Vector::item16, typename Vector::item17
  71.             , typename Vector::item18, typename Vector::item19
  72.             > type;
  73.     };
  74. };
  75.  
  76. template<>
  77. struct pop_front_impl< aux::vector_tag<21> >
  78. {
  79.     template< typename Vector > struct apply
  80.     {
  81.         typedef vector20<
  82.               typename Vector::item1, typename Vector::item2
  83.             , typename Vector::item3, typename Vector::item4
  84.             , typename Vector::item5, typename Vector::item6
  85.             , typename Vector::item7, typename Vector::item8
  86.             , typename Vector::item9, typename Vector::item10
  87.             , typename Vector::item11, typename Vector::item12
  88.             , typename Vector::item13, typename Vector::item14
  89.             , typename Vector::item15, typename Vector::item16
  90.             , typename Vector::item17, typename Vector::item18
  91.             , typename Vector::item19, typename Vector::item20
  92.             > type;
  93.     };
  94. };
  95.  
  96. template<>
  97. struct push_back_impl< aux::vector_tag<20> >
  98. {
  99.     template< typename Vector, typename T > struct apply
  100.     {
  101.         typedef vector21<
  102.               typename Vector::item0, typename Vector::item1
  103.             , typename Vector::item2, typename Vector::item3
  104.             , typename Vector::item4, typename Vector::item5
  105.             , typename Vector::item6, typename Vector::item7
  106.             , typename Vector::item8, typename Vector::item9
  107.             , typename Vector::item10, typename Vector::item11
  108.             , typename Vector::item12, typename Vector::item13
  109.             , typename Vector::item14, typename Vector::item15
  110.             , typename Vector::item16, typename Vector::item17
  111.             , typename Vector::item18, typename Vector::item19
  112.               ,
  113.               T
  114.             > type;
  115.     };
  116. };
  117.  
  118. template<>
  119. struct pop_back_impl< aux::vector_tag<21> >
  120. {
  121.     template< typename Vector > struct apply
  122.     {
  123.         typedef vector20<
  124.               typename Vector::item0, typename Vector::item1
  125.             , typename Vector::item2, typename Vector::item3
  126.             , typename Vector::item4, typename Vector::item5
  127.             , typename Vector::item6, typename Vector::item7
  128.             , typename Vector::item8, typename Vector::item9
  129.             , typename Vector::item10, typename Vector::item11
  130.             , typename Vector::item12, typename Vector::item13
  131.             , typename Vector::item14, typename Vector::item15
  132.             , typename Vector::item16, typename Vector::item17
  133.             , typename Vector::item18, typename Vector::item19
  134.             > type;
  135.     };
  136. };
  137.  
  138. namespace aux {
  139. template<> struct v_at_impl<21>
  140. {
  141.     template< typename V_ > struct result_
  142.     {
  143.         typedef typename V_::item21 type;
  144.     };
  145. };
  146.  
  147. }
  148.  
  149. template<>
  150. struct at_impl< aux::vector_tag<21> >
  151. {
  152.     template< typename V_, typename N > struct apply
  153.     {
  154.         typedef typename aux::v_at_impl<BOOST_MPL_AUX_VALUE_WKND(N)::value>
  155.             ::template result_<V_>::type type;
  156.     };
  157. };
  158.  
  159. template<>
  160. struct front_impl< aux::vector_tag<21> >
  161. {
  162.     template< typename Vector > struct apply
  163.     {
  164.         typedef typename Vector::item0 type;
  165.     };
  166. };
  167.  
  168. template<>
  169. struct back_impl< aux::vector_tag<21> >
  170. {
  171.     template< typename Vector > struct apply
  172.     {
  173.         typedef typename Vector::back type;
  174.     };
  175. };
  176.  
  177. template<>
  178. struct empty_impl< aux::vector_tag<21> >
  179. {
  180.     template< typename Vector > struct apply
  181.         : false_
  182.     {
  183.     };
  184. };
  185.  
  186. template<>
  187. struct size_impl< aux::vector_tag<21> >
  188. {
  189.     template< typename Vector > struct apply
  190.         : long_<21>
  191.     {
  192.     };
  193. };
  194.  
  195. template<>
  196. struct O1_size_impl< aux::vector_tag<21> >
  197.     : size_impl< aux::vector_tag<21> >
  198. {
  199. };
  200.  
  201. template<>
  202. struct clear_impl< aux::vector_tag<21> >
  203. {
  204.     template< typename Vector > struct apply
  205.     {
  206.         typedef vector0<> type;
  207.     };
  208. };
  209.  
  210. template<
  211.       typename T0, typename T1, typename T2, typename T3, typename T4
  212.     , typename T5, typename T6, typename T7, typename T8, typename T9
  213.     , typename T10, typename T11, typename T12, typename T13, typename T14
  214.     , typename T15, typename T16, typename T17, typename T18, typename T19
  215.     , typename T20, typename T21
  216.     >
  217. struct vector22
  218. {
  219.     typedef aux::vector_tag<22> tag;
  220.     typedef vector22 type;
  221.     typedef T0 item0;
  222.     typedef T1 item1;
  223.     typedef T2 item2;
  224.     typedef T3 item3;
  225.     typedef T4 item4;
  226.     typedef T5 item5;
  227.     typedef T6 item6;
  228.     typedef T7 item7;
  229.     typedef T8 item8;
  230.     typedef T9 item9;
  231.     typedef T10 item10;
  232.     typedef T11 item11;
  233.     typedef T12 item12;
  234.     typedef T13 item13;
  235.     typedef T14 item14;
  236.     typedef T15 item15;
  237.     typedef T16 item16;
  238.     typedef T17 item17;
  239.     typedef T18 item18;
  240.     typedef T19 item19;
  241.     typedef T20 item20;
  242.     typedef T21 item21;
  243.    
  244.  
  245.     typedef void_ item22;
  246.     typedef T21 back;
  247.     typedef v_iter< type,0 > begin;
  248.     typedef v_iter< type,22 > end;
  249. };
  250.  
  251. template<>
  252. struct push_front_impl< aux::vector_tag<21> >
  253. {
  254.     template< typename Vector, typename T > struct apply
  255.     {
  256.         typedef vector22<
  257.               T
  258.               ,
  259.               typename Vector::item0, typename Vector::item1
  260.             , typename Vector::item2, typename Vector::item3
  261.             , typename Vector::item4, typename Vector::item5
  262.             , typename Vector::item6, typename Vector::item7
  263.             , typename Vector::item8, typename Vector::item9
  264.             , typename Vector::item10, typename Vector::item11
  265.             , typename Vector::item12, typename Vector::item13
  266.             , typename Vector::item14, typename Vector::item15
  267.             , typename Vector::item16, typename Vector::item17
  268.             , typename Vector::item18, typename Vector::item19
  269.             , typename Vector::item20
  270.             > type;
  271.     };
  272. };
  273.  
  274. template<>
  275. struct pop_front_impl< aux::vector_tag<22> >
  276. {
  277.     template< typename Vector > struct apply
  278.     {
  279.         typedef vector21<
  280.               typename Vector::item1, typename Vector::item2
  281.             , typename Vector::item3, typename Vector::item4
  282.             , typename Vector::item5, typename Vector::item6
  283.             , typename Vector::item7, typename Vector::item8
  284.             , typename Vector::item9, typename Vector::item10
  285.             , typename Vector::item11, typename Vector::item12
  286.             , typename Vector::item13, typename Vector::item14
  287.             , typename Vector::item15, typename Vector::item16
  288.             , typename Vector::item17, typename Vector::item18
  289.             , typename Vector::item19, typename Vector::item20
  290.             , typename Vector::item21
  291.             > type;
  292.     };
  293. };
  294.  
  295. template<>
  296. struct push_back_impl< aux::vector_tag<21> >
  297. {
  298.     template< typename Vector, typename T > struct apply
  299.     {
  300.         typedef vector22<
  301.               typename Vector::item0, typename Vector::item1
  302.             , typename Vector::item2, typename Vector::item3
  303.             , typename Vector::item4, typename Vector::item5
  304.             , typename Vector::item6, typename Vector::item7
  305.             , typename Vector::item8, typename Vector::item9
  306.             , typename Vector::item10, typename Vector::item11
  307.             , typename Vector::item12, typename Vector::item13
  308.             , typename Vector::item14, typename Vector::item15
  309.             , typename Vector::item16, typename Vector::item17
  310.             , typename Vector::item18, typename Vector::item19
  311.             , typename Vector::item20
  312.               ,
  313.               T
  314.             > type;
  315.     };
  316. };
  317.  
  318. template<>
  319. struct pop_back_impl< aux::vector_tag<22> >
  320. {
  321.     template< typename Vector > struct apply
  322.     {
  323.         typedef vector21<
  324.               typename Vector::item0, typename Vector::item1
  325.             , typename Vector::item2, typename Vector::item3
  326.             , typename Vector::item4, typename Vector::item5
  327.             , typename Vector::item6, typename Vector::item7
  328.             , typename Vector::item8, typename Vector::item9
  329.             , typename Vector::item10, typename Vector::item11
  330.             , typename Vector::item12, typename Vector::item13
  331.             , typename Vector::item14, typename Vector::item15
  332.             , typename Vector::item16, typename Vector::item17
  333.             , typename Vector::item18, typename Vector::item19
  334.             , typename Vector::item20
  335.             > type;
  336.     };
  337. };
  338.  
  339. namespace aux {
  340. template<> struct v_at_impl<22>
  341. {
  342.     template< typename V_ > struct result_
  343.     {
  344.         typedef typename V_::item22 type;
  345.     };
  346. };
  347.  
  348. }
  349.  
  350. template<>
  351. struct at_impl< aux::vector_tag<22> >
  352. {
  353.     template< typename V_, typename N > struct apply
  354.     {
  355.         typedef typename aux::v_at_impl<BOOST_MPL_AUX_VALUE_WKND(N)::value>
  356.             ::template result_<V_>::type type;
  357.     };
  358. };
  359.  
  360. template<>
  361. struct front_impl< aux::vector_tag<22> >
  362. {
  363.     template< typename Vector > struct apply
  364.     {
  365.         typedef typename Vector::item0 type;
  366.     };
  367. };
  368.  
  369. template<>
  370. struct back_impl< aux::vector_tag<22> >
  371. {
  372.     template< typename Vector > struct apply
  373.     {
  374.         typedef typename Vector::back type;
  375.     };
  376. };
  377.  
  378. template<>
  379. struct empty_impl< aux::vector_tag<22> >
  380. {
  381.     template< typename Vector > struct apply
  382.         : false_
  383.     {
  384.     };
  385. };
  386.  
  387. template<>
  388. struct size_impl< aux::vector_tag<22> >
  389. {
  390.     template< typename Vector > struct apply
  391.         : long_<22>
  392.     {
  393.     };
  394. };
  395.  
  396. template<>
  397. struct O1_size_impl< aux::vector_tag<22> >
  398.     : size_impl< aux::vector_tag<22> >
  399. {
  400. };
  401.  
  402. template<>
  403. struct clear_impl< aux::vector_tag<22> >
  404. {
  405.     template< typename Vector > struct apply
  406.     {
  407.         typedef vector0<> type;
  408.     };
  409. };
  410.  
  411. template<
  412.       typename T0, typename T1, typename T2, typename T3, typename T4
  413.     , typename T5, typename T6, typename T7, typename T8, typename T9
  414.     , typename T10, typename T11, typename T12, typename T13, typename T14
  415.     , typename T15, typename T16, typename T17, typename T18, typename T19
  416.     , typename T20, typename T21, typename T22
  417.     >
  418. struct vector23
  419. {
  420.     typedef aux::vector_tag<23> tag;
  421.     typedef vector23 type;
  422.     typedef T0 item0;
  423.     typedef T1 item1;
  424.     typedef T2 item2;
  425.     typedef T3 item3;
  426.     typedef T4 item4;
  427.     typedef T5 item5;
  428.     typedef T6 item6;
  429.     typedef T7 item7;
  430.     typedef T8 item8;
  431.     typedef T9 item9;
  432.     typedef T10 item10;
  433.     typedef T11 item11;
  434.     typedef T12 item12;
  435.     typedef T13 item13;
  436.     typedef T14 item14;
  437.     typedef T15 item15;
  438.     typedef T16 item16;
  439.     typedef T17 item17;
  440.     typedef T18 item18;
  441.     typedef T19 item19;
  442.     typedef T20 item20;
  443.     typedef T21 item21;
  444.     typedef T22 item22;
  445.    
  446.  
  447.     typedef void_ item23;
  448.     typedef T22 back;
  449.     typedef v_iter< type,0 > begin;
  450.     typedef v_iter< type,23 > end;
  451. };
  452.  
  453. template<>
  454. struct push_front_impl< aux::vector_tag<22> >
  455. {
  456.     template< typename Vector, typename T > struct apply
  457.     {
  458.         typedef vector23<
  459.               T
  460.               ,
  461.               typename Vector::item0, typename Vector::item1
  462.             , typename Vector::item2, typename Vector::item3
  463.             , typename Vector::item4, typename Vector::item5
  464.             , typename Vector::item6, typename Vector::item7
  465.             , typename Vector::item8, typename Vector::item9
  466.             , typename Vector::item10, typename Vector::item11
  467.             , typename Vector::item12, typename Vector::item13
  468.             , typename Vector::item14, typename Vector::item15
  469.             , typename Vector::item16, typename Vector::item17
  470.             , typename Vector::item18, typename Vector::item19
  471.             , typename Vector::item20, typename Vector::item21
  472.             > type;
  473.     };
  474. };
  475.  
  476. template<>
  477. struct pop_front_impl< aux::vector_tag<23> >
  478. {
  479.     template< typename Vector > struct apply
  480.     {
  481.         typedef vector22<
  482.               typename Vector::item1, typename Vector::item2
  483.             , typename Vector::item3, typename Vector::item4
  484.             , typename Vector::item5, typename Vector::item6
  485.             , typename Vector::item7, typename Vector::item8
  486.             , typename Vector::item9, typename Vector::item10
  487.             , typename Vector::item11, typename Vector::item12
  488.             , typename Vector::item13, typename Vector::item14
  489.             , typename Vector::item15, typename Vector::item16
  490.             , typename Vector::item17, typename Vector::item18
  491.             , typename Vector::item19, typename Vector::item20
  492.             , typename Vector::item21, typename Vector::item22
  493.             > type;
  494.     };
  495. };
  496.  
  497. template<>
  498. struct push_back_impl< aux::vector_tag<22> >
  499. {
  500.     template< typename Vector, typename T > struct apply
  501.     {
  502.         typedef vector23<
  503.               typename Vector::item0, typename Vector::item1
  504.             , typename Vector::item2, typename Vector::item3
  505.             , typename Vector::item4, typename Vector::item5
  506.             , typename Vector::item6, typename Vector::item7
  507.             , typename Vector::item8, typename Vector::item9
  508.             , typename Vector::item10, typename Vector::item11
  509.             , typename Vector::item12, typename Vector::item13
  510.             , typename Vector::item14, typename Vector::item15
  511.             , typename Vector::item16, typename Vector::item17
  512.             , typename Vector::item18, typename Vector::item19
  513.             , typename Vector::item20, typename Vector::item21
  514.               ,
  515.               T
  516.             > type;
  517.     };
  518. };
  519.  
  520. template<>
  521. struct pop_back_impl< aux::vector_tag<23> >
  522. {
  523.     template< typename Vector > struct apply
  524.     {
  525.         typedef vector22<
  526.               typename Vector::item0, typename Vector::item1
  527.             , typename Vector::item2, typename Vector::item3
  528.             , typename Vector::item4, typename Vector::item5
  529.             , typename Vector::item6, typename Vector::item7
  530.             , typename Vector::item8, typename Vector::item9
  531.             , typename Vector::item10, typename Vector::item11
  532.             , typename Vector::item12, typename Vector::item13
  533.             , typename Vector::item14, typename Vector::item15
  534.             , typename Vector::item16, typename Vector::item17
  535.             , typename Vector::item18, typename Vector::item19
  536.             , typename Vector::item20, typename Vector::item21
  537.             > type;
  538.     };
  539. };
  540.  
  541. namespace aux {
  542. template<> struct v_at_impl<23>
  543. {
  544.     template< typename V_ > struct result_
  545.     {
  546.         typedef typename V_::item23 type;
  547.     };
  548. };
  549.  
  550. }
  551.  
  552. template<>
  553. struct at_impl< aux::vector_tag<23> >
  554. {
  555.     template< typename V_, typename N > struct apply
  556.     {
  557.         typedef typename aux::v_at_impl<BOOST_MPL_AUX_VALUE_WKND(N)::value>
  558.             ::template result_<V_>::type type;
  559.     };
  560. };
  561.  
  562. template<>
  563. struct front_impl< aux::vector_tag<23> >
  564. {
  565.     template< typename Vector > struct apply
  566.     {
  567.         typedef typename Vector::item0 type;
  568.     };
  569. };
  570.  
  571. template<>
  572. struct back_impl< aux::vector_tag<23> >
  573. {
  574.     template< typename Vector > struct apply
  575.     {
  576.         typedef typename Vector::back type;
  577.     };
  578. };
  579.  
  580. template<>
  581. struct empty_impl< aux::vector_tag<23> >
  582. {
  583.     template< typename Vector > struct apply
  584.         : false_
  585.     {
  586.     };
  587. };
  588.  
  589. template<>
  590. struct size_impl< aux::vector_tag<23> >
  591. {
  592.     template< typename Vector > struct apply
  593.         : long_<23>
  594.     {
  595.     };
  596. };
  597.  
  598. template<>
  599. struct O1_size_impl< aux::vector_tag<23> >
  600.     : size_impl< aux::vector_tag<23> >
  601. {
  602. };
  603.  
  604. template<>
  605. struct clear_impl< aux::vector_tag<23> >
  606. {
  607.     template< typename Vector > struct apply
  608.     {
  609.         typedef vector0<> type;
  610.     };
  611. };
  612.  
  613. template<
  614.       typename T0, typename T1, typename T2, typename T3, typename T4
  615.     , typename T5, typename T6, typename T7, typename T8, typename T9
  616.     , typename T10, typename T11, typename T12, typename T13, typename T14
  617.     , typename T15, typename T16, typename T17, typename T18, typename T19
  618.     , typename T20, typename T21, typename T22, typename T23
  619.     >
  620. struct vector24
  621. {
  622.     typedef aux::vector_tag<24> tag;
  623.     typedef vector24 type;
  624.     typedef T0 item0;
  625.     typedef T1 item1;
  626.     typedef T2 item2;
  627.     typedef T3 item3;
  628.     typedef T4 item4;
  629.     typedef T5 item5;
  630.     typedef T6 item6;
  631.     typedef T7 item7;
  632.     typedef T8 item8;
  633.     typedef T9 item9;
  634.     typedef T10 item10;
  635.     typedef T11 item11;
  636.     typedef T12 item12;
  637.     typedef T13 item13;
  638.     typedef T14 item14;
  639.     typedef T15 item15;
  640.     typedef T16 item16;
  641.     typedef T17 item17;
  642.     typedef T18 item18;
  643.     typedef T19 item19;
  644.     typedef T20 item20;
  645.     typedef T21 item21;
  646.     typedef T22 item22;
  647.     typedef T23 item23;
  648.    
  649.  
  650.     typedef void_ item24;
  651.     typedef T23 back;
  652.     typedef v_iter< type,0 > begin;
  653.     typedef v_iter< type,24 > end;
  654. };
  655.  
  656. template<>
  657. struct push_front_impl< aux::vector_tag<23> >
  658. {
  659.     template< typename Vector, typename T > struct apply
  660.     {
  661.         typedef vector24<
  662.               T
  663.               ,
  664.               typename Vector::item0, typename Vector::item1
  665.             , typename Vector::item2, typename Vector::item3
  666.             , typename Vector::item4, typename Vector::item5
  667.             , typename Vector::item6, typename Vector::item7
  668.             , typename Vector::item8, typename Vector::item9
  669.             , typename Vector::item10, typename Vector::item11
  670.             , typename Vector::item12, typename Vector::item13
  671.             , typename Vector::item14, typename Vector::item15
  672.             , typename Vector::item16, typename Vector::item17
  673.             , typename Vector::item18, typename Vector::item19
  674.             , typename Vector::item20, typename Vector::item21
  675.             , typename Vector::item22
  676.             > type;
  677.     };
  678. };
  679.  
  680. template<>
  681. struct pop_front_impl< aux::vector_tag<24> >
  682. {
  683.     template< typename Vector > struct apply
  684.     {
  685.         typedef vector23<
  686.               typename Vector::item1, typename Vector::item2
  687.             , typename Vector::item3, typename Vector::item4
  688.             , typename Vector::item5, typename Vector::item6
  689.             , typename Vector::item7, typename Vector::item8
  690.             , typename Vector::item9, typename Vector::item10
  691.             , typename Vector::item11, typename Vector::item12
  692.             , typename Vector::item13, typename Vector::item14
  693.             , typename Vector::item15, typename Vector::item16
  694.             , typename Vector::item17, typename Vector::item18
  695.             , typename Vector::item19, typename Vector::item20
  696.             , typename Vector::item21, typename Vector::item22
  697.             , typename Vector::item23
  698.             > type;
  699.     };
  700. };
  701.  
  702. template<>
  703. struct push_back_impl< aux::vector_tag<23> >
  704. {
  705.     template< typename Vector, typename T > struct apply
  706.     {
  707.         typedef vector24<
  708.               typename Vector::item0, typename Vector::item1
  709.             , typename Vector::item2, typename Vector::item3
  710.             , typename Vector::item4, typename Vector::item5
  711.             , typename Vector::item6, typename Vector::item7
  712.             , typename Vector::item8, typename Vector::item9
  713.             , typename Vector::item10, typename Vector::item11
  714.             , typename Vector::item12, typename Vector::item13
  715.             , typename Vector::item14, typename Vector::item15
  716.             , typename Vector::item16, typename Vector::item17
  717.             , typename Vector::item18, typename Vector::item19
  718.             , typename Vector::item20, typename Vector::item21
  719.             , typename Vector::item22
  720.               ,
  721.               T
  722.             > type;
  723.     };
  724. };
  725.  
  726. template<>
  727. struct pop_back_impl< aux::vector_tag<24> >
  728. {
  729.     template< typename Vector > struct apply
  730.     {
  731.         typedef vector23<
  732.               typename Vector::item0, typename Vector::item1
  733.             , typename Vector::item2, typename Vector::item3
  734.             , typename Vector::item4, typename Vector::item5
  735.             , typename Vector::item6, typename Vector::item7
  736.             , typename Vector::item8, typename Vector::item9
  737.             , typename Vector::item10, typename Vector::item11
  738.             , typename Vector::item12, typename Vector::item13
  739.             , typename Vector::item14, typename Vector::item15
  740.             , typename Vector::item16, typename Vector::item17
  741.             , typename Vector::item18, typename Vector::item19
  742.             , typename Vector::item20, typename Vector::item21
  743.             , typename Vector::item22
  744.             > type;
  745.     };
  746. };
  747.  
  748. namespace aux {
  749. template<> struct v_at_impl<24>
  750. {
  751.     template< typename V_ > struct result_
  752.     {
  753.         typedef typename V_::item24 type;
  754.     };
  755. };
  756.  
  757. }
  758.  
  759. template<>
  760. struct at_impl< aux::vector_tag<24> >
  761. {
  762.     template< typename V_, typename N > struct apply
  763.     {
  764.         typedef typename aux::v_at_impl<BOOST_MPL_AUX_VALUE_WKND(N)::value>
  765.             ::template result_<V_>::type type;
  766.     };
  767. };
  768.  
  769. template<>
  770. struct front_impl< aux::vector_tag<24> >
  771. {
  772.     template< typename Vector > struct apply
  773.     {
  774.         typedef typename Vector::item0 type;
  775.     };
  776. };
  777.  
  778. template<>
  779. struct back_impl< aux::vector_tag<24> >
  780. {
  781.     template< typename Vector > struct apply
  782.     {
  783.         typedef typename Vector::back type;
  784.     };
  785. };
  786.  
  787. template<>
  788. struct empty_impl< aux::vector_tag<24> >
  789. {
  790.     template< typename Vector > struct apply
  791.         : false_
  792.     {
  793.     };
  794. };
  795.  
  796. template<>
  797. struct size_impl< aux::vector_tag<24> >
  798. {
  799.     template< typename Vector > struct apply
  800.         : long_<24>
  801.     {
  802.     };
  803. };
  804.  
  805. template<>
  806. struct O1_size_impl< aux::vector_tag<24> >
  807.     : size_impl< aux::vector_tag<24> >
  808. {
  809. };
  810.  
  811. template<>
  812. struct clear_impl< aux::vector_tag<24> >
  813. {
  814.     template< typename Vector > struct apply
  815.     {
  816.         typedef vector0<> type;
  817.     };
  818. };
  819.  
  820. template<
  821.       typename T0, typename T1, typename T2, typename T3, typename T4
  822.     , typename T5, typename T6, typename T7, typename T8, typename T9
  823.     , typename T10, typename T11, typename T12, typename T13, typename T14
  824.     , typename T15, typename T16, typename T17, typename T18, typename T19
  825.     , typename T20, typename T21, typename T22, typename T23, typename T24
  826.     >
  827. struct vector25
  828. {
  829.     typedef aux::vector_tag<25> tag;
  830.     typedef vector25 type;
  831.     typedef T0 item0;
  832.     typedef T1 item1;
  833.     typedef T2 item2;
  834.     typedef T3 item3;
  835.     typedef T4 item4;
  836.     typedef T5 item5;
  837.     typedef T6 item6;
  838.     typedef T7 item7;
  839.     typedef T8 item8;
  840.     typedef T9 item9;
  841.     typedef T10 item10;
  842.     typedef T11 item11;
  843.     typedef T12 item12;
  844.     typedef T13 item13;
  845.     typedef T14 item14;
  846.     typedef T15 item15;
  847.     typedef T16 item16;
  848.     typedef T17 item17;
  849.     typedef T18 item18;
  850.     typedef T19 item19;
  851.     typedef T20 item20;
  852.     typedef T21 item21;
  853.     typedef T22 item22;
  854.     typedef T23 item23;
  855.     typedef T24 item24;
  856.    
  857.  
  858.     typedef void_ item25;
  859.     typedef T24 back;
  860.     typedef v_iter< type,0 > begin;
  861.     typedef v_iter< type,25 > end;
  862. };
  863.  
  864. template<>
  865. struct push_front_impl< aux::vector_tag<24> >
  866. {
  867.     template< typename Vector, typename T > struct apply
  868.     {
  869.         typedef vector25<
  870.               T
  871.               ,
  872.               typename Vector::item0, typename Vector::item1
  873.             , typename Vector::item2, typename Vector::item3
  874.             , typename Vector::item4, typename Vector::item5
  875.             , typename Vector::item6, typename Vector::item7
  876.             , typename Vector::item8, typename Vector::item9
  877.             , typename Vector::item10, typename Vector::item11
  878.             , typename Vector::item12, typename Vector::item13
  879.             , typename Vector::item14, typename Vector::item15
  880.             , typename Vector::item16, typename Vector::item17
  881.             , typename Vector::item18, typename Vector::item19
  882.             , typename Vector::item20, typename Vector::item21
  883.             , typename Vector::item22, typename Vector::item23
  884.             > type;
  885.     };
  886. };
  887.  
  888. template<>
  889. struct pop_front_impl< aux::vector_tag<25> >
  890. {
  891.     template< typename Vector > struct apply
  892.     {
  893.         typedef vector24<
  894.               typename Vector::item1, typename Vector::item2
  895.             , typename Vector::item3, typename Vector::item4
  896.             , typename Vector::item5, typename Vector::item6
  897.             , typename Vector::item7, typename Vector::item8
  898.             , typename Vector::item9, typename Vector::item10
  899.             , typename Vector::item11, typename Vector::item12
  900.             , typename Vector::item13, typename Vector::item14
  901.             , typename Vector::item15, typename Vector::item16
  902.             , typename Vector::item17, typename Vector::item18
  903.             , typename Vector::item19, typename Vector::item20
  904.             , typename Vector::item21, typename Vector::item22
  905.             , typename Vector::item23, typename Vector::item24
  906.             > type;
  907.     };
  908. };
  909.  
  910. template<>
  911. struct push_back_impl< aux::vector_tag<24> >
  912. {
  913.     template< typename Vector, typename T > struct apply
  914.     {
  915.         typedef vector25<
  916.               typename Vector::item0, typename Vector::item1
  917.             , typename Vector::item2, typename Vector::item3
  918.             , typename Vector::item4, typename Vector::item5
  919.             , typename Vector::item6, typename Vector::item7
  920.             , typename Vector::item8, typename Vector::item9
  921.             , typename Vector::item10, typename Vector::item11
  922.             , typename Vector::item12, typename Vector::item13
  923.             , typename Vector::item14, typename Vector::item15
  924.             , typename Vector::item16, typename Vector::item17
  925.             , typename Vector::item18, typename Vector::item19
  926.             , typename Vector::item20, typename Vector::item21
  927.             , typename Vector::item22, typename Vector::item23
  928.               ,
  929.               T
  930.             > type;
  931.     };
  932. };
  933.  
  934. template<>
  935. struct pop_back_impl< aux::vector_tag<25> >
  936. {
  937.     template< typename Vector > struct apply
  938.     {
  939.         typedef vector24<
  940.               typename Vector::item0, typename Vector::item1
  941.             , typename Vector::item2, typename Vector::item3
  942.             , typename Vector::item4, typename Vector::item5
  943.             , typename Vector::item6, typename Vector::item7
  944.             , typename Vector::item8, typename Vector::item9
  945.             , typename Vector::item10, typename Vector::item11
  946.             , typename Vector::item12, typename Vector::item13
  947.             , typename Vector::item14, typename Vector::item15
  948.             , typename Vector::item16, typename Vector::item17
  949.             , typename Vector::item18, typename Vector::item19
  950.             , typename Vector::item20, typename Vector::item21
  951.             , typename Vector::item22, typename Vector::item23
  952.             > type;
  953.     };
  954. };
  955.  
  956. namespace aux {
  957. template<> struct v_at_impl<25>
  958. {
  959.     template< typename V_ > struct result_
  960.     {
  961.         typedef typename V_::item25 type;
  962.     };
  963. };
  964.  
  965. }
  966.  
  967. template<>
  968. struct at_impl< aux::vector_tag<25> >
  969. {
  970.     template< typename V_, typename N > struct apply
  971.     {
  972.         typedef typename aux::v_at_impl<BOOST_MPL_AUX_VALUE_WKND(N)::value>
  973.             ::template result_<V_>::type type;
  974.     };
  975. };
  976.  
  977. template<>
  978. struct front_impl< aux::vector_tag<25> >
  979. {
  980.     template< typename Vector > struct apply
  981.     {
  982.         typedef typename Vector::item0 type;
  983.     };
  984. };
  985.  
  986. template<>
  987. struct back_impl< aux::vector_tag<25> >
  988. {
  989.     template< typename Vector > struct apply
  990.     {
  991.         typedef typename Vector::back type;
  992.     };
  993. };
  994.  
  995. template<>
  996. struct empty_impl< aux::vector_tag<25> >
  997. {
  998.     template< typename Vector > struct apply
  999.         : false_
  1000.     {
  1001.     };
  1002. };
  1003.  
  1004. template<>
  1005. struct size_impl< aux::vector_tag<25> >
  1006. {
  1007.     template< typename Vector > struct apply
  1008.         : long_<25>
  1009.     {
  1010.     };
  1011. };
  1012.  
  1013. template<>
  1014. struct O1_size_impl< aux::vector_tag<25> >
  1015.     : size_impl< aux::vector_tag<25> >
  1016. {
  1017. };
  1018.  
  1019. template<>
  1020. struct clear_impl< aux::vector_tag<25> >
  1021. {
  1022.     template< typename Vector > struct apply
  1023.     {
  1024.         typedef vector0<> type;
  1025.     };
  1026. };
  1027.  
  1028. template<
  1029.       typename T0, typename T1, typename T2, typename T3, typename T4
  1030.     , typename T5, typename T6, typename T7, typename T8, typename T9
  1031.     , typename T10, typename T11, typename T12, typename T13, typename T14
  1032.     , typename T15, typename T16, typename T17, typename T18, typename T19
  1033.     , typename T20, typename T21, typename T22, typename T23, typename T24
  1034.     , typename T25
  1035.     >
  1036. struct vector26
  1037. {
  1038.     typedef aux::vector_tag<26> tag;
  1039.     typedef vector26 type;
  1040.     typedef T0 item0;
  1041.     typedef T1 item1;
  1042.     typedef T2 item2;
  1043.     typedef T3 item3;
  1044.     typedef T4 item4;
  1045.     typedef T5 item5;
  1046.     typedef T6 item6;
  1047.     typedef T7 item7;
  1048.     typedef T8 item8;
  1049.     typedef T9 item9;
  1050.     typedef T10 item10;
  1051.     typedef T11 item11;
  1052.     typedef T12 item12;
  1053.     typedef T13 item13;
  1054.     typedef T14 item14;
  1055.     typedef T15 item15;
  1056.     typedef T16 item16;
  1057.     typedef T17 item17;
  1058.     typedef T18 item18;
  1059.     typedef T19 item19;
  1060.     typedef T20 item20;
  1061.     typedef T21 item21;
  1062.     typedef T22 item22;
  1063.     typedef T23 item23;
  1064.     typedef T24 item24;
  1065.     typedef T25 item25;
  1066.    
  1067.  
  1068.     typedef void_ item26;
  1069.     typedef T25 back;
  1070.     typedef v_iter< type,0 > begin;
  1071.     typedef v_iter< type,26 > end;
  1072. };
  1073.  
  1074. template<>
  1075. struct push_front_impl< aux::vector_tag<25> >
  1076. {
  1077.     template< typename Vector, typename T > struct apply
  1078.     {
  1079.         typedef vector26<
  1080.               T
  1081.               ,
  1082.               typename Vector::item0, typename Vector::item1
  1083.             , typename Vector::item2, typename Vector::item3
  1084.             , typename Vector::item4, typename Vector::item5
  1085.             , typename Vector::item6, typename Vector::item7
  1086.             , typename Vector::item8, typename Vector::item9
  1087.             , typename Vector::item10, typename Vector::item11
  1088.             , typename Vector::item12, typename Vector::item13
  1089.             , typename Vector::item14, typename Vector::item15
  1090.             , typename Vector::item16, typename Vector::item17
  1091.             , typename Vector::item18, typename Vector::item19
  1092.             , typename Vector::item20, typename Vector::item21
  1093.             , typename Vector::item22, typename Vector::item23
  1094.             , typename Vector::item24
  1095.             > type;
  1096.     };
  1097. };
  1098.  
  1099. template<>
  1100. struct pop_front_impl< aux::vector_tag<26> >
  1101. {
  1102.     template< typename Vector > struct apply
  1103.     {
  1104.         typedef vector25<
  1105.               typename Vector::item1, typename Vector::item2
  1106.             , typename Vector::item3, typename Vector::item4
  1107.             , typename Vector::item5, typename Vector::item6
  1108.             , typename Vector::item7, typename Vector::item8
  1109.             , typename Vector::item9, typename Vector::item10
  1110.             , typename Vector::item11, typename Vector::item12
  1111.             , typename Vector::item13, typename Vector::item14
  1112.             , typename Vector::item15, typename Vector::item16
  1113.             , typename Vector::item17, typename Vector::item18
  1114.             , typename Vector::item19, typename Vector::item20
  1115.             , typename Vector::item21, typename Vector::item22
  1116.             , typename Vector::item23, typename Vector::item24
  1117.             , typename Vector::item25
  1118.             > type;
  1119.     };
  1120. };
  1121.  
  1122. template<>
  1123. struct push_back_impl< aux::vector_tag<25> >
  1124. {
  1125.     template< typename Vector, typename T > struct apply
  1126.     {
  1127.         typedef vector26<
  1128.               typename Vector::item0, typename Vector::item1
  1129.             , typename Vector::item2, typename Vector::item3
  1130.             , typename Vector::item4, typename Vector::item5
  1131.             , typename Vector::item6, typename Vector::item7
  1132.             , typename Vector::item8, typename Vector::item9
  1133.             , typename Vector::item10, typename Vector::item11
  1134.             , typename Vector::item12, typename Vector::item13
  1135.             , typename Vector::item14, typename Vector::item15
  1136.             , typename Vector::item16, typename Vector::item17
  1137.             , typename Vector::item18, typename Vector::item19
  1138.             , typename Vector::item20, typename Vector::item21
  1139.             , typename Vector::item22, typename Vector::item23
  1140.             , typename Vector::item24
  1141.               ,
  1142.               T
  1143.             > type;
  1144.     };
  1145. };
  1146.  
  1147. template<>
  1148. struct pop_back_impl< aux::vector_tag<26> >
  1149. {
  1150.     template< typename Vector > struct apply
  1151.     {
  1152.         typedef vector25<
  1153.               typename Vector::item0, typename Vector::item1
  1154.             , typename Vector::item2, typename Vector::item3
  1155.             , typename Vector::item4, typename Vector::item5
  1156.             , typename Vector::item6, typename Vector::item7
  1157.             , typename Vector::item8, typename Vector::item9
  1158.             , typename Vector::item10, typename Vector::item11
  1159.             , typename Vector::item12, typename Vector::item13
  1160.             , typename Vector::item14, typename Vector::item15
  1161.             , typename Vector::item16, typename Vector::item17
  1162.             , typename Vector::item18, typename Vector::item19
  1163.             , typename Vector::item20, typename Vector::item21
  1164.             , typename Vector::item22, typename Vector::item23
  1165.             , typename Vector::item24
  1166.             > type;
  1167.     };
  1168. };
  1169.  
  1170. namespace aux {
  1171. template<> struct v_at_impl<26>
  1172. {
  1173.     template< typename V_ > struct result_
  1174.     {
  1175.         typedef typename V_::item26 type;
  1176.     };
  1177. };
  1178.  
  1179. }
  1180.  
  1181. template<>
  1182. struct at_impl< aux::vector_tag<26> >
  1183. {
  1184.     template< typename V_, typename N > struct apply
  1185.     {
  1186.         typedef typename aux::v_at_impl<BOOST_MPL_AUX_VALUE_WKND(N)::value>
  1187.             ::template result_<V_>::type type;
  1188.     };
  1189. };
  1190.  
  1191. template<>
  1192. struct front_impl< aux::vector_tag<26> >
  1193. {
  1194.     template< typename Vector > struct apply
  1195.     {
  1196.         typedef typename Vector::item0 type;
  1197.     };
  1198. };
  1199.  
  1200. template<>
  1201. struct back_impl< aux::vector_tag<26> >
  1202. {
  1203.     template< typename Vector > struct apply
  1204.     {
  1205.         typedef typename Vector::back type;
  1206.     };
  1207. };
  1208.  
  1209. template<>
  1210. struct empty_impl< aux::vector_tag<26> >
  1211. {
  1212.     template< typename Vector > struct apply
  1213.         : false_
  1214.     {
  1215.     };
  1216. };
  1217.  
  1218. template<>
  1219. struct size_impl< aux::vector_tag<26> >
  1220. {
  1221.     template< typename Vector > struct apply
  1222.         : long_<26>
  1223.     {
  1224.     };
  1225. };
  1226.  
  1227. template<>
  1228. struct O1_size_impl< aux::vector_tag<26> >
  1229.     : size_impl< aux::vector_tag<26> >
  1230. {
  1231. };
  1232.  
  1233. template<>
  1234. struct clear_impl< aux::vector_tag<26> >
  1235. {
  1236.     template< typename Vector > struct apply
  1237.     {
  1238.         typedef vector0<> type;
  1239.     };
  1240. };
  1241.  
  1242. template<
  1243.       typename T0, typename T1, typename T2, typename T3, typename T4
  1244.     , typename T5, typename T6, typename T7, typename T8, typename T9
  1245.     , typename T10, typename T11, typename T12, typename T13, typename T14
  1246.     , typename T15, typename T16, typename T17, typename T18, typename T19
  1247.     , typename T20, typename T21, typename T22, typename T23, typename T24
  1248.     , typename T25, typename T26
  1249.     >
  1250. struct vector27
  1251. {
  1252.     typedef aux::vector_tag<27> tag;
  1253.     typedef vector27 type;
  1254.     typedef T0 item0;
  1255.     typedef T1 item1;
  1256.     typedef T2 item2;
  1257.     typedef T3 item3;
  1258.     typedef T4 item4;
  1259.     typedef T5 item5;
  1260.     typedef T6 item6;
  1261.     typedef T7 item7;
  1262.     typedef T8 item8;
  1263.     typedef T9 item9;
  1264.     typedef T10 item10;
  1265.     typedef T11 item11;
  1266.     typedef T12 item12;
  1267.     typedef T13 item13;
  1268.     typedef T14 item14;
  1269.     typedef T15 item15;
  1270.     typedef T16 item16;
  1271.     typedef T17 item17;
  1272.     typedef T18 item18;
  1273.     typedef T19 item19;
  1274.     typedef T20 item20;
  1275.     typedef T21 item21;
  1276.     typedef T22 item22;
  1277.     typedef T23 item23;
  1278.     typedef T24 item24;
  1279.     typedef T25 item25;
  1280.     typedef T26 item26;
  1281.    
  1282.  
  1283.     typedef void_ item27;
  1284.     typedef T26 back;
  1285.     typedef v_iter< type,0 > begin;
  1286.     typedef v_iter< type,27 > end;
  1287. };
  1288.  
  1289. template<>
  1290. struct push_front_impl< aux::vector_tag<26> >
  1291. {
  1292.     template< typename Vector, typename T > struct apply
  1293.     {
  1294.         typedef vector27<
  1295.               T
  1296.               ,
  1297.               typename Vector::item0, typename Vector::item1
  1298.             , typename Vector::item2, typename Vector::item3
  1299.             , typename Vector::item4, typename Vector::item5
  1300.             , typename Vector::item6, typename Vector::item7
  1301.             , typename Vector::item8, typename Vector::item9
  1302.             , typename Vector::item10, typename Vector::item11
  1303.             , typename Vector::item12, typename Vector::item13
  1304.             , typename Vector::item14, typename Vector::item15
  1305.             , typename Vector::item16, typename Vector::item17
  1306.             , typename Vector::item18, typename Vector::item19
  1307.             , typename Vector::item20, typename Vector::item21
  1308.             , typename Vector::item22, typename Vector::item23
  1309.             , typename Vector::item24, typename Vector::item25
  1310.             > type;
  1311.     };
  1312. };
  1313.  
  1314. template<>
  1315. struct pop_front_impl< aux::vector_tag<27> >
  1316. {
  1317.     template< typename Vector > struct apply
  1318.     {
  1319.         typedef vector26<
  1320.               typename Vector::item1, typename Vector::item2
  1321.             , typename Vector::item3, typename Vector::item4
  1322.             , typename Vector::item5, typename Vector::item6
  1323.             , typename Vector::item7, typename Vector::item8
  1324.             , typename Vector::item9, typename Vector::item10
  1325.             , typename Vector::item11, typename Vector::item12
  1326.             , typename Vector::item13, typename Vector::item14
  1327.             , typename Vector::item15, typename Vector::item16
  1328.             , typename Vector::item17, typename Vector::item18
  1329.             , typename Vector::item19, typename Vector::item20
  1330.             , typename Vector::item21, typename Vector::item22
  1331.             , typename Vector::item23, typename Vector::item24
  1332.             , typename Vector::item25, typename Vector::item26
  1333.             > type;
  1334.     };
  1335. };
  1336.  
  1337. template<>
  1338. struct push_back_impl< aux::vector_tag<26> >
  1339. {
  1340.     template< typename Vector, typename T > struct apply
  1341.     {
  1342.         typedef vector27<
  1343.               typename Vector::item0, typename Vector::item1
  1344.             , typename Vector::item2, typename Vector::item3
  1345.             , typename Vector::item4, typename Vector::item5
  1346.             , typename Vector::item6, typename Vector::item7
  1347.             , typename Vector::item8, typename Vector::item9
  1348.             , typename Vector::item10, typename Vector::item11
  1349.             , typename Vector::item12, typename Vector::item13
  1350.             , typename Vector::item14, typename Vector::item15
  1351.             , typename Vector::item16, typename Vector::item17
  1352.             , typename Vector::item18, typename Vector::item19
  1353.             , typename Vector::item20, typename Vector::item21
  1354.             , typename Vector::item22, typename Vector::item23
  1355.             , typename Vector::item24, typename Vector::item25
  1356.               ,
  1357.               T
  1358.             > type;
  1359.     };
  1360. };
  1361.  
  1362. template<>
  1363. struct pop_back_impl< aux::vector_tag<27> >
  1364. {
  1365.     template< typename Vector > struct apply
  1366.     {
  1367.         typedef vector26<
  1368.               typename Vector::item0, typename Vector::item1
  1369.             , typename Vector::item2, typename Vector::item3
  1370.             , typename Vector::item4, typename Vector::item5
  1371.             , typename Vector::item6, typename Vector::item7
  1372.             , typename Vector::item8, typename Vector::item9
  1373.             , typename Vector::item10, typename Vector::item11
  1374.             , typename Vector::item12, typename Vector::item13
  1375.             , typename Vector::item14, typename Vector::item15
  1376.             , typename Vector::item16, typename Vector::item17
  1377.             , typename Vector::item18, typename Vector::item19
  1378.             , typename Vector::item20, typename Vector::item21
  1379.             , typename Vector::item22, typename Vector::item23
  1380.             , typename Vector::item24, typename Vector::item25
  1381.             > type;
  1382.     };
  1383. };
  1384.  
  1385. namespace aux {
  1386. template<> struct v_at_impl<27>
  1387. {
  1388.     template< typename V_ > struct result_
  1389.     {
  1390.         typedef typename V_::item27 type;
  1391.     };
  1392. };
  1393.  
  1394. }
  1395.  
  1396. template<>
  1397. struct at_impl< aux::vector_tag<27> >
  1398. {
  1399.     template< typename V_, typename N > struct apply
  1400.     {
  1401.         typedef typename aux::v_at_impl<BOOST_MPL_AUX_VALUE_WKND(N)::value>
  1402.             ::template result_<V_>::type type;
  1403.     };
  1404. };
  1405.  
  1406. template<>
  1407. struct front_impl< aux::vector_tag<27> >
  1408. {
  1409.     template< typename Vector > struct apply
  1410.     {
  1411.         typedef typename Vector::item0 type;
  1412.     };
  1413. };
  1414.  
  1415. template<>
  1416. struct back_impl< aux::vector_tag<27> >
  1417. {
  1418.     template< typename Vector > struct apply
  1419.     {
  1420.         typedef typename Vector::back type;
  1421.     };
  1422. };
  1423.  
  1424. template<>
  1425. struct empty_impl< aux::vector_tag<27> >
  1426. {
  1427.     template< typename Vector > struct apply
  1428.         : false_
  1429.     {
  1430.     };
  1431. };
  1432.  
  1433. template<>
  1434. struct size_impl< aux::vector_tag<27> >
  1435. {
  1436.     template< typename Vector > struct apply
  1437.         : long_<27>
  1438.     {
  1439.     };
  1440. };
  1441.  
  1442. template<>
  1443. struct O1_size_impl< aux::vector_tag<27> >
  1444.     : size_impl< aux::vector_tag<27> >
  1445. {
  1446. };
  1447.  
  1448. template<>
  1449. struct clear_impl< aux::vector_tag<27> >
  1450. {
  1451.     template< typename Vector > struct apply
  1452.     {
  1453.         typedef vector0<> type;
  1454.     };
  1455. };
  1456.  
  1457. template<
  1458.       typename T0, typename T1, typename T2, typename T3, typename T4
  1459.     , typename T5, typename T6, typename T7, typename T8, typename T9
  1460.     , typename T10, typename T11, typename T12, typename T13, typename T14
  1461.     , typename T15, typename T16, typename T17, typename T18, typename T19
  1462.     , typename T20, typename T21, typename T22, typename T23, typename T24
  1463.     , typename T25, typename T26, typename T27
  1464.     >
  1465. struct vector28
  1466. {
  1467.     typedef aux::vector_tag<28> tag;
  1468.     typedef vector28 type;
  1469.     typedef T0 item0;
  1470.     typedef T1 item1;
  1471.     typedef T2 item2;
  1472.     typedef T3 item3;
  1473.     typedef T4 item4;
  1474.     typedef T5 item5;
  1475.     typedef T6 item6;
  1476.     typedef T7 item7;
  1477.     typedef T8 item8;
  1478.     typedef T9 item9;
  1479.     typedef T10 item10;
  1480.     typedef T11 item11;
  1481.     typedef T12 item12;
  1482.     typedef T13 item13;
  1483.     typedef T14 item14;
  1484.     typedef T15 item15;
  1485.     typedef T16 item16;
  1486.     typedef T17 item17;
  1487.     typedef T18 item18;
  1488.     typedef T19 item19;
  1489.     typedef T20 item20;
  1490.     typedef T21 item21;
  1491.     typedef T22 item22;
  1492.     typedef T23 item23;
  1493.     typedef T24 item24;
  1494.     typedef T25 item25;
  1495.     typedef T26 item26;
  1496.     typedef T27 item27;
  1497.    
  1498.  
  1499.     typedef void_ item28;
  1500.     typedef T27 back;
  1501.     typedef v_iter< type,0 > begin;
  1502.     typedef v_iter< type,28 > end;
  1503. };
  1504.  
  1505. template<>
  1506. struct push_front_impl< aux::vector_tag<27> >
  1507. {
  1508.     template< typename Vector, typename T > struct apply
  1509.     {
  1510.         typedef vector28<
  1511.               T
  1512.               ,
  1513.               typename Vector::item0, typename Vector::item1
  1514.             , typename Vector::item2, typename Vector::item3
  1515.             , typename Vector::item4, typename Vector::item5
  1516.             , typename Vector::item6, typename Vector::item7
  1517.             , typename Vector::item8, typename Vector::item9
  1518.             , typename Vector::item10, typename Vector::item11
  1519.             , typename Vector::item12, typename Vector::item13
  1520.             , typename Vector::item14, typename Vector::item15
  1521.             , typename Vector::item16, typename Vector::item17
  1522.             , typename Vector::item18, typename Vector::item19
  1523.             , typename Vector::item20, typename Vector::item21
  1524.             , typename Vector::item22, typename Vector::item23
  1525.             , typename Vector::item24, typename Vector::item25
  1526.             , typename Vector::item26
  1527.             > type;
  1528.     };
  1529. };
  1530.  
  1531. template<>
  1532. struct pop_front_impl< aux::vector_tag<28> >
  1533. {
  1534.     template< typename Vector > struct apply
  1535.     {
  1536.         typedef vector27<
  1537.               typename Vector::item1, typename Vector::item2
  1538.             , typename Vector::item3, typename Vector::item4
  1539.             , typename Vector::item5, typename Vector::item6
  1540.             , typename Vector::item7, typename Vector::item8
  1541.             , typename Vector::item9, typename Vector::item10
  1542.             , typename Vector::item11, typename Vector::item12
  1543.             , typename Vector::item13, typename Vector::item14
  1544.             , typename Vector::item15, typename Vector::item16
  1545.             , typename Vector::item17, typename Vector::item18
  1546.             , typename Vector::item19, typename Vector::item20
  1547.             , typename Vector::item21, typename Vector::item22
  1548.             , typename Vector::item23, typename Vector::item24
  1549.             , typename Vector::item25, typename Vector::item26
  1550.             , typename Vector::item27
  1551.             > type;
  1552.     };
  1553. };
  1554.  
  1555. template<>
  1556. struct push_back_impl< aux::vector_tag<27> >
  1557. {
  1558.     template< typename Vector, typename T > struct apply
  1559.     {
  1560.         typedef vector28<
  1561.               typename Vector::item0, typename Vector::item1
  1562.             , typename Vector::item2, typename Vector::item3
  1563.             , typename Vector::item4, typename Vector::item5
  1564.             , typename Vector::item6, typename Vector::item7
  1565.             , typename Vector::item8, typename Vector::item9
  1566.             , typename Vector::item10, typename Vector::item11
  1567.             , typename Vector::item12, typename Vector::item13
  1568.             , typename Vector::item14, typename Vector::item15
  1569.             , typename Vector::item16, typename Vector::item17
  1570.             , typename Vector::item18, typename Vector::item19
  1571.             , typename Vector::item20, typename Vector::item21
  1572.             , typename Vector::item22, typename Vector::item23
  1573.             , typename Vector::item24, typename Vector::item25
  1574.             , typename Vector::item26
  1575.               ,
  1576.               T
  1577.             > type;
  1578.     };
  1579. };
  1580.  
  1581. template<>
  1582. struct pop_back_impl< aux::vector_tag<28> >
  1583. {
  1584.     template< typename Vector > struct apply
  1585.     {
  1586.         typedef vector27<
  1587.               typename Vector::item0, typename Vector::item1
  1588.             , typename Vector::item2, typename Vector::item3
  1589.             , typename Vector::item4, typename Vector::item5
  1590.             , typename Vector::item6, typename Vector::item7
  1591.             , typename Vector::item8, typename Vector::item9
  1592.             , typename Vector::item10, typename Vector::item11
  1593.             , typename Vector::item12, typename Vector::item13
  1594.             , typename Vector::item14, typename Vector::item15
  1595.             , typename Vector::item16, typename Vector::item17
  1596.             , typename Vector::item18, typename Vector::item19
  1597.             , typename Vector::item20, typename Vector::item21
  1598.             , typename Vector::item22, typename Vector::item23
  1599.             , typename Vector::item24, typename Vector::item25
  1600.             , typename Vector::item26
  1601.             > type;
  1602.     };
  1603. };
  1604.  
  1605. namespace aux {
  1606. template<> struct v_at_impl<28>
  1607. {
  1608.     template< typename V_ > struct result_
  1609.     {
  1610.         typedef typename V_::item28 type;
  1611.     };
  1612. };
  1613.  
  1614. }
  1615.  
  1616. template<>
  1617. struct at_impl< aux::vector_tag<28> >
  1618. {
  1619.     template< typename V_, typename N > struct apply
  1620.     {
  1621.         typedef typename aux::v_at_impl<BOOST_MPL_AUX_VALUE_WKND(N)::value>
  1622.             ::template result_<V_>::type type;
  1623.     };
  1624. };
  1625.  
  1626. template<>
  1627. struct front_impl< aux::vector_tag<28> >
  1628. {
  1629.     template< typename Vector > struct apply
  1630.     {
  1631.         typedef typename Vector::item0 type;
  1632.     };
  1633. };
  1634.  
  1635. template<>
  1636. struct back_impl< aux::vector_tag<28> >
  1637. {
  1638.     template< typename Vector > struct apply
  1639.     {
  1640.         typedef typename Vector::back type;
  1641.     };
  1642. };
  1643.  
  1644. template<>
  1645. struct empty_impl< aux::vector_tag<28> >
  1646. {
  1647.     template< typename Vector > struct apply
  1648.         : false_
  1649.     {
  1650.     };
  1651. };
  1652.  
  1653. template<>
  1654. struct size_impl< aux::vector_tag<28> >
  1655. {
  1656.     template< typename Vector > struct apply
  1657.         : long_<28>
  1658.     {
  1659.     };
  1660. };
  1661.  
  1662. template<>
  1663. struct O1_size_impl< aux::vector_tag<28> >
  1664.     : size_impl< aux::vector_tag<28> >
  1665. {
  1666. };
  1667.  
  1668. template<>
  1669. struct clear_impl< aux::vector_tag<28> >
  1670. {
  1671.     template< typename Vector > struct apply
  1672.     {
  1673.         typedef vector0<> type;
  1674.     };
  1675. };
  1676.  
  1677. template<
  1678.       typename T0, typename T1, typename T2, typename T3, typename T4
  1679.     , typename T5, typename T6, typename T7, typename T8, typename T9
  1680.     , typename T10, typename T11, typename T12, typename T13, typename T14
  1681.     , typename T15, typename T16, typename T17, typename T18, typename T19
  1682.     , typename T20, typename T21, typename T22, typename T23, typename T24
  1683.     , typename T25, typename T26, typename T27, typename T28
  1684.     >
  1685. struct vector29
  1686. {
  1687.     typedef aux::vector_tag<29> tag;
  1688.     typedef vector29 type;
  1689.     typedef T0 item0;
  1690.     typedef T1 item1;
  1691.     typedef T2 item2;
  1692.     typedef T3 item3;
  1693.     typedef T4 item4;
  1694.     typedef T5 item5;
  1695.     typedef T6 item6;
  1696.     typedef T7 item7;
  1697.     typedef T8 item8;
  1698.     typedef T9 item9;
  1699.     typedef T10 item10;
  1700.     typedef T11 item11;
  1701.     typedef T12 item12;
  1702.     typedef T13 item13;
  1703.     typedef T14 item14;
  1704.     typedef T15 item15;
  1705.     typedef T16 item16;
  1706.     typedef T17 item17;
  1707.     typedef T18 item18;
  1708.     typedef T19 item19;
  1709.     typedef T20 item20;
  1710.     typedef T21 item21;
  1711.     typedef T22 item22;
  1712.     typedef T23 item23;
  1713.     typedef T24 item24;
  1714.     typedef T25 item25;
  1715.     typedef T26 item26;
  1716.     typedef T27 item27;
  1717.     typedef T28 item28;
  1718.    
  1719.  
  1720.     typedef void_ item29;
  1721.     typedef T28 back;
  1722.     typedef v_iter< type,0 > begin;
  1723.     typedef v_iter< type,29 > end;
  1724. };
  1725.  
  1726. template<>
  1727. struct push_front_impl< aux::vector_tag<28> >
  1728. {
  1729.     template< typename Vector, typename T > struct apply
  1730.     {
  1731.         typedef vector29<
  1732.               T
  1733.               ,
  1734.               typename Vector::item0, typename Vector::item1
  1735.             , typename Vector::item2, typename Vector::item3
  1736.             , typename Vector::item4, typename Vector::item5
  1737.             , typename Vector::item6, typename Vector::item7
  1738.             , typename Vector::item8, typename Vector::item9
  1739.             , typename Vector::item10, typename Vector::item11
  1740.             , typename Vector::item12, typename Vector::item13
  1741.             , typename Vector::item14, typename Vector::item15
  1742.             , typename Vector::item16, typename Vector::item17
  1743.             , typename Vector::item18, typename Vector::item19
  1744.             , typename Vector::item20, typename Vector::item21
  1745.             , typename Vector::item22, typename Vector::item23
  1746.             , typename Vector::item24, typename Vector::item25
  1747.             , typename Vector::item26, typename Vector::item27
  1748.             > type;
  1749.     };
  1750. };
  1751.  
  1752. template<>
  1753. struct pop_front_impl< aux::vector_tag<29> >
  1754. {
  1755.     template< typename Vector > struct apply
  1756.     {
  1757.         typedef vector28<
  1758.               typename Vector::item1, typename Vector::item2
  1759.             , typename Vector::item3, typename Vector::item4
  1760.             , typename Vector::item5, typename Vector::item6
  1761.             , typename Vector::item7, typename Vector::item8
  1762.             , typename Vector::item9, typename Vector::item10
  1763.             , typename Vector::item11, typename Vector::item12
  1764.             , typename Vector::item13, typename Vector::item14
  1765.             , typename Vector::item15, typename Vector::item16
  1766.             , typename Vector::item17, typename Vector::item18
  1767.             , typename Vector::item19, typename Vector::item20
  1768.             , typename Vector::item21, typename Vector::item22
  1769.             , typename Vector::item23, typename Vector::item24
  1770.             , typename Vector::item25, typename Vector::item26
  1771.             , typename Vector::item27, typename Vector::item28
  1772.             > type;
  1773.     };
  1774. };
  1775.  
  1776. template<>
  1777. struct push_back_impl< aux::vector_tag<28> >
  1778. {
  1779.     template< typename Vector, typename T > struct apply
  1780.     {
  1781.         typedef vector29<
  1782.               typename Vector::item0, typename Vector::item1
  1783.             , typename Vector::item2, typename Vector::item3
  1784.             , typename Vector::item4, typename Vector::item5
  1785.             , typename Vector::item6, typename Vector::item7
  1786.             , typename Vector::item8, typename Vector::item9
  1787.             , typename Vector::item10, typename Vector::item11
  1788.             , typename Vector::item12, typename Vector::item13
  1789.             , typename Vector::item14, typename Vector::item15
  1790.             , typename Vector::item16, typename Vector::item17
  1791.             , typename Vector::item18, typename Vector::item19
  1792.             , typename Vector::item20, typename Vector::item21
  1793.             , typename Vector::item22, typename Vector::item23
  1794.             , typename Vector::item24, typename Vector::item25
  1795.             , typename Vector::item26, typename Vector::item27
  1796.               ,
  1797.               T
  1798.             > type;
  1799.     };
  1800. };
  1801.  
  1802. template<>
  1803. struct pop_back_impl< aux::vector_tag<29> >
  1804. {
  1805.     template< typename Vector > struct apply
  1806.     {
  1807.         typedef vector28<
  1808.               typename Vector::item0, typename Vector::item1
  1809.             , typename Vector::item2, typename Vector::item3
  1810.             , typename Vector::item4, typename Vector::item5
  1811.             , typename Vector::item6, typename Vector::item7
  1812.             , typename Vector::item8, typename Vector::item9
  1813.             , typename Vector::item10, typename Vector::item11
  1814.             , typename Vector::item12, typename Vector::item13
  1815.             , typename Vector::item14, typename Vector::item15
  1816.             , typename Vector::item16, typename Vector::item17
  1817.             , typename Vector::item18, typename Vector::item19
  1818.             , typename Vector::item20, typename Vector::item21
  1819.             , typename Vector::item22, typename Vector::item23
  1820.             , typename Vector::item24, typename Vector::item25
  1821.             , typename Vector::item26, typename Vector::item27
  1822.             > type;
  1823.     };
  1824. };
  1825.  
  1826. namespace aux {
  1827. template<> struct v_at_impl<29>
  1828. {
  1829.     template< typename V_ > struct result_
  1830.     {
  1831.         typedef typename V_::item29 type;
  1832.     };
  1833. };
  1834.  
  1835. }
  1836.  
  1837. template<>
  1838. struct at_impl< aux::vector_tag<29> >
  1839. {
  1840.     template< typename V_, typename N > struct apply
  1841.     {
  1842.         typedef typename aux::v_at_impl<BOOST_MPL_AUX_VALUE_WKND(N)::value>
  1843.             ::template result_<V_>::type type;
  1844.     };
  1845. };
  1846.  
  1847. template<>
  1848. struct front_impl< aux::vector_tag<29> >
  1849. {
  1850.     template< typename Vector > struct apply
  1851.     {
  1852.         typedef typename Vector::item0 type;
  1853.     };
  1854. };
  1855.  
  1856. template<>
  1857. struct back_impl< aux::vector_tag<29> >
  1858. {
  1859.     template< typename Vector > struct apply
  1860.     {
  1861.         typedef typename Vector::back type;
  1862.     };
  1863. };
  1864.  
  1865. template<>
  1866. struct empty_impl< aux::vector_tag<29> >
  1867. {
  1868.     template< typename Vector > struct apply
  1869.         : false_
  1870.     {
  1871.     };
  1872. };
  1873.  
  1874. template<>
  1875. struct size_impl< aux::vector_tag<29> >
  1876. {
  1877.     template< typename Vector > struct apply
  1878.         : long_<29>
  1879.     {
  1880.     };
  1881. };
  1882.  
  1883. template<>
  1884. struct O1_size_impl< aux::vector_tag<29> >
  1885.     : size_impl< aux::vector_tag<29> >
  1886. {
  1887. };
  1888.  
  1889. template<>
  1890. struct clear_impl< aux::vector_tag<29> >
  1891. {
  1892.     template< typename Vector > struct apply
  1893.     {
  1894.         typedef vector0<> type;
  1895.     };
  1896. };
  1897.  
  1898. template<
  1899.       typename T0, typename T1, typename T2, typename T3, typename T4
  1900.     , typename T5, typename T6, typename T7, typename T8, typename T9
  1901.     , typename T10, typename T11, typename T12, typename T13, typename T14
  1902.     , typename T15, typename T16, typename T17, typename T18, typename T19
  1903.     , typename T20, typename T21, typename T22, typename T23, typename T24
  1904.     , typename T25, typename T26, typename T27, typename T28, typename T29
  1905.     >
  1906. struct vector30
  1907. {
  1908.     typedef aux::vector_tag<30> tag;
  1909.     typedef vector30 type;
  1910.     typedef T0 item0;
  1911.     typedef T1 item1;
  1912.     typedef T2 item2;
  1913.     typedef T3 item3;
  1914.     typedef T4 item4;
  1915.     typedef T5 item5;
  1916.     typedef T6 item6;
  1917.     typedef T7 item7;
  1918.     typedef T8 item8;
  1919.     typedef T9 item9;
  1920.     typedef T10 item10;
  1921.     typedef T11 item11;
  1922.     typedef T12 item12;
  1923.     typedef T13 item13;
  1924.     typedef T14 item14;
  1925.     typedef T15 item15;
  1926.     typedef T16 item16;
  1927.     typedef T17 item17;
  1928.     typedef T18 item18;
  1929.     typedef T19 item19;
  1930.     typedef T20 item20;
  1931.     typedef T21 item21;
  1932.     typedef T22 item22;
  1933.     typedef T23 item23;
  1934.     typedef T24 item24;
  1935.     typedef T25 item25;
  1936.     typedef T26 item26;
  1937.     typedef T27 item27;
  1938.     typedef T28 item28;
  1939.     typedef T29 item29;
  1940.    
  1941.  
  1942.     typedef void_ item30;
  1943.     typedef T29 back;
  1944.     typedef v_iter< type,0 > begin;
  1945.     typedef v_iter< type,30 > end;
  1946. };
  1947.  
  1948. template<>
  1949. struct push_front_impl< aux::vector_tag<29> >
  1950. {
  1951.     template< typename Vector, typename T > struct apply
  1952.     {
  1953.         typedef vector30<
  1954.               T
  1955.               ,
  1956.               typename Vector::item0, typename Vector::item1
  1957.             , typename Vector::item2, typename Vector::item3
  1958.             , typename Vector::item4, typename Vector::item5
  1959.             , typename Vector::item6, typename Vector::item7
  1960.             , typename Vector::item8, typename Vector::item9
  1961.             , typename Vector::item10, typename Vector::item11
  1962.             , typename Vector::item12, typename Vector::item13
  1963.             , typename Vector::item14, typename Vector::item15
  1964.             , typename Vector::item16, typename Vector::item17
  1965.             , typename Vector::item18, typename Vector::item19
  1966.             , typename Vector::item20, typename Vector::item21
  1967.             , typename Vector::item22, typename Vector::item23
  1968.             , typename Vector::item24, typename Vector::item25
  1969.             , typename Vector::item26, typename Vector::item27
  1970.             , typename Vector::item28
  1971.             > type;
  1972.     };
  1973. };
  1974.  
  1975. template<>
  1976. struct pop_front_impl< aux::vector_tag<30> >
  1977. {
  1978.     template< typename Vector > struct apply
  1979.     {
  1980.         typedef vector29<
  1981.               typename Vector::item1, typename Vector::item2
  1982.             , typename Vector::item3, typename Vector::item4
  1983.             , typename Vector::item5, typename Vector::item6
  1984.             , typename Vector::item7, typename Vector::item8
  1985.             , typename Vector::item9, typename Vector::item10
  1986.             , typename Vector::item11, typename Vector::item12
  1987.             , typename Vector::item13, typename Vector::item14
  1988.             , typename Vector::item15, typename Vector::item16
  1989.             , typename Vector::item17, typename Vector::item18
  1990.             , typename Vector::item19, typename Vector::item20
  1991.             , typename Vector::item21, typename Vector::item22
  1992.             , typename Vector::item23, typename Vector::item24
  1993.             , typename Vector::item25, typename Vector::item26
  1994.             , typename Vector::item27, typename Vector::item28
  1995.             , typename Vector::item29
  1996.             > type;
  1997.     };
  1998. };
  1999.  
  2000. template<>
  2001. struct push_back_impl< aux::vector_tag<29> >
  2002. {
  2003.     template< typename Vector, typename T > struct apply
  2004.     {
  2005.         typedef vector30<
  2006.               typename Vector::item0, typename Vector::item1
  2007.             , typename Vector::item2, typename Vector::item3
  2008.             , typename Vector::item4, typename Vector::item5
  2009.             , typename Vector::item6, typename Vector::item7
  2010.             , typename Vector::item8, typename Vector::item9
  2011.             , typename Vector::item10, typename Vector::item11
  2012.             , typename Vector::item12, typename Vector::item13
  2013.             , typename Vector::item14, typename Vector::item15
  2014.             , typename Vector::item16, typename Vector::item17
  2015.             , typename Vector::item18, typename Vector::item19
  2016.             , typename Vector::item20, typename Vector::item21
  2017.             , typename Vector::item22, typename Vector::item23
  2018.             , typename Vector::item24, typename Vector::item25
  2019.             , typename Vector::item26, typename Vector::item27
  2020.             , typename Vector::item28
  2021.               ,
  2022.               T
  2023.             > type;
  2024.     };
  2025. };
  2026.  
  2027. template<>
  2028. struct pop_back_impl< aux::vector_tag<30> >
  2029. {
  2030.     template< typename Vector > struct apply
  2031.     {
  2032.         typedef vector29<
  2033.               typename Vector::item0, typename Vector::item1
  2034.             , typename Vector::item2, typename Vector::item3
  2035.             , typename Vector::item4, typename Vector::item5
  2036.             , typename Vector::item6, typename Vector::item7
  2037.             , typename Vector::item8, typename Vector::item9
  2038.             , typename Vector::item10, typename Vector::item11
  2039.             , typename Vector::item12, typename Vector::item13
  2040.             , typename Vector::item14, typename Vector::item15
  2041.             , typename Vector::item16, typename Vector::item17
  2042.             , typename Vector::item18, typename Vector::item19
  2043.             , typename Vector::item20, typename Vector::item21
  2044.             , typename Vector::item22, typename Vector::item23
  2045.             , typename Vector::item24, typename Vector::item25
  2046.             , typename Vector::item26, typename Vector::item27
  2047.             , typename Vector::item28
  2048.             > type;
  2049.     };
  2050. };
  2051.  
  2052. namespace aux {
  2053. template<> struct v_at_impl<30>
  2054. {
  2055.     template< typename V_ > struct result_
  2056.     {
  2057.         typedef typename V_::item30 type;
  2058.     };
  2059. };
  2060.  
  2061. }
  2062.  
  2063. template<>
  2064. struct at_impl< aux::vector_tag<30> >
  2065. {
  2066.     template< typename V_, typename N > struct apply
  2067.     {
  2068.         typedef typename aux::v_at_impl<BOOST_MPL_AUX_VALUE_WKND(N)::value>
  2069.             ::template result_<V_>::type type;
  2070.     };
  2071. };
  2072.  
  2073. template<>
  2074. struct front_impl< aux::vector_tag<30> >
  2075. {
  2076.     template< typename Vector > struct apply
  2077.     {
  2078.         typedef typename Vector::item0 type;
  2079.     };
  2080. };
  2081.  
  2082. template<>
  2083. struct back_impl< aux::vector_tag<30> >
  2084. {
  2085.     template< typename Vector > struct apply
  2086.     {
  2087.         typedef typename Vector::back type;
  2088.     };
  2089. };
  2090.  
  2091. template<>
  2092. struct empty_impl< aux::vector_tag<30> >
  2093. {
  2094.     template< typename Vector > struct apply
  2095.         : false_
  2096.     {
  2097.     };
  2098. };
  2099.  
  2100. template<>
  2101. struct size_impl< aux::vector_tag<30> >
  2102. {
  2103.     template< typename Vector > struct apply
  2104.         : long_<30>
  2105.     {
  2106.     };
  2107. };
  2108.  
  2109. template<>
  2110. struct O1_size_impl< aux::vector_tag<30> >
  2111.     : size_impl< aux::vector_tag<30> >
  2112. {
  2113. };
  2114.  
  2115. template<>
  2116. struct clear_impl< aux::vector_tag<30> >
  2117. {
  2118.     template< typename Vector > struct apply
  2119.     {
  2120.         typedef vector0<> type;
  2121.     };
  2122. };
  2123.  
  2124. }}
  2125.  
downloadvector30.hpp Source code - Download mars Source code
Related Source Codes/Software:
Hero - Elegant transition library for iOS & tvOS 2017-06-09
deep-photo-styletransfer - Code and data for paper "Deep Photo Style Transfer... 2017-06-09
mastodon - A GNU Social-compatible microblogging server ... 2017-06-09
plyr - A simple HTML5, YouTube and Vimeo player ... 2017-06-08
prepack - Prepack is a partial evaluator for JavaScript. Pre... 2017-06-08
Public-APIs - 2017-06-09
lottie-ios - An iOS library to natively render After Effects ve... 2017-06-09
Awesome-Hacking - A collection of various awesome lists for hackers,... 2017-06-09
algorithms - Minimal examples of data structures and algorithms... 2017-06-10
lectures - Oxford Deep NLP 2017 course 2017-06-10
CRYENGINE - CRYENGINE is a powerful real-time game development... 2017-06-11
postal - 2017-06-11
reactide - Reactide is the first dedicated IDE for React web ... 2017-06-11
rkt - rkt is a pod-native container engine for Linux. It... 2017-06-11
uWebSockets - Tiny WebSockets https://for... 2017-06-11
realworld - TodoMVC for the RealWorld - Exemplary fullstack Me... 2017-06-11
goreplay - GoReplay is an open-source tool for capturing and ... 2017-06-10
pyenv - Simple Python version management 2017-06-10
redux-saga - An alternative side effect model for Redux apps ... 2017-06-10
angular-starter - 2017-06-10

 Back to top