blob: bbcfe78a90fd3fd8281cab42e0098ca64798de4b [file] [log] [blame]
Jeff Thompsona28eed82013-08-22 16:21:10 -07001
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 "ndnboost/mpl/vector/vector40.hpp" header
10// -- DO NOT modify by hand!
11
12namespace ndnboost { namespace mpl {
13
14template<
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, typename T21, typename T22, typename T23, typename T24
20 , typename T25, typename T26, typename T27, typename T28, typename T29
21 , typename T30
22 >
23struct vector31
24{
25 typedef aux::vector_tag<31> tag;
26 typedef vector31 type;
27 typedef T0 item0;
28 typedef T1 item1;
29 typedef T2 item2;
30 typedef T3 item3;
31 typedef T4 item4;
32 typedef T5 item5;
33 typedef T6 item6;
34 typedef T7 item7;
35 typedef T8 item8;
36 typedef T9 item9;
37 typedef T10 item10;
38 typedef T11 item11;
39 typedef T12 item12;
40 typedef T13 item13;
41 typedef T14 item14;
42 typedef T15 item15;
43 typedef T16 item16;
44 typedef T17 item17;
45 typedef T18 item18;
46 typedef T19 item19;
47 typedef T20 item20;
48 typedef T21 item21;
49 typedef T22 item22;
50 typedef T23 item23;
51 typedef T24 item24;
52 typedef T25 item25;
53 typedef T26 item26;
54 typedef T27 item27;
55 typedef T28 item28;
56 typedef T29 item29;
57 typedef T30 item30;
58
59
60 typedef void_ item31;
61 typedef T30 back;
62 typedef v_iter< type,0 > begin;
63 typedef v_iter< type,31 > end;
64};
65
66template<>
67struct push_front_impl< aux::vector_tag<30> >
68{
69 template< typename Vector, typename T > struct apply
70 {
71 typedef vector31<
72 T
73 ,
74 typename Vector::item0, typename Vector::item1
75 , typename Vector::item2, typename Vector::item3
76 , typename Vector::item4, typename Vector::item5
77 , typename Vector::item6, typename Vector::item7
78 , typename Vector::item8, typename Vector::item9
79 , typename Vector::item10, typename Vector::item11
80 , typename Vector::item12, typename Vector::item13
81 , typename Vector::item14, typename Vector::item15
82 , typename Vector::item16, typename Vector::item17
83 , typename Vector::item18, typename Vector::item19
84 , typename Vector::item20, typename Vector::item21
85 , typename Vector::item22, typename Vector::item23
86 , typename Vector::item24, typename Vector::item25
87 , typename Vector::item26, typename Vector::item27
88 , typename Vector::item28, typename Vector::item29
89 > type;
90 };
91};
92
93template<>
94struct pop_front_impl< aux::vector_tag<31> >
95{
96 template< typename Vector > struct apply
97 {
98 typedef vector30<
99 typename Vector::item1, typename Vector::item2
100 , typename Vector::item3, typename Vector::item4
101 , typename Vector::item5, typename Vector::item6
102 , typename Vector::item7, typename Vector::item8
103 , typename Vector::item9, typename Vector::item10
104 , typename Vector::item11, typename Vector::item12
105 , typename Vector::item13, typename Vector::item14
106 , typename Vector::item15, typename Vector::item16
107 , typename Vector::item17, typename Vector::item18
108 , typename Vector::item19, typename Vector::item20
109 , typename Vector::item21, typename Vector::item22
110 , typename Vector::item23, typename Vector::item24
111 , typename Vector::item25, typename Vector::item26
112 , typename Vector::item27, typename Vector::item28
113 , typename Vector::item29, typename Vector::item30
114 > type;
115 };
116};
117
118template<>
119struct push_back_impl< aux::vector_tag<30> >
120{
121 template< typename Vector, typename T > struct apply
122 {
123 typedef vector31<
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 , typename Vector::item20, typename Vector::item21
135 , typename Vector::item22, typename Vector::item23
136 , typename Vector::item24, typename Vector::item25
137 , typename Vector::item26, typename Vector::item27
138 , typename Vector::item28, typename Vector::item29
139 ,
140 T
141 > type;
142 };
143};
144
145template<>
146struct pop_back_impl< aux::vector_tag<31> >
147{
148 template< typename Vector > struct apply
149 {
150 typedef vector30<
151 typename Vector::item0, typename Vector::item1
152 , typename Vector::item2, typename Vector::item3
153 , typename Vector::item4, typename Vector::item5
154 , typename Vector::item6, typename Vector::item7
155 , typename Vector::item8, typename Vector::item9
156 , typename Vector::item10, typename Vector::item11
157 , typename Vector::item12, typename Vector::item13
158 , typename Vector::item14, typename Vector::item15
159 , typename Vector::item16, typename Vector::item17
160 , typename Vector::item18, typename Vector::item19
161 , typename Vector::item20, typename Vector::item21
162 , typename Vector::item22, typename Vector::item23
163 , typename Vector::item24, typename Vector::item25
164 , typename Vector::item26, typename Vector::item27
165 , typename Vector::item28, typename Vector::item29
166 > type;
167 };
168};
169
170namespace aux {
171template<> struct v_at_impl<31>
172{
173 template< typename V_ > struct result_
174 {
175 typedef typename V_::item31 type;
176 };
177};
178
179}
180
181template<>
182struct at_impl< aux::vector_tag<31> >
183{
184 template< typename V_, typename N > struct apply
185 {
186 typedef typename aux::v_at_impl<BOOST_MPL_AUX_VALUE_WKND(N)::value>
187 ::template result_<V_>::type type;
188 };
189};
190
191template<>
192struct front_impl< aux::vector_tag<31> >
193{
194 template< typename Vector > struct apply
195 {
196 typedef typename Vector::item0 type;
197 };
198};
199
200template<>
201struct back_impl< aux::vector_tag<31> >
202{
203 template< typename Vector > struct apply
204 {
205 typedef typename Vector::back type;
206 };
207};
208
209template<>
210struct empty_impl< aux::vector_tag<31> >
211{
212 template< typename Vector > struct apply
213 : false_
214 {
215 };
216};
217
218template<>
219struct size_impl< aux::vector_tag<31> >
220{
221 template< typename Vector > struct apply
222 : long_<31>
223 {
224 };
225};
226
227template<>
228struct O1_size_impl< aux::vector_tag<31> >
229 : size_impl< aux::vector_tag<31> >
230{
231};
232
233template<>
234struct clear_impl< aux::vector_tag<31> >
235{
236 template< typename Vector > struct apply
237 {
238 typedef vector0<> type;
239 };
240};
241
242template<
243 typename T0, typename T1, typename T2, typename T3, typename T4
244 , typename T5, typename T6, typename T7, typename T8, typename T9
245 , typename T10, typename T11, typename T12, typename T13, typename T14
246 , typename T15, typename T16, typename T17, typename T18, typename T19
247 , typename T20, typename T21, typename T22, typename T23, typename T24
248 , typename T25, typename T26, typename T27, typename T28, typename T29
249 , typename T30, typename T31
250 >
251struct vector32
252{
253 typedef aux::vector_tag<32> tag;
254 typedef vector32 type;
255 typedef T0 item0;
256 typedef T1 item1;
257 typedef T2 item2;
258 typedef T3 item3;
259 typedef T4 item4;
260 typedef T5 item5;
261 typedef T6 item6;
262 typedef T7 item7;
263 typedef T8 item8;
264 typedef T9 item9;
265 typedef T10 item10;
266 typedef T11 item11;
267 typedef T12 item12;
268 typedef T13 item13;
269 typedef T14 item14;
270 typedef T15 item15;
271 typedef T16 item16;
272 typedef T17 item17;
273 typedef T18 item18;
274 typedef T19 item19;
275 typedef T20 item20;
276 typedef T21 item21;
277 typedef T22 item22;
278 typedef T23 item23;
279 typedef T24 item24;
280 typedef T25 item25;
281 typedef T26 item26;
282 typedef T27 item27;
283 typedef T28 item28;
284 typedef T29 item29;
285 typedef T30 item30;
286 typedef T31 item31;
287
288
289 typedef void_ item32;
290 typedef T31 back;
291 typedef v_iter< type,0 > begin;
292 typedef v_iter< type,32 > end;
293};
294
295template<>
296struct push_front_impl< aux::vector_tag<31> >
297{
298 template< typename Vector, typename T > struct apply
299 {
300 typedef vector32<
301 T
302 ,
303 typename Vector::item0, typename Vector::item1
304 , typename Vector::item2, typename Vector::item3
305 , typename Vector::item4, typename Vector::item5
306 , typename Vector::item6, typename Vector::item7
307 , typename Vector::item8, typename Vector::item9
308 , typename Vector::item10, typename Vector::item11
309 , typename Vector::item12, typename Vector::item13
310 , typename Vector::item14, typename Vector::item15
311 , typename Vector::item16, typename Vector::item17
312 , typename Vector::item18, typename Vector::item19
313 , typename Vector::item20, typename Vector::item21
314 , typename Vector::item22, typename Vector::item23
315 , typename Vector::item24, typename Vector::item25
316 , typename Vector::item26, typename Vector::item27
317 , typename Vector::item28, typename Vector::item29
318 , typename Vector::item30
319 > type;
320 };
321};
322
323template<>
324struct pop_front_impl< aux::vector_tag<32> >
325{
326 template< typename Vector > struct apply
327 {
328 typedef vector31<
329 typename Vector::item1, typename Vector::item2
330 , typename Vector::item3, typename Vector::item4
331 , typename Vector::item5, typename Vector::item6
332 , typename Vector::item7, typename Vector::item8
333 , typename Vector::item9, typename Vector::item10
334 , typename Vector::item11, typename Vector::item12
335 , typename Vector::item13, typename Vector::item14
336 , typename Vector::item15, typename Vector::item16
337 , typename Vector::item17, typename Vector::item18
338 , typename Vector::item19, typename Vector::item20
339 , typename Vector::item21, typename Vector::item22
340 , typename Vector::item23, typename Vector::item24
341 , typename Vector::item25, typename Vector::item26
342 , typename Vector::item27, typename Vector::item28
343 , typename Vector::item29, typename Vector::item30
344 , typename Vector::item31
345 > type;
346 };
347};
348
349template<>
350struct push_back_impl< aux::vector_tag<31> >
351{
352 template< typename Vector, typename T > struct apply
353 {
354 typedef vector32<
355 typename Vector::item0, typename Vector::item1
356 , typename Vector::item2, typename Vector::item3
357 , typename Vector::item4, typename Vector::item5
358 , typename Vector::item6, typename Vector::item7
359 , typename Vector::item8, typename Vector::item9
360 , typename Vector::item10, typename Vector::item11
361 , typename Vector::item12, typename Vector::item13
362 , typename Vector::item14, typename Vector::item15
363 , typename Vector::item16, typename Vector::item17
364 , typename Vector::item18, typename Vector::item19
365 , typename Vector::item20, typename Vector::item21
366 , typename Vector::item22, typename Vector::item23
367 , typename Vector::item24, typename Vector::item25
368 , typename Vector::item26, typename Vector::item27
369 , typename Vector::item28, typename Vector::item29
370 , typename Vector::item30
371 ,
372 T
373 > type;
374 };
375};
376
377template<>
378struct pop_back_impl< aux::vector_tag<32> >
379{
380 template< typename Vector > struct apply
381 {
382 typedef vector31<
383 typename Vector::item0, typename Vector::item1
384 , typename Vector::item2, typename Vector::item3
385 , typename Vector::item4, typename Vector::item5
386 , typename Vector::item6, typename Vector::item7
387 , typename Vector::item8, typename Vector::item9
388 , typename Vector::item10, typename Vector::item11
389 , typename Vector::item12, typename Vector::item13
390 , typename Vector::item14, typename Vector::item15
391 , typename Vector::item16, typename Vector::item17
392 , typename Vector::item18, typename Vector::item19
393 , typename Vector::item20, typename Vector::item21
394 , typename Vector::item22, typename Vector::item23
395 , typename Vector::item24, typename Vector::item25
396 , typename Vector::item26, typename Vector::item27
397 , typename Vector::item28, typename Vector::item29
398 , typename Vector::item30
399 > type;
400 };
401};
402
403namespace aux {
404template<> struct v_at_impl<32>
405{
406 template< typename V_ > struct result_
407 {
408 typedef typename V_::item32 type;
409 };
410};
411
412}
413
414template<>
415struct at_impl< aux::vector_tag<32> >
416{
417 template< typename V_, typename N > struct apply
418 {
419 typedef typename aux::v_at_impl<BOOST_MPL_AUX_VALUE_WKND(N)::value>
420 ::template result_<V_>::type type;
421 };
422};
423
424template<>
425struct front_impl< aux::vector_tag<32> >
426{
427 template< typename Vector > struct apply
428 {
429 typedef typename Vector::item0 type;
430 };
431};
432
433template<>
434struct back_impl< aux::vector_tag<32> >
435{
436 template< typename Vector > struct apply
437 {
438 typedef typename Vector::back type;
439 };
440};
441
442template<>
443struct empty_impl< aux::vector_tag<32> >
444{
445 template< typename Vector > struct apply
446 : false_
447 {
448 };
449};
450
451template<>
452struct size_impl< aux::vector_tag<32> >
453{
454 template< typename Vector > struct apply
455 : long_<32>
456 {
457 };
458};
459
460template<>
461struct O1_size_impl< aux::vector_tag<32> >
462 : size_impl< aux::vector_tag<32> >
463{
464};
465
466template<>
467struct clear_impl< aux::vector_tag<32> >
468{
469 template< typename Vector > struct apply
470 {
471 typedef vector0<> type;
472 };
473};
474
475template<
476 typename T0, typename T1, typename T2, typename T3, typename T4
477 , typename T5, typename T6, typename T7, typename T8, typename T9
478 , typename T10, typename T11, typename T12, typename T13, typename T14
479 , typename T15, typename T16, typename T17, typename T18, typename T19
480 , typename T20, typename T21, typename T22, typename T23, typename T24
481 , typename T25, typename T26, typename T27, typename T28, typename T29
482 , typename T30, typename T31, typename T32
483 >
484struct vector33
485{
486 typedef aux::vector_tag<33> tag;
487 typedef vector33 type;
488 typedef T0 item0;
489 typedef T1 item1;
490 typedef T2 item2;
491 typedef T3 item3;
492 typedef T4 item4;
493 typedef T5 item5;
494 typedef T6 item6;
495 typedef T7 item7;
496 typedef T8 item8;
497 typedef T9 item9;
498 typedef T10 item10;
499 typedef T11 item11;
500 typedef T12 item12;
501 typedef T13 item13;
502 typedef T14 item14;
503 typedef T15 item15;
504 typedef T16 item16;
505 typedef T17 item17;
506 typedef T18 item18;
507 typedef T19 item19;
508 typedef T20 item20;
509 typedef T21 item21;
510 typedef T22 item22;
511 typedef T23 item23;
512 typedef T24 item24;
513 typedef T25 item25;
514 typedef T26 item26;
515 typedef T27 item27;
516 typedef T28 item28;
517 typedef T29 item29;
518 typedef T30 item30;
519 typedef T31 item31;
520 typedef T32 item32;
521
522
523 typedef void_ item33;
524 typedef T32 back;
525 typedef v_iter< type,0 > begin;
526 typedef v_iter< type,33 > end;
527};
528
529template<>
530struct push_front_impl< aux::vector_tag<32> >
531{
532 template< typename Vector, typename T > struct apply
533 {
534 typedef vector33<
535 T
536 ,
537 typename Vector::item0, typename Vector::item1
538 , typename Vector::item2, typename Vector::item3
539 , typename Vector::item4, typename Vector::item5
540 , typename Vector::item6, typename Vector::item7
541 , typename Vector::item8, typename Vector::item9
542 , typename Vector::item10, typename Vector::item11
543 , typename Vector::item12, typename Vector::item13
544 , typename Vector::item14, typename Vector::item15
545 , typename Vector::item16, typename Vector::item17
546 , typename Vector::item18, typename Vector::item19
547 , typename Vector::item20, typename Vector::item21
548 , typename Vector::item22, typename Vector::item23
549 , typename Vector::item24, typename Vector::item25
550 , typename Vector::item26, typename Vector::item27
551 , typename Vector::item28, typename Vector::item29
552 , typename Vector::item30, typename Vector::item31
553 > type;
554 };
555};
556
557template<>
558struct pop_front_impl< aux::vector_tag<33> >
559{
560 template< typename Vector > struct apply
561 {
562 typedef vector32<
563 typename Vector::item1, typename Vector::item2
564 , typename Vector::item3, typename Vector::item4
565 , typename Vector::item5, typename Vector::item6
566 , typename Vector::item7, typename Vector::item8
567 , typename Vector::item9, typename Vector::item10
568 , typename Vector::item11, typename Vector::item12
569 , typename Vector::item13, typename Vector::item14
570 , typename Vector::item15, typename Vector::item16
571 , typename Vector::item17, typename Vector::item18
572 , typename Vector::item19, typename Vector::item20
573 , typename Vector::item21, typename Vector::item22
574 , typename Vector::item23, typename Vector::item24
575 , typename Vector::item25, typename Vector::item26
576 , typename Vector::item27, typename Vector::item28
577 , typename Vector::item29, typename Vector::item30
578 , typename Vector::item31, typename Vector::item32
579 > type;
580 };
581};
582
583template<>
584struct push_back_impl< aux::vector_tag<32> >
585{
586 template< typename Vector, typename T > struct apply
587 {
588 typedef vector33<
589 typename Vector::item0, typename Vector::item1
590 , typename Vector::item2, typename Vector::item3
591 , typename Vector::item4, typename Vector::item5
592 , typename Vector::item6, typename Vector::item7
593 , typename Vector::item8, typename Vector::item9
594 , typename Vector::item10, typename Vector::item11
595 , typename Vector::item12, typename Vector::item13
596 , typename Vector::item14, typename Vector::item15
597 , typename Vector::item16, typename Vector::item17
598 , typename Vector::item18, typename Vector::item19
599 , typename Vector::item20, typename Vector::item21
600 , typename Vector::item22, typename Vector::item23
601 , typename Vector::item24, typename Vector::item25
602 , typename Vector::item26, typename Vector::item27
603 , typename Vector::item28, typename Vector::item29
604 , typename Vector::item30, typename Vector::item31
605 ,
606 T
607 > type;
608 };
609};
610
611template<>
612struct pop_back_impl< aux::vector_tag<33> >
613{
614 template< typename Vector > struct apply
615 {
616 typedef vector32<
617 typename Vector::item0, typename Vector::item1
618 , typename Vector::item2, typename Vector::item3
619 , typename Vector::item4, typename Vector::item5
620 , typename Vector::item6, typename Vector::item7
621 , typename Vector::item8, typename Vector::item9
622 , typename Vector::item10, typename Vector::item11
623 , typename Vector::item12, typename Vector::item13
624 , typename Vector::item14, typename Vector::item15
625 , typename Vector::item16, typename Vector::item17
626 , typename Vector::item18, typename Vector::item19
627 , typename Vector::item20, typename Vector::item21
628 , typename Vector::item22, typename Vector::item23
629 , typename Vector::item24, typename Vector::item25
630 , typename Vector::item26, typename Vector::item27
631 , typename Vector::item28, typename Vector::item29
632 , typename Vector::item30, typename Vector::item31
633 > type;
634 };
635};
636
637namespace aux {
638template<> struct v_at_impl<33>
639{
640 template< typename V_ > struct result_
641 {
642 typedef typename V_::item33 type;
643 };
644};
645
646}
647
648template<>
649struct at_impl< aux::vector_tag<33> >
650{
651 template< typename V_, typename N > struct apply
652 {
653 typedef typename aux::v_at_impl<BOOST_MPL_AUX_VALUE_WKND(N)::value>
654 ::template result_<V_>::type type;
655 };
656};
657
658template<>
659struct front_impl< aux::vector_tag<33> >
660{
661 template< typename Vector > struct apply
662 {
663 typedef typename Vector::item0 type;
664 };
665};
666
667template<>
668struct back_impl< aux::vector_tag<33> >
669{
670 template< typename Vector > struct apply
671 {
672 typedef typename Vector::back type;
673 };
674};
675
676template<>
677struct empty_impl< aux::vector_tag<33> >
678{
679 template< typename Vector > struct apply
680 : false_
681 {
682 };
683};
684
685template<>
686struct size_impl< aux::vector_tag<33> >
687{
688 template< typename Vector > struct apply
689 : long_<33>
690 {
691 };
692};
693
694template<>
695struct O1_size_impl< aux::vector_tag<33> >
696 : size_impl< aux::vector_tag<33> >
697{
698};
699
700template<>
701struct clear_impl< aux::vector_tag<33> >
702{
703 template< typename Vector > struct apply
704 {
705 typedef vector0<> type;
706 };
707};
708
709template<
710 typename T0, typename T1, typename T2, typename T3, typename T4
711 , typename T5, typename T6, typename T7, typename T8, typename T9
712 , typename T10, typename T11, typename T12, typename T13, typename T14
713 , typename T15, typename T16, typename T17, typename T18, typename T19
714 , typename T20, typename T21, typename T22, typename T23, typename T24
715 , typename T25, typename T26, typename T27, typename T28, typename T29
716 , typename T30, typename T31, typename T32, typename T33
717 >
718struct vector34
719{
720 typedef aux::vector_tag<34> tag;
721 typedef vector34 type;
722 typedef T0 item0;
723 typedef T1 item1;
724 typedef T2 item2;
725 typedef T3 item3;
726 typedef T4 item4;
727 typedef T5 item5;
728 typedef T6 item6;
729 typedef T7 item7;
730 typedef T8 item8;
731 typedef T9 item9;
732 typedef T10 item10;
733 typedef T11 item11;
734 typedef T12 item12;
735 typedef T13 item13;
736 typedef T14 item14;
737 typedef T15 item15;
738 typedef T16 item16;
739 typedef T17 item17;
740 typedef T18 item18;
741 typedef T19 item19;
742 typedef T20 item20;
743 typedef T21 item21;
744 typedef T22 item22;
745 typedef T23 item23;
746 typedef T24 item24;
747 typedef T25 item25;
748 typedef T26 item26;
749 typedef T27 item27;
750 typedef T28 item28;
751 typedef T29 item29;
752 typedef T30 item30;
753 typedef T31 item31;
754 typedef T32 item32;
755 typedef T33 item33;
756
757
758 typedef void_ item34;
759 typedef T33 back;
760 typedef v_iter< type,0 > begin;
761 typedef v_iter< type,34 > end;
762};
763
764template<>
765struct push_front_impl< aux::vector_tag<33> >
766{
767 template< typename Vector, typename T > struct apply
768 {
769 typedef vector34<
770 T
771 ,
772 typename Vector::item0, typename Vector::item1
773 , typename Vector::item2, typename Vector::item3
774 , typename Vector::item4, typename Vector::item5
775 , typename Vector::item6, typename Vector::item7
776 , typename Vector::item8, typename Vector::item9
777 , typename Vector::item10, typename Vector::item11
778 , typename Vector::item12, typename Vector::item13
779 , typename Vector::item14, typename Vector::item15
780 , typename Vector::item16, typename Vector::item17
781 , typename Vector::item18, typename Vector::item19
782 , typename Vector::item20, typename Vector::item21
783 , typename Vector::item22, typename Vector::item23
784 , typename Vector::item24, typename Vector::item25
785 , typename Vector::item26, typename Vector::item27
786 , typename Vector::item28, typename Vector::item29
787 , typename Vector::item30, typename Vector::item31
788 , typename Vector::item32
789 > type;
790 };
791};
792
793template<>
794struct pop_front_impl< aux::vector_tag<34> >
795{
796 template< typename Vector > struct apply
797 {
798 typedef vector33<
799 typename Vector::item1, typename Vector::item2
800 , typename Vector::item3, typename Vector::item4
801 , typename Vector::item5, typename Vector::item6
802 , typename Vector::item7, typename Vector::item8
803 , typename Vector::item9, typename Vector::item10
804 , typename Vector::item11, typename Vector::item12
805 , typename Vector::item13, typename Vector::item14
806 , typename Vector::item15, typename Vector::item16
807 , typename Vector::item17, typename Vector::item18
808 , typename Vector::item19, typename Vector::item20
809 , typename Vector::item21, typename Vector::item22
810 , typename Vector::item23, typename Vector::item24
811 , typename Vector::item25, typename Vector::item26
812 , typename Vector::item27, typename Vector::item28
813 , typename Vector::item29, typename Vector::item30
814 , typename Vector::item31, typename Vector::item32
815 , typename Vector::item33
816 > type;
817 };
818};
819
820template<>
821struct push_back_impl< aux::vector_tag<33> >
822{
823 template< typename Vector, typename T > struct apply
824 {
825 typedef vector34<
826 typename Vector::item0, typename Vector::item1
827 , typename Vector::item2, typename Vector::item3
828 , typename Vector::item4, typename Vector::item5
829 , typename Vector::item6, typename Vector::item7
830 , typename Vector::item8, typename Vector::item9
831 , typename Vector::item10, typename Vector::item11
832 , typename Vector::item12, typename Vector::item13
833 , typename Vector::item14, typename Vector::item15
834 , typename Vector::item16, typename Vector::item17
835 , typename Vector::item18, typename Vector::item19
836 , typename Vector::item20, typename Vector::item21
837 , typename Vector::item22, typename Vector::item23
838 , typename Vector::item24, typename Vector::item25
839 , typename Vector::item26, typename Vector::item27
840 , typename Vector::item28, typename Vector::item29
841 , typename Vector::item30, typename Vector::item31
842 , typename Vector::item32
843 ,
844 T
845 > type;
846 };
847};
848
849template<>
850struct pop_back_impl< aux::vector_tag<34> >
851{
852 template< typename Vector > struct apply
853 {
854 typedef vector33<
855 typename Vector::item0, typename Vector::item1
856 , typename Vector::item2, typename Vector::item3
857 , typename Vector::item4, typename Vector::item5
858 , typename Vector::item6, typename Vector::item7
859 , typename Vector::item8, typename Vector::item9
860 , typename Vector::item10, typename Vector::item11
861 , typename Vector::item12, typename Vector::item13
862 , typename Vector::item14, typename Vector::item15
863 , typename Vector::item16, typename Vector::item17
864 , typename Vector::item18, typename Vector::item19
865 , typename Vector::item20, typename Vector::item21
866 , typename Vector::item22, typename Vector::item23
867 , typename Vector::item24, typename Vector::item25
868 , typename Vector::item26, typename Vector::item27
869 , typename Vector::item28, typename Vector::item29
870 , typename Vector::item30, typename Vector::item31
871 , typename Vector::item32
872 > type;
873 };
874};
875
876namespace aux {
877template<> struct v_at_impl<34>
878{
879 template< typename V_ > struct result_
880 {
881 typedef typename V_::item34 type;
882 };
883};
884
885}
886
887template<>
888struct at_impl< aux::vector_tag<34> >
889{
890 template< typename V_, typename N > struct apply
891 {
892 typedef typename aux::v_at_impl<BOOST_MPL_AUX_VALUE_WKND(N)::value>
893 ::template result_<V_>::type type;
894 };
895};
896
897template<>
898struct front_impl< aux::vector_tag<34> >
899{
900 template< typename Vector > struct apply
901 {
902 typedef typename Vector::item0 type;
903 };
904};
905
906template<>
907struct back_impl< aux::vector_tag<34> >
908{
909 template< typename Vector > struct apply
910 {
911 typedef typename Vector::back type;
912 };
913};
914
915template<>
916struct empty_impl< aux::vector_tag<34> >
917{
918 template< typename Vector > struct apply
919 : false_
920 {
921 };
922};
923
924template<>
925struct size_impl< aux::vector_tag<34> >
926{
927 template< typename Vector > struct apply
928 : long_<34>
929 {
930 };
931};
932
933template<>
934struct O1_size_impl< aux::vector_tag<34> >
935 : size_impl< aux::vector_tag<34> >
936{
937};
938
939template<>
940struct clear_impl< aux::vector_tag<34> >
941{
942 template< typename Vector > struct apply
943 {
944 typedef vector0<> type;
945 };
946};
947
948template<
949 typename T0, typename T1, typename T2, typename T3, typename T4
950 , typename T5, typename T6, typename T7, typename T8, typename T9
951 , typename T10, typename T11, typename T12, typename T13, typename T14
952 , typename T15, typename T16, typename T17, typename T18, typename T19
953 , typename T20, typename T21, typename T22, typename T23, typename T24
954 , typename T25, typename T26, typename T27, typename T28, typename T29
955 , typename T30, typename T31, typename T32, typename T33, typename T34
956 >
957struct vector35
958{
959 typedef aux::vector_tag<35> tag;
960 typedef vector35 type;
961 typedef T0 item0;
962 typedef T1 item1;
963 typedef T2 item2;
964 typedef T3 item3;
965 typedef T4 item4;
966 typedef T5 item5;
967 typedef T6 item6;
968 typedef T7 item7;
969 typedef T8 item8;
970 typedef T9 item9;
971 typedef T10 item10;
972 typedef T11 item11;
973 typedef T12 item12;
974 typedef T13 item13;
975 typedef T14 item14;
976 typedef T15 item15;
977 typedef T16 item16;
978 typedef T17 item17;
979 typedef T18 item18;
980 typedef T19 item19;
981 typedef T20 item20;
982 typedef T21 item21;
983 typedef T22 item22;
984 typedef T23 item23;
985 typedef T24 item24;
986 typedef T25 item25;
987 typedef T26 item26;
988 typedef T27 item27;
989 typedef T28 item28;
990 typedef T29 item29;
991 typedef T30 item30;
992 typedef T31 item31;
993 typedef T32 item32;
994 typedef T33 item33;
995 typedef T34 item34;
996
997
998 typedef void_ item35;
999 typedef T34 back;
1000 typedef v_iter< type,0 > begin;
1001 typedef v_iter< type,35 > end;
1002};
1003
1004template<>
1005struct push_front_impl< aux::vector_tag<34> >
1006{
1007 template< typename Vector, typename T > struct apply
1008 {
1009 typedef vector35<
1010 T
1011 ,
1012 typename Vector::item0, typename Vector::item1
1013 , typename Vector::item2, typename Vector::item3
1014 , typename Vector::item4, typename Vector::item5
1015 , typename Vector::item6, typename Vector::item7
1016 , typename Vector::item8, typename Vector::item9
1017 , typename Vector::item10, typename Vector::item11
1018 , typename Vector::item12, typename Vector::item13
1019 , typename Vector::item14, typename Vector::item15
1020 , typename Vector::item16, typename Vector::item17
1021 , typename Vector::item18, typename Vector::item19
1022 , typename Vector::item20, typename Vector::item21
1023 , typename Vector::item22, typename Vector::item23
1024 , typename Vector::item24, typename Vector::item25
1025 , typename Vector::item26, typename Vector::item27
1026 , typename Vector::item28, typename Vector::item29
1027 , typename Vector::item30, typename Vector::item31
1028 , typename Vector::item32, typename Vector::item33
1029 > type;
1030 };
1031};
1032
1033template<>
1034struct pop_front_impl< aux::vector_tag<35> >
1035{
1036 template< typename Vector > struct apply
1037 {
1038 typedef vector34<
1039 typename Vector::item1, typename Vector::item2
1040 , typename Vector::item3, typename Vector::item4
1041 , typename Vector::item5, typename Vector::item6
1042 , typename Vector::item7, typename Vector::item8
1043 , typename Vector::item9, typename Vector::item10
1044 , typename Vector::item11, typename Vector::item12
1045 , typename Vector::item13, typename Vector::item14
1046 , typename Vector::item15, typename Vector::item16
1047 , typename Vector::item17, typename Vector::item18
1048 , typename Vector::item19, typename Vector::item20
1049 , typename Vector::item21, typename Vector::item22
1050 , typename Vector::item23, typename Vector::item24
1051 , typename Vector::item25, typename Vector::item26
1052 , typename Vector::item27, typename Vector::item28
1053 , typename Vector::item29, typename Vector::item30
1054 , typename Vector::item31, typename Vector::item32
1055 , typename Vector::item33, typename Vector::item34
1056 > type;
1057 };
1058};
1059
1060template<>
1061struct push_back_impl< aux::vector_tag<34> >
1062{
1063 template< typename Vector, typename T > struct apply
1064 {
1065 typedef vector35<
1066 typename Vector::item0, typename Vector::item1
1067 , typename Vector::item2, typename Vector::item3
1068 , typename Vector::item4, typename Vector::item5
1069 , typename Vector::item6, typename Vector::item7
1070 , typename Vector::item8, typename Vector::item9
1071 , typename Vector::item10, typename Vector::item11
1072 , typename Vector::item12, typename Vector::item13
1073 , typename Vector::item14, typename Vector::item15
1074 , typename Vector::item16, typename Vector::item17
1075 , typename Vector::item18, typename Vector::item19
1076 , typename Vector::item20, typename Vector::item21
1077 , typename Vector::item22, typename Vector::item23
1078 , typename Vector::item24, typename Vector::item25
1079 , typename Vector::item26, typename Vector::item27
1080 , typename Vector::item28, typename Vector::item29
1081 , typename Vector::item30, typename Vector::item31
1082 , typename Vector::item32, typename Vector::item33
1083 ,
1084 T
1085 > type;
1086 };
1087};
1088
1089template<>
1090struct pop_back_impl< aux::vector_tag<35> >
1091{
1092 template< typename Vector > struct apply
1093 {
1094 typedef vector34<
1095 typename Vector::item0, typename Vector::item1
1096 , typename Vector::item2, typename Vector::item3
1097 , typename Vector::item4, typename Vector::item5
1098 , typename Vector::item6, typename Vector::item7
1099 , typename Vector::item8, typename Vector::item9
1100 , typename Vector::item10, typename Vector::item11
1101 , typename Vector::item12, typename Vector::item13
1102 , typename Vector::item14, typename Vector::item15
1103 , typename Vector::item16, typename Vector::item17
1104 , typename Vector::item18, typename Vector::item19
1105 , typename Vector::item20, typename Vector::item21
1106 , typename Vector::item22, typename Vector::item23
1107 , typename Vector::item24, typename Vector::item25
1108 , typename Vector::item26, typename Vector::item27
1109 , typename Vector::item28, typename Vector::item29
1110 , typename Vector::item30, typename Vector::item31
1111 , typename Vector::item32, typename Vector::item33
1112 > type;
1113 };
1114};
1115
1116namespace aux {
1117template<> struct v_at_impl<35>
1118{
1119 template< typename V_ > struct result_
1120 {
1121 typedef typename V_::item35 type;
1122 };
1123};
1124
1125}
1126
1127template<>
1128struct at_impl< aux::vector_tag<35> >
1129{
1130 template< typename V_, typename N > struct apply
1131 {
1132 typedef typename aux::v_at_impl<BOOST_MPL_AUX_VALUE_WKND(N)::value>
1133 ::template result_<V_>::type type;
1134 };
1135};
1136
1137template<>
1138struct front_impl< aux::vector_tag<35> >
1139{
1140 template< typename Vector > struct apply
1141 {
1142 typedef typename Vector::item0 type;
1143 };
1144};
1145
1146template<>
1147struct back_impl< aux::vector_tag<35> >
1148{
1149 template< typename Vector > struct apply
1150 {
1151 typedef typename Vector::back type;
1152 };
1153};
1154
1155template<>
1156struct empty_impl< aux::vector_tag<35> >
1157{
1158 template< typename Vector > struct apply
1159 : false_
1160 {
1161 };
1162};
1163
1164template<>
1165struct size_impl< aux::vector_tag<35> >
1166{
1167 template< typename Vector > struct apply
1168 : long_<35>
1169 {
1170 };
1171};
1172
1173template<>
1174struct O1_size_impl< aux::vector_tag<35> >
1175 : size_impl< aux::vector_tag<35> >
1176{
1177};
1178
1179template<>
1180struct clear_impl< aux::vector_tag<35> >
1181{
1182 template< typename Vector > struct apply
1183 {
1184 typedef vector0<> type;
1185 };
1186};
1187
1188template<
1189 typename T0, typename T1, typename T2, typename T3, typename T4
1190 , typename T5, typename T6, typename T7, typename T8, typename T9
1191 , typename T10, typename T11, typename T12, typename T13, typename T14
1192 , typename T15, typename T16, typename T17, typename T18, typename T19
1193 , typename T20, typename T21, typename T22, typename T23, typename T24
1194 , typename T25, typename T26, typename T27, typename T28, typename T29
1195 , typename T30, typename T31, typename T32, typename T33, typename T34
1196 , typename T35
1197 >
1198struct vector36
1199{
1200 typedef aux::vector_tag<36> tag;
1201 typedef vector36 type;
1202 typedef T0 item0;
1203 typedef T1 item1;
1204 typedef T2 item2;
1205 typedef T3 item3;
1206 typedef T4 item4;
1207 typedef T5 item5;
1208 typedef T6 item6;
1209 typedef T7 item7;
1210 typedef T8 item8;
1211 typedef T9 item9;
1212 typedef T10 item10;
1213 typedef T11 item11;
1214 typedef T12 item12;
1215 typedef T13 item13;
1216 typedef T14 item14;
1217 typedef T15 item15;
1218 typedef T16 item16;
1219 typedef T17 item17;
1220 typedef T18 item18;
1221 typedef T19 item19;
1222 typedef T20 item20;
1223 typedef T21 item21;
1224 typedef T22 item22;
1225 typedef T23 item23;
1226 typedef T24 item24;
1227 typedef T25 item25;
1228 typedef T26 item26;
1229 typedef T27 item27;
1230 typedef T28 item28;
1231 typedef T29 item29;
1232 typedef T30 item30;
1233 typedef T31 item31;
1234 typedef T32 item32;
1235 typedef T33 item33;
1236 typedef T34 item34;
1237 typedef T35 item35;
1238
1239
1240 typedef void_ item36;
1241 typedef T35 back;
1242 typedef v_iter< type,0 > begin;
1243 typedef v_iter< type,36 > end;
1244};
1245
1246template<>
1247struct push_front_impl< aux::vector_tag<35> >
1248{
1249 template< typename Vector, typename T > struct apply
1250 {
1251 typedef vector36<
1252 T
1253 ,
1254 typename Vector::item0, typename Vector::item1
1255 , typename Vector::item2, typename Vector::item3
1256 , typename Vector::item4, typename Vector::item5
1257 , typename Vector::item6, typename Vector::item7
1258 , typename Vector::item8, typename Vector::item9
1259 , typename Vector::item10, typename Vector::item11
1260 , typename Vector::item12, typename Vector::item13
1261 , typename Vector::item14, typename Vector::item15
1262 , typename Vector::item16, typename Vector::item17
1263 , typename Vector::item18, typename Vector::item19
1264 , typename Vector::item20, typename Vector::item21
1265 , typename Vector::item22, typename Vector::item23
1266 , typename Vector::item24, typename Vector::item25
1267 , typename Vector::item26, typename Vector::item27
1268 , typename Vector::item28, typename Vector::item29
1269 , typename Vector::item30, typename Vector::item31
1270 , typename Vector::item32, typename Vector::item33
1271 , typename Vector::item34
1272 > type;
1273 };
1274};
1275
1276template<>
1277struct pop_front_impl< aux::vector_tag<36> >
1278{
1279 template< typename Vector > struct apply
1280 {
1281 typedef vector35<
1282 typename Vector::item1, typename Vector::item2
1283 , typename Vector::item3, typename Vector::item4
1284 , typename Vector::item5, typename Vector::item6
1285 , typename Vector::item7, typename Vector::item8
1286 , typename Vector::item9, typename Vector::item10
1287 , typename Vector::item11, typename Vector::item12
1288 , typename Vector::item13, typename Vector::item14
1289 , typename Vector::item15, typename Vector::item16
1290 , typename Vector::item17, typename Vector::item18
1291 , typename Vector::item19, typename Vector::item20
1292 , typename Vector::item21, typename Vector::item22
1293 , typename Vector::item23, typename Vector::item24
1294 , typename Vector::item25, typename Vector::item26
1295 , typename Vector::item27, typename Vector::item28
1296 , typename Vector::item29, typename Vector::item30
1297 , typename Vector::item31, typename Vector::item32
1298 , typename Vector::item33, typename Vector::item34
1299 , typename Vector::item35
1300 > type;
1301 };
1302};
1303
1304template<>
1305struct push_back_impl< aux::vector_tag<35> >
1306{
1307 template< typename Vector, typename T > struct apply
1308 {
1309 typedef vector36<
1310 typename Vector::item0, typename Vector::item1
1311 , typename Vector::item2, typename Vector::item3
1312 , typename Vector::item4, typename Vector::item5
1313 , typename Vector::item6, typename Vector::item7
1314 , typename Vector::item8, typename Vector::item9
1315 , typename Vector::item10, typename Vector::item11
1316 , typename Vector::item12, typename Vector::item13
1317 , typename Vector::item14, typename Vector::item15
1318 , typename Vector::item16, typename Vector::item17
1319 , typename Vector::item18, typename Vector::item19
1320 , typename Vector::item20, typename Vector::item21
1321 , typename Vector::item22, typename Vector::item23
1322 , typename Vector::item24, typename Vector::item25
1323 , typename Vector::item26, typename Vector::item27
1324 , typename Vector::item28, typename Vector::item29
1325 , typename Vector::item30, typename Vector::item31
1326 , typename Vector::item32, typename Vector::item33
1327 , typename Vector::item34
1328 ,
1329 T
1330 > type;
1331 };
1332};
1333
1334template<>
1335struct pop_back_impl< aux::vector_tag<36> >
1336{
1337 template< typename Vector > struct apply
1338 {
1339 typedef vector35<
1340 typename Vector::item0, typename Vector::item1
1341 , typename Vector::item2, typename Vector::item3
1342 , typename Vector::item4, typename Vector::item5
1343 , typename Vector::item6, typename Vector::item7
1344 , typename Vector::item8, typename Vector::item9
1345 , typename Vector::item10, typename Vector::item11
1346 , typename Vector::item12, typename Vector::item13
1347 , typename Vector::item14, typename Vector::item15
1348 , typename Vector::item16, typename Vector::item17
1349 , typename Vector::item18, typename Vector::item19
1350 , typename Vector::item20, typename Vector::item21
1351 , typename Vector::item22, typename Vector::item23
1352 , typename Vector::item24, typename Vector::item25
1353 , typename Vector::item26, typename Vector::item27
1354 , typename Vector::item28, typename Vector::item29
1355 , typename Vector::item30, typename Vector::item31
1356 , typename Vector::item32, typename Vector::item33
1357 , typename Vector::item34
1358 > type;
1359 };
1360};
1361
1362namespace aux {
1363template<> struct v_at_impl<36>
1364{
1365 template< typename V_ > struct result_
1366 {
1367 typedef typename V_::item36 type;
1368 };
1369};
1370
1371}
1372
1373template<>
1374struct at_impl< aux::vector_tag<36> >
1375{
1376 template< typename V_, typename N > struct apply
1377 {
1378 typedef typename aux::v_at_impl<BOOST_MPL_AUX_VALUE_WKND(N)::value>
1379 ::template result_<V_>::type type;
1380 };
1381};
1382
1383template<>
1384struct front_impl< aux::vector_tag<36> >
1385{
1386 template< typename Vector > struct apply
1387 {
1388 typedef typename Vector::item0 type;
1389 };
1390};
1391
1392template<>
1393struct back_impl< aux::vector_tag<36> >
1394{
1395 template< typename Vector > struct apply
1396 {
1397 typedef typename Vector::back type;
1398 };
1399};
1400
1401template<>
1402struct empty_impl< aux::vector_tag<36> >
1403{
1404 template< typename Vector > struct apply
1405 : false_
1406 {
1407 };
1408};
1409
1410template<>
1411struct size_impl< aux::vector_tag<36> >
1412{
1413 template< typename Vector > struct apply
1414 : long_<36>
1415 {
1416 };
1417};
1418
1419template<>
1420struct O1_size_impl< aux::vector_tag<36> >
1421 : size_impl< aux::vector_tag<36> >
1422{
1423};
1424
1425template<>
1426struct clear_impl< aux::vector_tag<36> >
1427{
1428 template< typename Vector > struct apply
1429 {
1430 typedef vector0<> type;
1431 };
1432};
1433
1434template<
1435 typename T0, typename T1, typename T2, typename T3, typename T4
1436 , typename T5, typename T6, typename T7, typename T8, typename T9
1437 , typename T10, typename T11, typename T12, typename T13, typename T14
1438 , typename T15, typename T16, typename T17, typename T18, typename T19
1439 , typename T20, typename T21, typename T22, typename T23, typename T24
1440 , typename T25, typename T26, typename T27, typename T28, typename T29
1441 , typename T30, typename T31, typename T32, typename T33, typename T34
1442 , typename T35, typename T36
1443 >
1444struct vector37
1445{
1446 typedef aux::vector_tag<37> tag;
1447 typedef vector37 type;
1448 typedef T0 item0;
1449 typedef T1 item1;
1450 typedef T2 item2;
1451 typedef T3 item3;
1452 typedef T4 item4;
1453 typedef T5 item5;
1454 typedef T6 item6;
1455 typedef T7 item7;
1456 typedef T8 item8;
1457 typedef T9 item9;
1458 typedef T10 item10;
1459 typedef T11 item11;
1460 typedef T12 item12;
1461 typedef T13 item13;
1462 typedef T14 item14;
1463 typedef T15 item15;
1464 typedef T16 item16;
1465 typedef T17 item17;
1466 typedef T18 item18;
1467 typedef T19 item19;
1468 typedef T20 item20;
1469 typedef T21 item21;
1470 typedef T22 item22;
1471 typedef T23 item23;
1472 typedef T24 item24;
1473 typedef T25 item25;
1474 typedef T26 item26;
1475 typedef T27 item27;
1476 typedef T28 item28;
1477 typedef T29 item29;
1478 typedef T30 item30;
1479 typedef T31 item31;
1480 typedef T32 item32;
1481 typedef T33 item33;
1482 typedef T34 item34;
1483 typedef T35 item35;
1484 typedef T36 item36;
1485
1486
1487 typedef void_ item37;
1488 typedef T36 back;
1489 typedef v_iter< type,0 > begin;
1490 typedef v_iter< type,37 > end;
1491};
1492
1493template<>
1494struct push_front_impl< aux::vector_tag<36> >
1495{
1496 template< typename Vector, typename T > struct apply
1497 {
1498 typedef vector37<
1499 T
1500 ,
1501 typename Vector::item0, typename Vector::item1
1502 , typename Vector::item2, typename Vector::item3
1503 , typename Vector::item4, typename Vector::item5
1504 , typename Vector::item6, typename Vector::item7
1505 , typename Vector::item8, typename Vector::item9
1506 , typename Vector::item10, typename Vector::item11
1507 , typename Vector::item12, typename Vector::item13
1508 , typename Vector::item14, typename Vector::item15
1509 , typename Vector::item16, typename Vector::item17
1510 , typename Vector::item18, typename Vector::item19
1511 , typename Vector::item20, typename Vector::item21
1512 , typename Vector::item22, typename Vector::item23
1513 , typename Vector::item24, typename Vector::item25
1514 , typename Vector::item26, typename Vector::item27
1515 , typename Vector::item28, typename Vector::item29
1516 , typename Vector::item30, typename Vector::item31
1517 , typename Vector::item32, typename Vector::item33
1518 , typename Vector::item34, typename Vector::item35
1519 > type;
1520 };
1521};
1522
1523template<>
1524struct pop_front_impl< aux::vector_tag<37> >
1525{
1526 template< typename Vector > struct apply
1527 {
1528 typedef vector36<
1529 typename Vector::item1, typename Vector::item2
1530 , typename Vector::item3, typename Vector::item4
1531 , typename Vector::item5, typename Vector::item6
1532 , typename Vector::item7, typename Vector::item8
1533 , typename Vector::item9, typename Vector::item10
1534 , typename Vector::item11, typename Vector::item12
1535 , typename Vector::item13, typename Vector::item14
1536 , typename Vector::item15, typename Vector::item16
1537 , typename Vector::item17, typename Vector::item18
1538 , typename Vector::item19, typename Vector::item20
1539 , typename Vector::item21, typename Vector::item22
1540 , typename Vector::item23, typename Vector::item24
1541 , typename Vector::item25, typename Vector::item26
1542 , typename Vector::item27, typename Vector::item28
1543 , typename Vector::item29, typename Vector::item30
1544 , typename Vector::item31, typename Vector::item32
1545 , typename Vector::item33, typename Vector::item34
1546 , typename Vector::item35, typename Vector::item36
1547 > type;
1548 };
1549};
1550
1551template<>
1552struct push_back_impl< aux::vector_tag<36> >
1553{
1554 template< typename Vector, typename T > struct apply
1555 {
1556 typedef vector37<
1557 typename Vector::item0, typename Vector::item1
1558 , typename Vector::item2, typename Vector::item3
1559 , typename Vector::item4, typename Vector::item5
1560 , typename Vector::item6, typename Vector::item7
1561 , typename Vector::item8, typename Vector::item9
1562 , typename Vector::item10, typename Vector::item11
1563 , typename Vector::item12, typename Vector::item13
1564 , typename Vector::item14, typename Vector::item15
1565 , typename Vector::item16, typename Vector::item17
1566 , typename Vector::item18, typename Vector::item19
1567 , typename Vector::item20, typename Vector::item21
1568 , typename Vector::item22, typename Vector::item23
1569 , typename Vector::item24, typename Vector::item25
1570 , typename Vector::item26, typename Vector::item27
1571 , typename Vector::item28, typename Vector::item29
1572 , typename Vector::item30, typename Vector::item31
1573 , typename Vector::item32, typename Vector::item33
1574 , typename Vector::item34, typename Vector::item35
1575 ,
1576 T
1577 > type;
1578 };
1579};
1580
1581template<>
1582struct pop_back_impl< aux::vector_tag<37> >
1583{
1584 template< typename Vector > struct apply
1585 {
1586 typedef vector36<
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, typename Vector::item27
1601 , typename Vector::item28, typename Vector::item29
1602 , typename Vector::item30, typename Vector::item31
1603 , typename Vector::item32, typename Vector::item33
1604 , typename Vector::item34, typename Vector::item35
1605 > type;
1606 };
1607};
1608
1609namespace aux {
1610template<> struct v_at_impl<37>
1611{
1612 template< typename V_ > struct result_
1613 {
1614 typedef typename V_::item37 type;
1615 };
1616};
1617
1618}
1619
1620template<>
1621struct at_impl< aux::vector_tag<37> >
1622{
1623 template< typename V_, typename N > struct apply
1624 {
1625 typedef typename aux::v_at_impl<BOOST_MPL_AUX_VALUE_WKND(N)::value>
1626 ::template result_<V_>::type type;
1627 };
1628};
1629
1630template<>
1631struct front_impl< aux::vector_tag<37> >
1632{
1633 template< typename Vector > struct apply
1634 {
1635 typedef typename Vector::item0 type;
1636 };
1637};
1638
1639template<>
1640struct back_impl< aux::vector_tag<37> >
1641{
1642 template< typename Vector > struct apply
1643 {
1644 typedef typename Vector::back type;
1645 };
1646};
1647
1648template<>
1649struct empty_impl< aux::vector_tag<37> >
1650{
1651 template< typename Vector > struct apply
1652 : false_
1653 {
1654 };
1655};
1656
1657template<>
1658struct size_impl< aux::vector_tag<37> >
1659{
1660 template< typename Vector > struct apply
1661 : long_<37>
1662 {
1663 };
1664};
1665
1666template<>
1667struct O1_size_impl< aux::vector_tag<37> >
1668 : size_impl< aux::vector_tag<37> >
1669{
1670};
1671
1672template<>
1673struct clear_impl< aux::vector_tag<37> >
1674{
1675 template< typename Vector > struct apply
1676 {
1677 typedef vector0<> type;
1678 };
1679};
1680
1681template<
1682 typename T0, typename T1, typename T2, typename T3, typename T4
1683 , typename T5, typename T6, typename T7, typename T8, typename T9
1684 , typename T10, typename T11, typename T12, typename T13, typename T14
1685 , typename T15, typename T16, typename T17, typename T18, typename T19
1686 , typename T20, typename T21, typename T22, typename T23, typename T24
1687 , typename T25, typename T26, typename T27, typename T28, typename T29
1688 , typename T30, typename T31, typename T32, typename T33, typename T34
1689 , typename T35, typename T36, typename T37
1690 >
1691struct vector38
1692{
1693 typedef aux::vector_tag<38> tag;
1694 typedef vector38 type;
1695 typedef T0 item0;
1696 typedef T1 item1;
1697 typedef T2 item2;
1698 typedef T3 item3;
1699 typedef T4 item4;
1700 typedef T5 item5;
1701 typedef T6 item6;
1702 typedef T7 item7;
1703 typedef T8 item8;
1704 typedef T9 item9;
1705 typedef T10 item10;
1706 typedef T11 item11;
1707 typedef T12 item12;
1708 typedef T13 item13;
1709 typedef T14 item14;
1710 typedef T15 item15;
1711 typedef T16 item16;
1712 typedef T17 item17;
1713 typedef T18 item18;
1714 typedef T19 item19;
1715 typedef T20 item20;
1716 typedef T21 item21;
1717 typedef T22 item22;
1718 typedef T23 item23;
1719 typedef T24 item24;
1720 typedef T25 item25;
1721 typedef T26 item26;
1722 typedef T27 item27;
1723 typedef T28 item28;
1724 typedef T29 item29;
1725 typedef T30 item30;
1726 typedef T31 item31;
1727 typedef T32 item32;
1728 typedef T33 item33;
1729 typedef T34 item34;
1730 typedef T35 item35;
1731 typedef T36 item36;
1732 typedef T37 item37;
1733
1734
1735 typedef void_ item38;
1736 typedef T37 back;
1737 typedef v_iter< type,0 > begin;
1738 typedef v_iter< type,38 > end;
1739};
1740
1741template<>
1742struct push_front_impl< aux::vector_tag<37> >
1743{
1744 template< typename Vector, typename T > struct apply
1745 {
1746 typedef vector38<
1747 T
1748 ,
1749 typename Vector::item0, typename Vector::item1
1750 , typename Vector::item2, typename Vector::item3
1751 , typename Vector::item4, typename Vector::item5
1752 , typename Vector::item6, typename Vector::item7
1753 , typename Vector::item8, typename Vector::item9
1754 , typename Vector::item10, typename Vector::item11
1755 , typename Vector::item12, typename Vector::item13
1756 , typename Vector::item14, typename Vector::item15
1757 , typename Vector::item16, typename Vector::item17
1758 , typename Vector::item18, typename Vector::item19
1759 , typename Vector::item20, typename Vector::item21
1760 , typename Vector::item22, typename Vector::item23
1761 , typename Vector::item24, typename Vector::item25
1762 , typename Vector::item26, typename Vector::item27
1763 , typename Vector::item28, typename Vector::item29
1764 , typename Vector::item30, typename Vector::item31
1765 , typename Vector::item32, typename Vector::item33
1766 , typename Vector::item34, typename Vector::item35
1767 , typename Vector::item36
1768 > type;
1769 };
1770};
1771
1772template<>
1773struct pop_front_impl< aux::vector_tag<38> >
1774{
1775 template< typename Vector > struct apply
1776 {
1777 typedef vector37<
1778 typename Vector::item1, typename Vector::item2
1779 , typename Vector::item3, typename Vector::item4
1780 , typename Vector::item5, typename Vector::item6
1781 , typename Vector::item7, typename Vector::item8
1782 , typename Vector::item9, typename Vector::item10
1783 , typename Vector::item11, typename Vector::item12
1784 , typename Vector::item13, typename Vector::item14
1785 , typename Vector::item15, typename Vector::item16
1786 , typename Vector::item17, typename Vector::item18
1787 , typename Vector::item19, typename Vector::item20
1788 , typename Vector::item21, typename Vector::item22
1789 , typename Vector::item23, typename Vector::item24
1790 , typename Vector::item25, typename Vector::item26
1791 , typename Vector::item27, typename Vector::item28
1792 , typename Vector::item29, typename Vector::item30
1793 , typename Vector::item31, typename Vector::item32
1794 , typename Vector::item33, typename Vector::item34
1795 , typename Vector::item35, typename Vector::item36
1796 , typename Vector::item37
1797 > type;
1798 };
1799};
1800
1801template<>
1802struct push_back_impl< aux::vector_tag<37> >
1803{
1804 template< typename Vector, typename T > struct apply
1805 {
1806 typedef vector38<
1807 typename Vector::item0, typename Vector::item1
1808 , typename Vector::item2, typename Vector::item3
1809 , typename Vector::item4, typename Vector::item5
1810 , typename Vector::item6, typename Vector::item7
1811 , typename Vector::item8, typename Vector::item9
1812 , typename Vector::item10, typename Vector::item11
1813 , typename Vector::item12, typename Vector::item13
1814 , typename Vector::item14, typename Vector::item15
1815 , typename Vector::item16, typename Vector::item17
1816 , typename Vector::item18, typename Vector::item19
1817 , typename Vector::item20, typename Vector::item21
1818 , typename Vector::item22, typename Vector::item23
1819 , typename Vector::item24, typename Vector::item25
1820 , typename Vector::item26, typename Vector::item27
1821 , typename Vector::item28, typename Vector::item29
1822 , typename Vector::item30, typename Vector::item31
1823 , typename Vector::item32, typename Vector::item33
1824 , typename Vector::item34, typename Vector::item35
1825 , typename Vector::item36
1826 ,
1827 T
1828 > type;
1829 };
1830};
1831
1832template<>
1833struct pop_back_impl< aux::vector_tag<38> >
1834{
1835 template< typename Vector > struct apply
1836 {
1837 typedef vector37<
1838 typename Vector::item0, typename Vector::item1
1839 , typename Vector::item2, typename Vector::item3
1840 , typename Vector::item4, typename Vector::item5
1841 , typename Vector::item6, typename Vector::item7
1842 , typename Vector::item8, typename Vector::item9
1843 , typename Vector::item10, typename Vector::item11
1844 , typename Vector::item12, typename Vector::item13
1845 , typename Vector::item14, typename Vector::item15
1846 , typename Vector::item16, typename Vector::item17
1847 , typename Vector::item18, typename Vector::item19
1848 , typename Vector::item20, typename Vector::item21
1849 , typename Vector::item22, typename Vector::item23
1850 , typename Vector::item24, typename Vector::item25
1851 , typename Vector::item26, typename Vector::item27
1852 , typename Vector::item28, typename Vector::item29
1853 , typename Vector::item30, typename Vector::item31
1854 , typename Vector::item32, typename Vector::item33
1855 , typename Vector::item34, typename Vector::item35
1856 , typename Vector::item36
1857 > type;
1858 };
1859};
1860
1861namespace aux {
1862template<> struct v_at_impl<38>
1863{
1864 template< typename V_ > struct result_
1865 {
1866 typedef typename V_::item38 type;
1867 };
1868};
1869
1870}
1871
1872template<>
1873struct at_impl< aux::vector_tag<38> >
1874{
1875 template< typename V_, typename N > struct apply
1876 {
1877 typedef typename aux::v_at_impl<BOOST_MPL_AUX_VALUE_WKND(N)::value>
1878 ::template result_<V_>::type type;
1879 };
1880};
1881
1882template<>
1883struct front_impl< aux::vector_tag<38> >
1884{
1885 template< typename Vector > struct apply
1886 {
1887 typedef typename Vector::item0 type;
1888 };
1889};
1890
1891template<>
1892struct back_impl< aux::vector_tag<38> >
1893{
1894 template< typename Vector > struct apply
1895 {
1896 typedef typename Vector::back type;
1897 };
1898};
1899
1900template<>
1901struct empty_impl< aux::vector_tag<38> >
1902{
1903 template< typename Vector > struct apply
1904 : false_
1905 {
1906 };
1907};
1908
1909template<>
1910struct size_impl< aux::vector_tag<38> >
1911{
1912 template< typename Vector > struct apply
1913 : long_<38>
1914 {
1915 };
1916};
1917
1918template<>
1919struct O1_size_impl< aux::vector_tag<38> >
1920 : size_impl< aux::vector_tag<38> >
1921{
1922};
1923
1924template<>
1925struct clear_impl< aux::vector_tag<38> >
1926{
1927 template< typename Vector > struct apply
1928 {
1929 typedef vector0<> type;
1930 };
1931};
1932
1933template<
1934 typename T0, typename T1, typename T2, typename T3, typename T4
1935 , typename T5, typename T6, typename T7, typename T8, typename T9
1936 , typename T10, typename T11, typename T12, typename T13, typename T14
1937 , typename T15, typename T16, typename T17, typename T18, typename T19
1938 , typename T20, typename T21, typename T22, typename T23, typename T24
1939 , typename T25, typename T26, typename T27, typename T28, typename T29
1940 , typename T30, typename T31, typename T32, typename T33, typename T34
1941 , typename T35, typename T36, typename T37, typename T38
1942 >
1943struct vector39
1944{
1945 typedef aux::vector_tag<39> tag;
1946 typedef vector39 type;
1947 typedef T0 item0;
1948 typedef T1 item1;
1949 typedef T2 item2;
1950 typedef T3 item3;
1951 typedef T4 item4;
1952 typedef T5 item5;
1953 typedef T6 item6;
1954 typedef T7 item7;
1955 typedef T8 item8;
1956 typedef T9 item9;
1957 typedef T10 item10;
1958 typedef T11 item11;
1959 typedef T12 item12;
1960 typedef T13 item13;
1961 typedef T14 item14;
1962 typedef T15 item15;
1963 typedef T16 item16;
1964 typedef T17 item17;
1965 typedef T18 item18;
1966 typedef T19 item19;
1967 typedef T20 item20;
1968 typedef T21 item21;
1969 typedef T22 item22;
1970 typedef T23 item23;
1971 typedef T24 item24;
1972 typedef T25 item25;
1973 typedef T26 item26;
1974 typedef T27 item27;
1975 typedef T28 item28;
1976 typedef T29 item29;
1977 typedef T30 item30;
1978 typedef T31 item31;
1979 typedef T32 item32;
1980 typedef T33 item33;
1981 typedef T34 item34;
1982 typedef T35 item35;
1983 typedef T36 item36;
1984 typedef T37 item37;
1985 typedef T38 item38;
1986
1987
1988 typedef void_ item39;
1989 typedef T38 back;
1990 typedef v_iter< type,0 > begin;
1991 typedef v_iter< type,39 > end;
1992};
1993
1994template<>
1995struct push_front_impl< aux::vector_tag<38> >
1996{
1997 template< typename Vector, typename T > struct apply
1998 {
1999 typedef vector39<
2000 T
2001 ,
2002 typename Vector::item0, typename Vector::item1
2003 , typename Vector::item2, typename Vector::item3
2004 , typename Vector::item4, typename Vector::item5
2005 , typename Vector::item6, typename Vector::item7
2006 , typename Vector::item8, typename Vector::item9
2007 , typename Vector::item10, typename Vector::item11
2008 , typename Vector::item12, typename Vector::item13
2009 , typename Vector::item14, typename Vector::item15
2010 , typename Vector::item16, typename Vector::item17
2011 , typename Vector::item18, typename Vector::item19
2012 , typename Vector::item20, typename Vector::item21
2013 , typename Vector::item22, typename Vector::item23
2014 , typename Vector::item24, typename Vector::item25
2015 , typename Vector::item26, typename Vector::item27
2016 , typename Vector::item28, typename Vector::item29
2017 , typename Vector::item30, typename Vector::item31
2018 , typename Vector::item32, typename Vector::item33
2019 , typename Vector::item34, typename Vector::item35
2020 , typename Vector::item36, typename Vector::item37
2021 > type;
2022 };
2023};
2024
2025template<>
2026struct pop_front_impl< aux::vector_tag<39> >
2027{
2028 template< typename Vector > struct apply
2029 {
2030 typedef vector38<
2031 typename Vector::item1, typename Vector::item2
2032 , typename Vector::item3, typename Vector::item4
2033 , typename Vector::item5, typename Vector::item6
2034 , typename Vector::item7, typename Vector::item8
2035 , typename Vector::item9, typename Vector::item10
2036 , typename Vector::item11, typename Vector::item12
2037 , typename Vector::item13, typename Vector::item14
2038 , typename Vector::item15, typename Vector::item16
2039 , typename Vector::item17, typename Vector::item18
2040 , typename Vector::item19, typename Vector::item20
2041 , typename Vector::item21, typename Vector::item22
2042 , typename Vector::item23, typename Vector::item24
2043 , typename Vector::item25, typename Vector::item26
2044 , typename Vector::item27, typename Vector::item28
2045 , typename Vector::item29, typename Vector::item30
2046 , typename Vector::item31, typename Vector::item32
2047 , typename Vector::item33, typename Vector::item34
2048 , typename Vector::item35, typename Vector::item36
2049 , typename Vector::item37, typename Vector::item38
2050 > type;
2051 };
2052};
2053
2054template<>
2055struct push_back_impl< aux::vector_tag<38> >
2056{
2057 template< typename Vector, typename T > struct apply
2058 {
2059 typedef vector39<
2060 typename Vector::item0, typename Vector::item1
2061 , typename Vector::item2, typename Vector::item3
2062 , typename Vector::item4, typename Vector::item5
2063 , typename Vector::item6, typename Vector::item7
2064 , typename Vector::item8, typename Vector::item9
2065 , typename Vector::item10, typename Vector::item11
2066 , typename Vector::item12, typename Vector::item13
2067 , typename Vector::item14, typename Vector::item15
2068 , typename Vector::item16, typename Vector::item17
2069 , typename Vector::item18, typename Vector::item19
2070 , typename Vector::item20, typename Vector::item21
2071 , typename Vector::item22, typename Vector::item23
2072 , typename Vector::item24, typename Vector::item25
2073 , typename Vector::item26, typename Vector::item27
2074 , typename Vector::item28, typename Vector::item29
2075 , typename Vector::item30, typename Vector::item31
2076 , typename Vector::item32, typename Vector::item33
2077 , typename Vector::item34, typename Vector::item35
2078 , typename Vector::item36, typename Vector::item37
2079 ,
2080 T
2081 > type;
2082 };
2083};
2084
2085template<>
2086struct pop_back_impl< aux::vector_tag<39> >
2087{
2088 template< typename Vector > struct apply
2089 {
2090 typedef vector38<
2091 typename Vector::item0, typename Vector::item1
2092 , typename Vector::item2, typename Vector::item3
2093 , typename Vector::item4, typename Vector::item5
2094 , typename Vector::item6, typename Vector::item7
2095 , typename Vector::item8, typename Vector::item9
2096 , typename Vector::item10, typename Vector::item11
2097 , typename Vector::item12, typename Vector::item13
2098 , typename Vector::item14, typename Vector::item15
2099 , typename Vector::item16, typename Vector::item17
2100 , typename Vector::item18, typename Vector::item19
2101 , typename Vector::item20, typename Vector::item21
2102 , typename Vector::item22, typename Vector::item23
2103 , typename Vector::item24, typename Vector::item25
2104 , typename Vector::item26, typename Vector::item27
2105 , typename Vector::item28, typename Vector::item29
2106 , typename Vector::item30, typename Vector::item31
2107 , typename Vector::item32, typename Vector::item33
2108 , typename Vector::item34, typename Vector::item35
2109 , typename Vector::item36, typename Vector::item37
2110 > type;
2111 };
2112};
2113
2114namespace aux {
2115template<> struct v_at_impl<39>
2116{
2117 template< typename V_ > struct result_
2118 {
2119 typedef typename V_::item39 type;
2120 };
2121};
2122
2123}
2124
2125template<>
2126struct at_impl< aux::vector_tag<39> >
2127{
2128 template< typename V_, typename N > struct apply
2129 {
2130 typedef typename aux::v_at_impl<BOOST_MPL_AUX_VALUE_WKND(N)::value>
2131 ::template result_<V_>::type type;
2132 };
2133};
2134
2135template<>
2136struct front_impl< aux::vector_tag<39> >
2137{
2138 template< typename Vector > struct apply
2139 {
2140 typedef typename Vector::item0 type;
2141 };
2142};
2143
2144template<>
2145struct back_impl< aux::vector_tag<39> >
2146{
2147 template< typename Vector > struct apply
2148 {
2149 typedef typename Vector::back type;
2150 };
2151};
2152
2153template<>
2154struct empty_impl< aux::vector_tag<39> >
2155{
2156 template< typename Vector > struct apply
2157 : false_
2158 {
2159 };
2160};
2161
2162template<>
2163struct size_impl< aux::vector_tag<39> >
2164{
2165 template< typename Vector > struct apply
2166 : long_<39>
2167 {
2168 };
2169};
2170
2171template<>
2172struct O1_size_impl< aux::vector_tag<39> >
2173 : size_impl< aux::vector_tag<39> >
2174{
2175};
2176
2177template<>
2178struct clear_impl< aux::vector_tag<39> >
2179{
2180 template< typename Vector > struct apply
2181 {
2182 typedef vector0<> type;
2183 };
2184};
2185
2186template<
2187 typename T0, typename T1, typename T2, typename T3, typename T4
2188 , typename T5, typename T6, typename T7, typename T8, typename T9
2189 , typename T10, typename T11, typename T12, typename T13, typename T14
2190 , typename T15, typename T16, typename T17, typename T18, typename T19
2191 , typename T20, typename T21, typename T22, typename T23, typename T24
2192 , typename T25, typename T26, typename T27, typename T28, typename T29
2193 , typename T30, typename T31, typename T32, typename T33, typename T34
2194 , typename T35, typename T36, typename T37, typename T38, typename T39
2195 >
2196struct vector40
2197{
2198 typedef aux::vector_tag<40> tag;
2199 typedef vector40 type;
2200 typedef T0 item0;
2201 typedef T1 item1;
2202 typedef T2 item2;
2203 typedef T3 item3;
2204 typedef T4 item4;
2205 typedef T5 item5;
2206 typedef T6 item6;
2207 typedef T7 item7;
2208 typedef T8 item8;
2209 typedef T9 item9;
2210 typedef T10 item10;
2211 typedef T11 item11;
2212 typedef T12 item12;
2213 typedef T13 item13;
2214 typedef T14 item14;
2215 typedef T15 item15;
2216 typedef T16 item16;
2217 typedef T17 item17;
2218 typedef T18 item18;
2219 typedef T19 item19;
2220 typedef T20 item20;
2221 typedef T21 item21;
2222 typedef T22 item22;
2223 typedef T23 item23;
2224 typedef T24 item24;
2225 typedef T25 item25;
2226 typedef T26 item26;
2227 typedef T27 item27;
2228 typedef T28 item28;
2229 typedef T29 item29;
2230 typedef T30 item30;
2231 typedef T31 item31;
2232 typedef T32 item32;
2233 typedef T33 item33;
2234 typedef T34 item34;
2235 typedef T35 item35;
2236 typedef T36 item36;
2237 typedef T37 item37;
2238 typedef T38 item38;
2239 typedef T39 item39;
2240
2241
2242 typedef void_ item40;
2243 typedef T39 back;
2244 typedef v_iter< type,0 > begin;
2245 typedef v_iter< type,40 > end;
2246};
2247
2248template<>
2249struct push_front_impl< aux::vector_tag<39> >
2250{
2251 template< typename Vector, typename T > struct apply
2252 {
2253 typedef vector40<
2254 T
2255 ,
2256 typename Vector::item0, typename Vector::item1
2257 , typename Vector::item2, typename Vector::item3
2258 , typename Vector::item4, typename Vector::item5
2259 , typename Vector::item6, typename Vector::item7
2260 , typename Vector::item8, typename Vector::item9
2261 , typename Vector::item10, typename Vector::item11
2262 , typename Vector::item12, typename Vector::item13
2263 , typename Vector::item14, typename Vector::item15
2264 , typename Vector::item16, typename Vector::item17
2265 , typename Vector::item18, typename Vector::item19
2266 , typename Vector::item20, typename Vector::item21
2267 , typename Vector::item22, typename Vector::item23
2268 , typename Vector::item24, typename Vector::item25
2269 , typename Vector::item26, typename Vector::item27
2270 , typename Vector::item28, typename Vector::item29
2271 , typename Vector::item30, typename Vector::item31
2272 , typename Vector::item32, typename Vector::item33
2273 , typename Vector::item34, typename Vector::item35
2274 , typename Vector::item36, typename Vector::item37
2275 , typename Vector::item38
2276 > type;
2277 };
2278};
2279
2280template<>
2281struct pop_front_impl< aux::vector_tag<40> >
2282{
2283 template< typename Vector > struct apply
2284 {
2285 typedef vector39<
2286 typename Vector::item1, typename Vector::item2
2287 , typename Vector::item3, typename Vector::item4
2288 , typename Vector::item5, typename Vector::item6
2289 , typename Vector::item7, typename Vector::item8
2290 , typename Vector::item9, typename Vector::item10
2291 , typename Vector::item11, typename Vector::item12
2292 , typename Vector::item13, typename Vector::item14
2293 , typename Vector::item15, typename Vector::item16
2294 , typename Vector::item17, typename Vector::item18
2295 , typename Vector::item19, typename Vector::item20
2296 , typename Vector::item21, typename Vector::item22
2297 , typename Vector::item23, typename Vector::item24
2298 , typename Vector::item25, typename Vector::item26
2299 , typename Vector::item27, typename Vector::item28
2300 , typename Vector::item29, typename Vector::item30
2301 , typename Vector::item31, typename Vector::item32
2302 , typename Vector::item33, typename Vector::item34
2303 , typename Vector::item35, typename Vector::item36
2304 , typename Vector::item37, typename Vector::item38
2305 , typename Vector::item39
2306 > type;
2307 };
2308};
2309
2310template<>
2311struct push_back_impl< aux::vector_tag<39> >
2312{
2313 template< typename Vector, typename T > struct apply
2314 {
2315 typedef vector40<
2316 typename Vector::item0, typename Vector::item1
2317 , typename Vector::item2, typename Vector::item3
2318 , typename Vector::item4, typename Vector::item5
2319 , typename Vector::item6, typename Vector::item7
2320 , typename Vector::item8, typename Vector::item9
2321 , typename Vector::item10, typename Vector::item11
2322 , typename Vector::item12, typename Vector::item13
2323 , typename Vector::item14, typename Vector::item15
2324 , typename Vector::item16, typename Vector::item17
2325 , typename Vector::item18, typename Vector::item19
2326 , typename Vector::item20, typename Vector::item21
2327 , typename Vector::item22, typename Vector::item23
2328 , typename Vector::item24, typename Vector::item25
2329 , typename Vector::item26, typename Vector::item27
2330 , typename Vector::item28, typename Vector::item29
2331 , typename Vector::item30, typename Vector::item31
2332 , typename Vector::item32, typename Vector::item33
2333 , typename Vector::item34, typename Vector::item35
2334 , typename Vector::item36, typename Vector::item37
2335 , typename Vector::item38
2336 ,
2337 T
2338 > type;
2339 };
2340};
2341
2342template<>
2343struct pop_back_impl< aux::vector_tag<40> >
2344{
2345 template< typename Vector > struct apply
2346 {
2347 typedef vector39<
2348 typename Vector::item0, typename Vector::item1
2349 , typename Vector::item2, typename Vector::item3
2350 , typename Vector::item4, typename Vector::item5
2351 , typename Vector::item6, typename Vector::item7
2352 , typename Vector::item8, typename Vector::item9
2353 , typename Vector::item10, typename Vector::item11
2354 , typename Vector::item12, typename Vector::item13
2355 , typename Vector::item14, typename Vector::item15
2356 , typename Vector::item16, typename Vector::item17
2357 , typename Vector::item18, typename Vector::item19
2358 , typename Vector::item20, typename Vector::item21
2359 , typename Vector::item22, typename Vector::item23
2360 , typename Vector::item24, typename Vector::item25
2361 , typename Vector::item26, typename Vector::item27
2362 , typename Vector::item28, typename Vector::item29
2363 , typename Vector::item30, typename Vector::item31
2364 , typename Vector::item32, typename Vector::item33
2365 , typename Vector::item34, typename Vector::item35
2366 , typename Vector::item36, typename Vector::item37
2367 , typename Vector::item38
2368 > type;
2369 };
2370};
2371
2372namespace aux {
2373template<> struct v_at_impl<40>
2374{
2375 template< typename V_ > struct result_
2376 {
2377 typedef typename V_::item40 type;
2378 };
2379};
2380
2381}
2382
2383template<>
2384struct at_impl< aux::vector_tag<40> >
2385{
2386 template< typename V_, typename N > struct apply
2387 {
2388 typedef typename aux::v_at_impl<BOOST_MPL_AUX_VALUE_WKND(N)::value>
2389 ::template result_<V_>::type type;
2390 };
2391};
2392
2393template<>
2394struct front_impl< aux::vector_tag<40> >
2395{
2396 template< typename Vector > struct apply
2397 {
2398 typedef typename Vector::item0 type;
2399 };
2400};
2401
2402template<>
2403struct back_impl< aux::vector_tag<40> >
2404{
2405 template< typename Vector > struct apply
2406 {
2407 typedef typename Vector::back type;
2408 };
2409};
2410
2411template<>
2412struct empty_impl< aux::vector_tag<40> >
2413{
2414 template< typename Vector > struct apply
2415 : false_
2416 {
2417 };
2418};
2419
2420template<>
2421struct size_impl< aux::vector_tag<40> >
2422{
2423 template< typename Vector > struct apply
2424 : long_<40>
2425 {
2426 };
2427};
2428
2429template<>
2430struct O1_size_impl< aux::vector_tag<40> >
2431 : size_impl< aux::vector_tag<40> >
2432{
2433};
2434
2435template<>
2436struct clear_impl< aux::vector_tag<40> >
2437{
2438 template< typename Vector > struct apply
2439 {
2440 typedef vector0<> type;
2441 };
2442};
2443
2444}}