Home | History | Annotate | Download | only in gcc
      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.hpp" header
     10 // -- DO NOT modify by hand!
     11 
     12 namespace boost { namespace mpl {
     13 
     14 template<
     15       typename T0 = na, typename T1 = na, typename T2 = na, typename T3 = na
     16     , typename T4 = na, typename T5 = na, typename T6 = na, typename T7 = na
     17     , typename T8 = na, typename T9 = na, typename T10 = na, typename T11 = na
     18     , typename T12 = na, typename T13 = na, typename T14 = na
     19     , typename T15 = na, typename T16 = na, typename T17 = na
     20     , typename T18 = na, typename T19 = na
     21     >
     22 struct vector;
     23 
     24 template<
     25 
     26     >
     27 struct vector<
     28           na, na, na, na, na, na, na, na, na, na, na, na, na, na, na, na, na
     29         , na, na, na
     30         >
     31     : vector0<  >
     32 {
     33     typedef vector0<  >::type type;
     34 };
     35 
     36 template<
     37       typename T0
     38     >
     39 struct vector<
     40           T0, na, na, na, na, na, na, na, na, na, na, na, na, na, na, na, na
     41         , na, na, na
     42         >
     43     : vector1<T0>
     44 {
     45     typedef typename vector1<T0>::type type;
     46 };
     47 
     48 template<
     49       typename T0, typename T1
     50     >
     51 struct vector<
     52           T0, T1, na, na, na, na, na, na, na, na, na, na, na, na, na, na, na
     53         , na, na, na
     54         >
     55     : vector2< T0,T1 >
     56 {
     57     typedef typename vector2< T0,T1 >::type type;
     58 };
     59 
     60 template<
     61       typename T0, typename T1, typename T2
     62     >
     63 struct vector<
     64           T0, T1, T2, na, na, na, na, na, na, na, na, na, na, na, na, na, na
     65         , na, na, na
     66         >
     67     : vector3< T0,T1,T2 >
     68 {
     69     typedef typename vector3< T0,T1,T2 >::type type;
     70 };
     71 
     72 template<
     73       typename T0, typename T1, typename T2, typename T3
     74     >
     75 struct vector<
     76           T0, T1, T2, T3, na, na, na, na, na, na, na, na, na, na, na, na, na
     77         , na, na, na
     78         >
     79     : vector4< T0,T1,T2,T3 >
     80 {
     81     typedef typename vector4< T0,T1,T2,T3 >::type type;
     82 };
     83 
     84 template<
     85       typename T0, typename T1, typename T2, typename T3, typename T4
     86     >
     87 struct vector<
     88           T0, T1, T2, T3, T4, na, na, na, na, na, na, na, na, na, na, na, na
     89         , na, na, na
     90         >
     91     : vector5< T0,T1,T2,T3,T4 >
     92 {
     93     typedef typename vector5< T0,T1,T2,T3,T4 >::type type;
     94 };
     95 
     96 template<
     97       typename T0, typename T1, typename T2, typename T3, typename T4
     98     , typename T5
     99     >
    100 struct vector<
    101           T0, T1, T2, T3, T4, T5, na, na, na, na, na, na, na, na, na, na, na
    102         , na, na, na
    103         >
    104     : vector6< T0,T1,T2,T3,T4,T5 >
    105 {
    106     typedef typename vector6< T0,T1,T2,T3,T4,T5 >::type type;
    107 };
    108 
    109 template<
    110       typename T0, typename T1, typename T2, typename T3, typename T4
    111     , typename T5, typename T6
    112     >
    113 struct vector<
    114           T0, T1, T2, T3, T4, T5, T6, na, na, na, na, na, na, na, na, na, na
    115         , na, na, na
    116         >
    117     : vector7< T0,T1,T2,T3,T4,T5,T6 >
    118 {
    119     typedef typename vector7< T0,T1,T2,T3,T4,T5,T6 >::type type;
    120 };
    121 
    122 template<
    123       typename T0, typename T1, typename T2, typename T3, typename T4
    124     , typename T5, typename T6, typename T7
    125     >
    126 struct vector<
    127           T0, T1, T2, T3, T4, T5, T6, T7, na, na, na, na, na, na, na, na, na
    128         , na, na, na
    129         >
    130     : vector8< T0,T1,T2,T3,T4,T5,T6,T7 >
    131 {
    132     typedef typename vector8< T0,T1,T2,T3,T4,T5,T6,T7 >::type type;
    133 };
    134 
    135 template<
    136       typename T0, typename T1, typename T2, typename T3, typename T4
    137     , typename T5, typename T6, typename T7, typename T8
    138     >
    139 struct vector<
    140           T0, T1, T2, T3, T4, T5, T6, T7, T8, na, na, na, na, na, na, na, na
    141         , na, na, na
    142         >
    143     : vector9< T0,T1,T2,T3,T4,T5,T6,T7,T8 >
    144 {
    145     typedef typename vector9< T0,T1,T2,T3,T4,T5,T6,T7,T8 >::type type;
    146 };
    147 
    148 template<
    149       typename T0, typename T1, typename T2, typename T3, typename T4
    150     , typename T5, typename T6, typename T7, typename T8, typename T9
    151     >
    152 struct vector<
    153           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, na, na, na, na, na, na, na
    154         , na, na, na
    155         >
    156     : vector10< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9 >
    157 {
    158     typedef typename vector10< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9 >::type type;
    159 };
    160 
    161 template<
    162       typename T0, typename T1, typename T2, typename T3, typename T4
    163     , typename T5, typename T6, typename T7, typename T8, typename T9
    164     , typename T10
    165     >
    166 struct vector<
    167           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, na, na, na, na, na, na
    168         , na, na, na
    169         >
    170     : vector11< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10 >
    171 {
    172     typedef typename vector11< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10 >::type type;
    173 };
    174 
    175 template<
    176       typename T0, typename T1, typename T2, typename T3, typename T4
    177     , typename T5, typename T6, typename T7, typename T8, typename T9
    178     , typename T10, typename T11
    179     >
    180 struct vector<
    181           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, na, na, na, na
    182         , na, na, na, na
    183         >
    184     : vector12< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11 >
    185 {
    186     typedef typename vector12< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11 >::type type;
    187 };
    188 
    189 template<
    190       typename T0, typename T1, typename T2, typename T3, typename T4
    191     , typename T5, typename T6, typename T7, typename T8, typename T9
    192     , typename T10, typename T11, typename T12
    193     >
    194 struct vector<
    195           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, na, na, na
    196         , na, na, na, na
    197         >
    198     : vector13< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12 >
    199 {
    200     typedef typename vector13< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12 >::type type;
    201 };
    202 
    203 template<
    204       typename T0, typename T1, typename T2, typename T3, typename T4
    205     , typename T5, typename T6, typename T7, typename T8, typename T9
    206     , typename T10, typename T11, typename T12, typename T13
    207     >
    208 struct vector<
    209           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, na, na
    210         , na, na, na, na
    211         >
    212     : vector14< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13 >
    213 {
    214     typedef typename vector14< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13 >::type type;
    215 };
    216 
    217 template<
    218       typename T0, typename T1, typename T2, typename T3, typename T4
    219     , typename T5, typename T6, typename T7, typename T8, typename T9
    220     , typename T10, typename T11, typename T12, typename T13, typename T14
    221     >
    222 struct vector<
    223           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, na
    224         , na, na, na, na
    225         >
    226     : vector15<
    227           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
    228         >
    229 {
    230     typedef typename vector15< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14 >::type type;
    231 };
    232 
    233 template<
    234       typename T0, typename T1, typename T2, typename T3, typename T4
    235     , typename T5, typename T6, typename T7, typename T8, typename T9
    236     , typename T10, typename T11, typename T12, typename T13, typename T14
    237     , typename T15
    238     >
    239 struct vector<
    240           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
    241         , T15, na, na, na, na
    242         >
    243     : vector16<
    244           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
    245         , T15
    246         >
    247 {
    248     typedef typename vector16< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15 >::type type;
    249 };
    250 
    251 template<
    252       typename T0, typename T1, typename T2, typename T3, typename T4
    253     , typename T5, typename T6, typename T7, typename T8, typename T9
    254     , typename T10, typename T11, typename T12, typename T13, typename T14
    255     , typename T15, typename T16
    256     >
    257 struct vector<
    258           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
    259         , T15, T16, na, na, na
    260         >
    261     : vector17<
    262           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
    263         , T15, T16
    264         >
    265 {
    266     typedef typename vector17< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16 >::type type;
    267 };
    268 
    269 template<
    270       typename T0, typename T1, typename T2, typename T3, typename T4
    271     , typename T5, typename T6, typename T7, typename T8, typename T9
    272     , typename T10, typename T11, typename T12, typename T13, typename T14
    273     , typename T15, typename T16, typename T17
    274     >
    275 struct vector<
    276           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
    277         , T15, T16, T17, na, na
    278         >
    279     : vector18<
    280           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
    281         , T15, T16, T17
    282         >
    283 {
    284     typedef typename vector18< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17 >::type type;
    285 };
    286 
    287 template<
    288       typename T0, typename T1, typename T2, typename T3, typename T4
    289     , typename T5, typename T6, typename T7, typename T8, typename T9
    290     , typename T10, typename T11, typename T12, typename T13, typename T14
    291     , typename T15, typename T16, typename T17, typename T18
    292     >
    293 struct vector<
    294           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
    295         , T15, T16, T17, T18, na
    296         >
    297     : vector19<
    298           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
    299         , T15, T16, T17, T18
    300         >
    301 {
    302     typedef typename vector19< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18 >::type type;
    303 };
    304 
    305 /// primary template (not a specialization!)
    306 
    307 template<
    308       typename T0, typename T1, typename T2, typename T3, typename T4
    309     , typename T5, typename T6, typename T7, typename T8, typename T9
    310     , typename T10, typename T11, typename T12, typename T13, typename T14
    311     , typename T15, typename T16, typename T17, typename T18, typename T19
    312     >
    313 struct vector
    314     : vector20<
    315           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
    316         , T15, T16, T17, T18, T19
    317         >
    318 {
    319     typedef typename vector20< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19 >::type type;
    320 };
    321 
    322 }}
    323 
    324