324 lines
9.6 KiB
C++
324 lines
9.6 KiB
C++
|
|
// Copyright Aleksey Gurtovoy 2000-2004
|
|
//
|
|
// Distributed under the Boost Software License, Version 1.0.
|
|
// (See accompanying file LICENSE_1_0.txt or copy at
|
|
// http://www.boost.org/LICENSE_1_0.txt)
|
|
//
|
|
|
|
// *Preprocessed* version of the main "map.hpp" header
|
|
// -- DO NOT modify by hand!
|
|
|
|
namespace boost { namespace mpl {
|
|
|
|
template<
|
|
typename T0 = na, typename T1 = na, typename T2 = na, typename T3 = na
|
|
, typename T4 = na, typename T5 = na, typename T6 = na, typename T7 = na
|
|
, typename T8 = na, typename T9 = na, typename T10 = na, typename T11 = na
|
|
, typename T12 = na, typename T13 = na, typename T14 = na
|
|
, typename T15 = na, typename T16 = na, typename T17 = na
|
|
, typename T18 = na, typename T19 = na
|
|
>
|
|
struct map;
|
|
|
|
template<
|
|
|
|
>
|
|
struct map<
|
|
na, na, na, na, na, na, na, na, na, na, na, na, na, na, na, na, na
|
|
, na, na, na
|
|
>
|
|
: map0< >
|
|
{
|
|
typedef map0< >::type type;
|
|
};
|
|
|
|
template<
|
|
typename T0
|
|
>
|
|
struct map<
|
|
T0, na, na, na, na, na, na, na, na, na, na, na, na, na, na, na, na
|
|
, na, na, na
|
|
>
|
|
: map1<T0>
|
|
{
|
|
typedef typename map1<T0>::type type;
|
|
};
|
|
|
|
template<
|
|
typename T0, typename T1
|
|
>
|
|
struct map<
|
|
T0, T1, na, na, na, na, na, na, na, na, na, na, na, na, na, na, na
|
|
, na, na, na
|
|
>
|
|
: map2< T0,T1 >
|
|
{
|
|
typedef typename map2< T0,T1 >::type type;
|
|
};
|
|
|
|
template<
|
|
typename T0, typename T1, typename T2
|
|
>
|
|
struct map<
|
|
T0, T1, T2, na, na, na, na, na, na, na, na, na, na, na, na, na, na
|
|
, na, na, na
|
|
>
|
|
: map3< T0,T1,T2 >
|
|
{
|
|
typedef typename map3< T0,T1,T2 >::type type;
|
|
};
|
|
|
|
template<
|
|
typename T0, typename T1, typename T2, typename T3
|
|
>
|
|
struct map<
|
|
T0, T1, T2, T3, na, na, na, na, na, na, na, na, na, na, na, na, na
|
|
, na, na, na
|
|
>
|
|
: map4< T0,T1,T2,T3 >
|
|
{
|
|
typedef typename map4< T0,T1,T2,T3 >::type type;
|
|
};
|
|
|
|
template<
|
|
typename T0, typename T1, typename T2, typename T3, typename T4
|
|
>
|
|
struct map<
|
|
T0, T1, T2, T3, T4, na, na, na, na, na, na, na, na, na, na, na, na
|
|
, na, na, na
|
|
>
|
|
: map5< T0,T1,T2,T3,T4 >
|
|
{
|
|
typedef typename map5< T0,T1,T2,T3,T4 >::type type;
|
|
};
|
|
|
|
template<
|
|
typename T0, typename T1, typename T2, typename T3, typename T4
|
|
, typename T5
|
|
>
|
|
struct map<
|
|
T0, T1, T2, T3, T4, T5, na, na, na, na, na, na, na, na, na, na, na
|
|
, na, na, na
|
|
>
|
|
: map6< T0,T1,T2,T3,T4,T5 >
|
|
{
|
|
typedef typename map6< T0,T1,T2,T3,T4,T5 >::type type;
|
|
};
|
|
|
|
template<
|
|
typename T0, typename T1, typename T2, typename T3, typename T4
|
|
, typename T5, typename T6
|
|
>
|
|
struct map<
|
|
T0, T1, T2, T3, T4, T5, T6, na, na, na, na, na, na, na, na, na, na
|
|
, na, na, na
|
|
>
|
|
: map7< T0,T1,T2,T3,T4,T5,T6 >
|
|
{
|
|
typedef typename map7< T0,T1,T2,T3,T4,T5,T6 >::type type;
|
|
};
|
|
|
|
template<
|
|
typename T0, typename T1, typename T2, typename T3, typename T4
|
|
, typename T5, typename T6, typename T7
|
|
>
|
|
struct map<
|
|
T0, T1, T2, T3, T4, T5, T6, T7, na, na, na, na, na, na, na, na, na
|
|
, na, na, na
|
|
>
|
|
: map8< T0,T1,T2,T3,T4,T5,T6,T7 >
|
|
{
|
|
typedef typename map8< T0,T1,T2,T3,T4,T5,T6,T7 >::type type;
|
|
};
|
|
|
|
template<
|
|
typename T0, typename T1, typename T2, typename T3, typename T4
|
|
, typename T5, typename T6, typename T7, typename T8
|
|
>
|
|
struct map<
|
|
T0, T1, T2, T3, T4, T5, T6, T7, T8, na, na, na, na, na, na, na, na
|
|
, na, na, na
|
|
>
|
|
: map9< T0,T1,T2,T3,T4,T5,T6,T7,T8 >
|
|
{
|
|
typedef typename map9< T0,T1,T2,T3,T4,T5,T6,T7,T8 >::type type;
|
|
};
|
|
|
|
template<
|
|
typename T0, typename T1, typename T2, typename T3, typename T4
|
|
, typename T5, typename T6, typename T7, typename T8, typename T9
|
|
>
|
|
struct map<
|
|
T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, na, na, na, na, na, na, na
|
|
, na, na, na
|
|
>
|
|
: map10< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9 >
|
|
{
|
|
typedef typename map10< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9 >::type type;
|
|
};
|
|
|
|
template<
|
|
typename T0, typename T1, typename T2, typename T3, typename T4
|
|
, typename T5, typename T6, typename T7, typename T8, typename T9
|
|
, typename T10
|
|
>
|
|
struct map<
|
|
T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, na, na, na, na, na, na
|
|
, na, na, na
|
|
>
|
|
: map11< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10 >
|
|
{
|
|
typedef typename map11< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10 >::type type;
|
|
};
|
|
|
|
template<
|
|
typename T0, typename T1, typename T2, typename T3, typename T4
|
|
, typename T5, typename T6, typename T7, typename T8, typename T9
|
|
, typename T10, typename T11
|
|
>
|
|
struct map<
|
|
T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, na, na, na, na
|
|
, na, na, na, na
|
|
>
|
|
: map12< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11 >
|
|
{
|
|
typedef typename map12< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11 >::type type;
|
|
};
|
|
|
|
template<
|
|
typename T0, typename T1, typename T2, typename T3, typename T4
|
|
, typename T5, typename T6, typename T7, typename T8, typename T9
|
|
, typename T10, typename T11, typename T12
|
|
>
|
|
struct map<
|
|
T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, na, na, na
|
|
, na, na, na, na
|
|
>
|
|
: map13< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12 >
|
|
{
|
|
typedef typename map13< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12 >::type type;
|
|
};
|
|
|
|
template<
|
|
typename T0, typename T1, typename T2, typename T3, typename T4
|
|
, typename T5, typename T6, typename T7, typename T8, typename T9
|
|
, typename T10, typename T11, typename T12, typename T13
|
|
>
|
|
struct map<
|
|
T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, na, na
|
|
, na, na, na, na
|
|
>
|
|
: map14< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13 >
|
|
{
|
|
typedef typename map14< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13 >::type type;
|
|
};
|
|
|
|
template<
|
|
typename T0, typename T1, typename T2, typename T3, typename T4
|
|
, typename T5, typename T6, typename T7, typename T8, typename T9
|
|
, typename T10, typename T11, typename T12, typename T13, typename T14
|
|
>
|
|
struct map<
|
|
T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, na
|
|
, na, na, na, na
|
|
>
|
|
: map15<
|
|
T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
|
|
>
|
|
{
|
|
typedef typename map15< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14 >::type type;
|
|
};
|
|
|
|
template<
|
|
typename T0, typename T1, typename T2, typename T3, typename T4
|
|
, typename T5, typename T6, typename T7, typename T8, typename T9
|
|
, typename T10, typename T11, typename T12, typename T13, typename T14
|
|
, typename T15
|
|
>
|
|
struct map<
|
|
T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
|
|
, T15, na, na, na, na
|
|
>
|
|
: map16<
|
|
T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
|
|
, T15
|
|
>
|
|
{
|
|
typedef typename map16< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15 >::type type;
|
|
};
|
|
|
|
template<
|
|
typename T0, typename T1, typename T2, typename T3, typename T4
|
|
, typename T5, typename T6, typename T7, typename T8, typename T9
|
|
, typename T10, typename T11, typename T12, typename T13, typename T14
|
|
, typename T15, typename T16
|
|
>
|
|
struct map<
|
|
T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
|
|
, T15, T16, na, na, na
|
|
>
|
|
: map17<
|
|
T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
|
|
, T15, T16
|
|
>
|
|
{
|
|
typedef typename map17< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16 >::type type;
|
|
};
|
|
|
|
template<
|
|
typename T0, typename T1, typename T2, typename T3, typename T4
|
|
, typename T5, typename T6, typename T7, typename T8, typename T9
|
|
, typename T10, typename T11, typename T12, typename T13, typename T14
|
|
, typename T15, typename T16, typename T17
|
|
>
|
|
struct map<
|
|
T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
|
|
, T15, T16, T17, na, na
|
|
>
|
|
: map18<
|
|
T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
|
|
, T15, T16, T17
|
|
>
|
|
{
|
|
typedef typename map18< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17 >::type type;
|
|
};
|
|
|
|
template<
|
|
typename T0, typename T1, typename T2, typename T3, typename T4
|
|
, typename T5, typename T6, typename T7, typename T8, typename T9
|
|
, typename T10, typename T11, typename T12, typename T13, typename T14
|
|
, typename T15, typename T16, typename T17, typename T18
|
|
>
|
|
struct map<
|
|
T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
|
|
, T15, T16, T17, T18, na
|
|
>
|
|
: map19<
|
|
T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
|
|
, T15, T16, T17, T18
|
|
>
|
|
{
|
|
typedef typename map19< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18 >::type type;
|
|
};
|
|
|
|
/// primary template (not a specialization!)
|
|
|
|
template<
|
|
typename T0, typename T1, typename T2, typename T3, typename T4
|
|
, typename T5, typename T6, typename T7, typename T8, typename T9
|
|
, typename T10, typename T11, typename T12, typename T13, typename T14
|
|
, typename T15, typename T16, typename T17, typename T18, typename T19
|
|
>
|
|
struct map
|
|
: map20<
|
|
T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
|
|
, T15, T16, T17, T18, T19
|
|
>
|
|
{
|
|
typedef typename map20< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19 >::type type;
|
|
};
|
|
|
|
}}
|
|
|