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