map for compilers with no CTPS

[SVN r26498]
This commit is contained in:
Aleksey Gurtovoy 2004-12-14 14:05:33 +00:00
parent 6ca63b6524
commit 3ba2a75176
21 changed files with 2207 additions and 3 deletions

View File

@ -24,6 +24,7 @@
#include <boost/mpl/aux_/ptr_to_ref.hpp>
#include <boost/mpl/aux_/static_cast.hpp>
#include <boost/mpl/aux_/config/typeof.hpp>
#include <boost/mpl/aux_/config/ctps.hpp>
#if !defined(BOOST_MPL_CFG_TYPEOF_BASED_SEQUENCES)
# include <boost/mpl/eval_if.hpp>
@ -78,11 +79,31 @@ struct item_by_order
#else // BOOST_MPL_CFG_TYPEOF_BASED_SEQUENCES
# if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION)
template< typename Map, long n > struct m_at
{
typedef void_ type;
};
# else
template< long n > struct m_at_impl
{
template< typename Map > struct result_
{
typedef void_ type;
};
};
template< typename Map, long n > struct m_at
{
typedef typename m_at_impl<n>::result_<Map>::type type;
};
# endif
template<>
struct at_impl< aux::map_tag >
{

View File

@ -16,6 +16,7 @@
// $Revision$
#include <boost/mpl/insert_fwd.hpp>
#include <boost/mpl/next_prior.hpp>
#include <boost/mpl/map/aux_/contains_impl.hpp>
#include <boost/mpl/map/aux_/item.hpp>
#include <boost/mpl/map/aux_/tag.hpp>
@ -38,7 +39,7 @@ struct map_insert_impl
>
#else
, m_item<
( Map::size::value + 1 )
next< typename Map::size >::type::value
, typename Pair::first
, typename Pair::second
, Map

View File

@ -26,6 +26,7 @@
#include <boost/mpl/aux_/type_wrapper.hpp>
#include <boost/mpl/aux_/config/arrays.hpp>
#include <boost/mpl/aux_/config/typeof.hpp>
#include <boost/mpl/aux_/config/ctps.hpp>
namespace boost { namespace mpl {
@ -72,9 +73,30 @@ struct m_mask
#else // BOOST_MPL_CFG_TYPEOF_BASED_SEQUENCES
# if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION)
template< long n, typename Key, typename T, typename Base >
struct m_item;
# else
template< long n >
struct m_item_impl
{
template< typename Key, typename T, typename Base >
struct result_;
};
template< long n, typename Key, typename T, typename Base >
struct m_item
: m_item_impl<n>::result_<Key,T,Base>
{
};
# endif
template< typename Key, typename T, typename Base >
struct m_item_
: Base

View File

@ -24,11 +24,13 @@
#include <boost/mpl/deref.hpp>
#include <boost/mpl/long.hpp>
#include <boost/mpl/void.hpp>
#include <boost/mpl/aux_/nttp_decl.hpp>
#include <boost/mpl/aux_/config/ctps.hpp>
namespace boost { namespace mpl {
#if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION)
template<
typename Map
, long order
@ -82,6 +84,86 @@ struct next< m_iter<Map,max_order,max_order> >
{
};
#else
template<
typename Map
, BOOST_MPL_AUX_NTTP_DECL(long, order)
, BOOST_MPL_AUX_NTTP_DECL(long, max_order)
>
struct next_order;
template<
typename Map
, BOOST_MPL_AUX_NTTP_DECL(long, order)
, BOOST_MPL_AUX_NTTP_DECL(long, max_order)
>
struct next_order_impl
: if_<
is_void_< typename item_by_order<Map,order>::type >
, next_order<Map,(order+1),max_order>
, long_<order>
>::type
{
};
template<
typename Map
, BOOST_MPL_AUX_NTTP_DECL(long, order)
, BOOST_MPL_AUX_NTTP_DECL(long, max_order)
>
struct next_order
: if_c<
(order != max_order)
, next_order_impl<Map,order,max_order>
, long_<order>
>::type
{
};
template<
typename Map
, BOOST_MPL_AUX_NTTP_DECL(long, order)
, BOOST_MPL_AUX_NTTP_DECL(long, max_order)
>
struct m_iter;
struct m_iter_empty_base {};
template<
typename Map
, BOOST_MPL_AUX_NTTP_DECL(long, order)
, BOOST_MPL_AUX_NTTP_DECL(long, max_order)
>
struct m_iter_base
{
typedef typename item_by_order<Map,order>::type type;
typedef m_iter<
Map
, next_order<Map,order+1,max_order>::value
, max_order
> next;
};
template<
typename Map
, BOOST_MPL_AUX_NTTP_DECL(long, order)
, BOOST_MPL_AUX_NTTP_DECL(long, max_order)
>
struct m_iter
: if_c<
(order == max_order)
, m_iter_empty_base
, m_iter_base<Map,order,max_order>
>::type
{
typedef forward_iterator_tag category;
};
#endif // BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
}}
#endif // BOOST_MPL_MAP_AUX_ITERATOR_HPP_INCLUDED

View File

@ -18,6 +18,7 @@
#else
#include <boost/mpl/aux_/config/typeof.hpp>
#include <boost/mpl/aux_/config/ctps.hpp>
#include <boost/preprocessor/enum_params.hpp>
#include <boost/preprocessor/dec.hpp>
#include <boost/preprocessor/cat.hpp>
@ -43,10 +44,13 @@ struct BOOST_PP_CAT(map,i_)
, AUX778076_MAP_TAIL(map,BOOST_PP_DEC(i_),P)
>
{
typedef BOOST_PP_CAT(map,i_) type;
};
#else // "brute force" implementation
# if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION)
template< typename Map>
struct m_at<Map,BOOST_PP_DEC(i_)>
{
@ -60,6 +64,29 @@ struct m_item<i_,Key,T,Base>
typedef pair<Key,T> BOOST_PP_CAT(item,BOOST_PP_DEC(i_));
};
# else
template<>
struct m_at_impl<BOOST_PP_DEC(i_)>
{
template< typename Map > struct result_
{
typedef typename Map::BOOST_PP_CAT(item,BOOST_PP_DEC(i_)) type;
};
};
template<>
struct m_item_impl<i_>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_<Key,T,Base>
{
typedef pair<Key,T> BOOST_PP_CAT(item,BOOST_PP_DEC(i_));
};
};
# endif
template<
BOOST_PP_ENUM_PARAMS(i_, typename P)
>
@ -71,6 +98,7 @@ struct BOOST_PP_CAT(map,i_)
, AUX778076_MAP_TAIL(map,BOOST_PP_DEC(i_),P)
>
{
typedef BOOST_PP_CAT(map,i_) type;
};
#endif // BOOST_MPL_CFG_TYPEOF_BASED_SEQUENCES

View File

@ -0,0 +1,350 @@
// Copyright Aleksey Gurtovoy 2000-2004
// Copyright David Abrahams 2003-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 "boost/mpl/map/map10.hpp" header
// -- DO NOT modify by hand!
namespace boost { namespace mpl {
template<>
struct m_at_impl<0>
{
template< typename Map > struct result_
{
typedef typename Map::item0 type;
};
};
template<>
struct m_item_impl<1>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item0;
};
};
template<
typename P0
>
struct map1
: m_item<
1
, typename P0::first
, typename P0::second
, map0< >
>
{
typedef map1 type;
};
template<>
struct m_at_impl<1>
{
template< typename Map > struct result_
{
typedef typename Map::item1 type;
};
};
template<>
struct m_item_impl<2>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item1;
};
};
template<
typename P0, typename P1
>
struct map2
: m_item<
2
, typename P1::first
, typename P1::second
, map1<P0>
>
{
typedef map2 type;
};
template<>
struct m_at_impl<2>
{
template< typename Map > struct result_
{
typedef typename Map::item2 type;
};
};
template<>
struct m_item_impl<3>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item2;
};
};
template<
typename P0, typename P1, typename P2
>
struct map3
: m_item<
3
, typename P2::first
, typename P2::second
, map2< P0,P1 >
>
{
typedef map3 type;
};
template<>
struct m_at_impl<3>
{
template< typename Map > struct result_
{
typedef typename Map::item3 type;
};
};
template<>
struct m_item_impl<4>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item3;
};
};
template<
typename P0, typename P1, typename P2, typename P3
>
struct map4
: m_item<
4
, typename P3::first
, typename P3::second
, map3< P0,P1,P2 >
>
{
typedef map4 type;
};
template<>
struct m_at_impl<4>
{
template< typename Map > struct result_
{
typedef typename Map::item4 type;
};
};
template<>
struct m_item_impl<5>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item4;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
>
struct map5
: m_item<
5
, typename P4::first
, typename P4::second
, map4< P0,P1,P2,P3 >
>
{
typedef map5 type;
};
template<>
struct m_at_impl<5>
{
template< typename Map > struct result_
{
typedef typename Map::item5 type;
};
};
template<>
struct m_item_impl<6>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item5;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5
>
struct map6
: m_item<
6
, typename P5::first
, typename P5::second
, map5< P0,P1,P2,P3,P4 >
>
{
typedef map6 type;
};
template<>
struct m_at_impl<6>
{
template< typename Map > struct result_
{
typedef typename Map::item6 type;
};
};
template<>
struct m_item_impl<7>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item6;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6
>
struct map7
: m_item<
7
, typename P6::first
, typename P6::second
, map6< P0,P1,P2,P3,P4,P5 >
>
{
typedef map7 type;
};
template<>
struct m_at_impl<7>
{
template< typename Map > struct result_
{
typedef typename Map::item7 type;
};
};
template<>
struct m_item_impl<8>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item7;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7
>
struct map8
: m_item<
8
, typename P7::first
, typename P7::second
, map7< P0,P1,P2,P3,P4,P5,P6 >
>
{
typedef map8 type;
};
template<>
struct m_at_impl<8>
{
template< typename Map > struct result_
{
typedef typename Map::item8 type;
};
};
template<>
struct m_item_impl<9>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item8;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8
>
struct map9
: m_item<
9
, typename P8::first
, typename P8::second
, map8< P0,P1,P2,P3,P4,P5,P6,P7 >
>
{
typedef map9 type;
};
template<>
struct m_at_impl<9>
{
template< typename Map > struct result_
{
typedef typename Map::item9 type;
};
};
template<>
struct m_item_impl<10>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item9;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
>
struct map10
: m_item<
10
, typename P9::first
, typename P9::second
, map9< P0,P1,P2,P3,P4,P5,P6,P7,P8 >
>
{
typedef map10 type;
};
}}

View File

@ -0,0 +1,370 @@
// Copyright Aleksey Gurtovoy 2000-2004
// Copyright David Abrahams 2003-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 "boost/mpl/map/map20.hpp" header
// -- DO NOT modify by hand!
namespace boost { namespace mpl {
template<>
struct m_at_impl<10>
{
template< typename Map > struct result_
{
typedef typename Map::item10 type;
};
};
template<>
struct m_item_impl<11>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item10;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10
>
struct map11
: m_item<
11
, typename P10::first
, typename P10::second
, map10< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9 >
>
{
typedef map11 type;
};
template<>
struct m_at_impl<11>
{
template< typename Map > struct result_
{
typedef typename Map::item11 type;
};
};
template<>
struct m_item_impl<12>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item11;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11
>
struct map12
: m_item<
12
, typename P11::first
, typename P11::second
, map11< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10 >
>
{
typedef map12 type;
};
template<>
struct m_at_impl<12>
{
template< typename Map > struct result_
{
typedef typename Map::item12 type;
};
};
template<>
struct m_item_impl<13>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item12;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12
>
struct map13
: m_item<
13
, typename P12::first
, typename P12::second
, map12< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11 >
>
{
typedef map13 type;
};
template<>
struct m_at_impl<13>
{
template< typename Map > struct result_
{
typedef typename Map::item13 type;
};
};
template<>
struct m_item_impl<14>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item13;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13
>
struct map14
: m_item<
14
, typename P13::first
, typename P13::second
, map13< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12 >
>
{
typedef map14 type;
};
template<>
struct m_at_impl<14>
{
template< typename Map > struct result_
{
typedef typename Map::item14 type;
};
};
template<>
struct m_item_impl<15>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item14;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
>
struct map15
: m_item<
15
, typename P14::first
, typename P14::second
, map14< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13 >
>
{
typedef map15 type;
};
template<>
struct m_at_impl<15>
{
template< typename Map > struct result_
{
typedef typename Map::item15 type;
};
};
template<>
struct m_item_impl<16>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item15;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15
>
struct map16
: m_item<
16
, typename P15::first
, typename P15::second
, map15< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14 >
>
{
typedef map16 type;
};
template<>
struct m_at_impl<16>
{
template< typename Map > struct result_
{
typedef typename Map::item16 type;
};
};
template<>
struct m_item_impl<17>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item16;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16
>
struct map17
: m_item<
17
, typename P16::first
, typename P16::second
, map16< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15 >
>
{
typedef map17 type;
};
template<>
struct m_at_impl<17>
{
template< typename Map > struct result_
{
typedef typename Map::item17 type;
};
};
template<>
struct m_item_impl<18>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item17;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17
>
struct map18
: m_item<
18
, typename P17::first
, typename P17::second
, map17< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16 >
>
{
typedef map18 type;
};
template<>
struct m_at_impl<18>
{
template< typename Map > struct result_
{
typedef typename Map::item18 type;
};
};
template<>
struct m_item_impl<19>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item18;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18
>
struct map19
: m_item<
19
, typename P18::first
, typename P18::second
, map18< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17 >
>
{
typedef map19 type;
};
template<>
struct m_at_impl<19>
{
template< typename Map > struct result_
{
typedef typename Map::item19 type;
};
};
template<>
struct m_item_impl<20>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item19;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
>
struct map20
: m_item<
20
, typename P19::first
, typename P19::second
, map19< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18 >
>
{
typedef map20 type;
};
}}

View File

@ -0,0 +1,390 @@
// Copyright Aleksey Gurtovoy 2000-2004
// Copyright David Abrahams 2003-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 "boost/mpl/map/map30.hpp" header
// -- DO NOT modify by hand!
namespace boost { namespace mpl {
template<>
struct m_at_impl<20>
{
template< typename Map > struct result_
{
typedef typename Map::item20 type;
};
};
template<>
struct m_item_impl<21>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item20;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
, typename P20
>
struct map21
: m_item<
21
, typename P20::first
, typename P20::second
, map20< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19 >
>
{
typedef map21 type;
};
template<>
struct m_at_impl<21>
{
template< typename Map > struct result_
{
typedef typename Map::item21 type;
};
};
template<>
struct m_item_impl<22>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item21;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
, typename P20, typename P21
>
struct map22
: m_item<
22
, typename P21::first
, typename P21::second
, map21< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20 >
>
{
typedef map22 type;
};
template<>
struct m_at_impl<22>
{
template< typename Map > struct result_
{
typedef typename Map::item22 type;
};
};
template<>
struct m_item_impl<23>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item22;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
, typename P20, typename P21, typename P22
>
struct map23
: m_item<
23
, typename P22::first
, typename P22::second
, map22< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21 >
>
{
typedef map23 type;
};
template<>
struct m_at_impl<23>
{
template< typename Map > struct result_
{
typedef typename Map::item23 type;
};
};
template<>
struct m_item_impl<24>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item23;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
, typename P20, typename P21, typename P22, typename P23
>
struct map24
: m_item<
24
, typename P23::first
, typename P23::second
, map23< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22 >
>
{
typedef map24 type;
};
template<>
struct m_at_impl<24>
{
template< typename Map > struct result_
{
typedef typename Map::item24 type;
};
};
template<>
struct m_item_impl<25>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item24;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
, typename P20, typename P21, typename P22, typename P23, typename P24
>
struct map25
: m_item<
25
, typename P24::first
, typename P24::second
, map24< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23 >
>
{
typedef map25 type;
};
template<>
struct m_at_impl<25>
{
template< typename Map > struct result_
{
typedef typename Map::item25 type;
};
};
template<>
struct m_item_impl<26>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item25;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
, typename P20, typename P21, typename P22, typename P23, typename P24
, typename P25
>
struct map26
: m_item<
26
, typename P25::first
, typename P25::second
, map25< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24 >
>
{
typedef map26 type;
};
template<>
struct m_at_impl<26>
{
template< typename Map > struct result_
{
typedef typename Map::item26 type;
};
};
template<>
struct m_item_impl<27>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item26;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
, typename P20, typename P21, typename P22, typename P23, typename P24
, typename P25, typename P26
>
struct map27
: m_item<
27
, typename P26::first
, typename P26::second
, map26< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25 >
>
{
typedef map27 type;
};
template<>
struct m_at_impl<27>
{
template< typename Map > struct result_
{
typedef typename Map::item27 type;
};
};
template<>
struct m_item_impl<28>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item27;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
, typename P20, typename P21, typename P22, typename P23, typename P24
, typename P25, typename P26, typename P27
>
struct map28
: m_item<
28
, typename P27::first
, typename P27::second
, map27< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26 >
>
{
typedef map28 type;
};
template<>
struct m_at_impl<28>
{
template< typename Map > struct result_
{
typedef typename Map::item28 type;
};
};
template<>
struct m_item_impl<29>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item28;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
, typename P20, typename P21, typename P22, typename P23, typename P24
, typename P25, typename P26, typename P27, typename P28
>
struct map29
: m_item<
29
, typename P28::first
, typename P28::second
, map28< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27 >
>
{
typedef map29 type;
};
template<>
struct m_at_impl<29>
{
template< typename Map > struct result_
{
typedef typename Map::item29 type;
};
};
template<>
struct m_item_impl<30>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item29;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
, typename P20, typename P21, typename P22, typename P23, typename P24
, typename P25, typename P26, typename P27, typename P28, typename P29
>
struct map30
: m_item<
30
, typename P29::first
, typename P29::second
, map29< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28 >
>
{
typedef map30 type;
};
}}

View File

@ -0,0 +1,410 @@
// Copyright Aleksey Gurtovoy 2000-2004
// Copyright David Abrahams 2003-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 "boost/mpl/map/map40.hpp" header
// -- DO NOT modify by hand!
namespace boost { namespace mpl {
template<>
struct m_at_impl<30>
{
template< typename Map > struct result_
{
typedef typename Map::item30 type;
};
};
template<>
struct m_item_impl<31>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item30;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
, typename P20, typename P21, typename P22, typename P23, typename P24
, typename P25, typename P26, typename P27, typename P28, typename P29
, typename P30
>
struct map31
: m_item<
31
, typename P30::first
, typename P30::second
, map30< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29 >
>
{
typedef map31 type;
};
template<>
struct m_at_impl<31>
{
template< typename Map > struct result_
{
typedef typename Map::item31 type;
};
};
template<>
struct m_item_impl<32>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item31;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
, typename P20, typename P21, typename P22, typename P23, typename P24
, typename P25, typename P26, typename P27, typename P28, typename P29
, typename P30, typename P31
>
struct map32
: m_item<
32
, typename P31::first
, typename P31::second
, map31< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30 >
>
{
typedef map32 type;
};
template<>
struct m_at_impl<32>
{
template< typename Map > struct result_
{
typedef typename Map::item32 type;
};
};
template<>
struct m_item_impl<33>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item32;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
, typename P20, typename P21, typename P22, typename P23, typename P24
, typename P25, typename P26, typename P27, typename P28, typename P29
, typename P30, typename P31, typename P32
>
struct map33
: m_item<
33
, typename P32::first
, typename P32::second
, map32< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31 >
>
{
typedef map33 type;
};
template<>
struct m_at_impl<33>
{
template< typename Map > struct result_
{
typedef typename Map::item33 type;
};
};
template<>
struct m_item_impl<34>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item33;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
, typename P20, typename P21, typename P22, typename P23, typename P24
, typename P25, typename P26, typename P27, typename P28, typename P29
, typename P30, typename P31, typename P32, typename P33
>
struct map34
: m_item<
34
, typename P33::first
, typename P33::second
, map33< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32 >
>
{
typedef map34 type;
};
template<>
struct m_at_impl<34>
{
template< typename Map > struct result_
{
typedef typename Map::item34 type;
};
};
template<>
struct m_item_impl<35>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item34;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
, typename P20, typename P21, typename P22, typename P23, typename P24
, typename P25, typename P26, typename P27, typename P28, typename P29
, typename P30, typename P31, typename P32, typename P33, typename P34
>
struct map35
: m_item<
35
, typename P34::first
, typename P34::second
, map34< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33 >
>
{
typedef map35 type;
};
template<>
struct m_at_impl<35>
{
template< typename Map > struct result_
{
typedef typename Map::item35 type;
};
};
template<>
struct m_item_impl<36>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item35;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
, typename P20, typename P21, typename P22, typename P23, typename P24
, typename P25, typename P26, typename P27, typename P28, typename P29
, typename P30, typename P31, typename P32, typename P33, typename P34
, typename P35
>
struct map36
: m_item<
36
, typename P35::first
, typename P35::second
, map35< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34 >
>
{
typedef map36 type;
};
template<>
struct m_at_impl<36>
{
template< typename Map > struct result_
{
typedef typename Map::item36 type;
};
};
template<>
struct m_item_impl<37>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item36;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
, typename P20, typename P21, typename P22, typename P23, typename P24
, typename P25, typename P26, typename P27, typename P28, typename P29
, typename P30, typename P31, typename P32, typename P33, typename P34
, typename P35, typename P36
>
struct map37
: m_item<
37
, typename P36::first
, typename P36::second
, map36< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35 >
>
{
typedef map37 type;
};
template<>
struct m_at_impl<37>
{
template< typename Map > struct result_
{
typedef typename Map::item37 type;
};
};
template<>
struct m_item_impl<38>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item37;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
, typename P20, typename P21, typename P22, typename P23, typename P24
, typename P25, typename P26, typename P27, typename P28, typename P29
, typename P30, typename P31, typename P32, typename P33, typename P34
, typename P35, typename P36, typename P37
>
struct map38
: m_item<
38
, typename P37::first
, typename P37::second
, map37< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36 >
>
{
typedef map38 type;
};
template<>
struct m_at_impl<38>
{
template< typename Map > struct result_
{
typedef typename Map::item38 type;
};
};
template<>
struct m_item_impl<39>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item38;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
, typename P20, typename P21, typename P22, typename P23, typename P24
, typename P25, typename P26, typename P27, typename P28, typename P29
, typename P30, typename P31, typename P32, typename P33, typename P34
, typename P35, typename P36, typename P37, typename P38
>
struct map39
: m_item<
39
, typename P38::first
, typename P38::second
, map38< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37 >
>
{
typedef map39 type;
};
template<>
struct m_at_impl<39>
{
template< typename Map > struct result_
{
typedef typename Map::item39 type;
};
};
template<>
struct m_item_impl<40>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item39;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
, typename P20, typename P21, typename P22, typename P23, typename P24
, typename P25, typename P26, typename P27, typename P28, typename P29
, typename P30, typename P31, typename P32, typename P33, typename P34
, typename P35, typename P36, typename P37, typename P38, typename P39
>
struct map40
: m_item<
40
, typename P39::first
, typename P39::second
, map39< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38 >
>
{
typedef map40 type;
};
}}

View File

@ -0,0 +1,430 @@
// Copyright Aleksey Gurtovoy 2000-2004
// Copyright David Abrahams 2003-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 "boost/mpl/map/map50.hpp" header
// -- DO NOT modify by hand!
namespace boost { namespace mpl {
template<>
struct m_at_impl<40>
{
template< typename Map > struct result_
{
typedef typename Map::item40 type;
};
};
template<>
struct m_item_impl<41>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item40;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
, typename P20, typename P21, typename P22, typename P23, typename P24
, typename P25, typename P26, typename P27, typename P28, typename P29
, typename P30, typename P31, typename P32, typename P33, typename P34
, typename P35, typename P36, typename P37, typename P38, typename P39
, typename P40
>
struct map41
: m_item<
41
, typename P40::first
, typename P40::second
, map40< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38,P39 >
>
{
typedef map41 type;
};
template<>
struct m_at_impl<41>
{
template< typename Map > struct result_
{
typedef typename Map::item41 type;
};
};
template<>
struct m_item_impl<42>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item41;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
, typename P20, typename P21, typename P22, typename P23, typename P24
, typename P25, typename P26, typename P27, typename P28, typename P29
, typename P30, typename P31, typename P32, typename P33, typename P34
, typename P35, typename P36, typename P37, typename P38, typename P39
, typename P40, typename P41
>
struct map42
: m_item<
42
, typename P41::first
, typename P41::second
, map41< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38,P39,P40 >
>
{
typedef map42 type;
};
template<>
struct m_at_impl<42>
{
template< typename Map > struct result_
{
typedef typename Map::item42 type;
};
};
template<>
struct m_item_impl<43>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item42;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
, typename P20, typename P21, typename P22, typename P23, typename P24
, typename P25, typename P26, typename P27, typename P28, typename P29
, typename P30, typename P31, typename P32, typename P33, typename P34
, typename P35, typename P36, typename P37, typename P38, typename P39
, typename P40, typename P41, typename P42
>
struct map43
: m_item<
43
, typename P42::first
, typename P42::second
, map42< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38,P39,P40,P41 >
>
{
typedef map43 type;
};
template<>
struct m_at_impl<43>
{
template< typename Map > struct result_
{
typedef typename Map::item43 type;
};
};
template<>
struct m_item_impl<44>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item43;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
, typename P20, typename P21, typename P22, typename P23, typename P24
, typename P25, typename P26, typename P27, typename P28, typename P29
, typename P30, typename P31, typename P32, typename P33, typename P34
, typename P35, typename P36, typename P37, typename P38, typename P39
, typename P40, typename P41, typename P42, typename P43
>
struct map44
: m_item<
44
, typename P43::first
, typename P43::second
, map43< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38,P39,P40,P41,P42 >
>
{
typedef map44 type;
};
template<>
struct m_at_impl<44>
{
template< typename Map > struct result_
{
typedef typename Map::item44 type;
};
};
template<>
struct m_item_impl<45>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item44;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
, typename P20, typename P21, typename P22, typename P23, typename P24
, typename P25, typename P26, typename P27, typename P28, typename P29
, typename P30, typename P31, typename P32, typename P33, typename P34
, typename P35, typename P36, typename P37, typename P38, typename P39
, typename P40, typename P41, typename P42, typename P43, typename P44
>
struct map45
: m_item<
45
, typename P44::first
, typename P44::second
, map44< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38,P39,P40,P41,P42,P43 >
>
{
typedef map45 type;
};
template<>
struct m_at_impl<45>
{
template< typename Map > struct result_
{
typedef typename Map::item45 type;
};
};
template<>
struct m_item_impl<46>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item45;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
, typename P20, typename P21, typename P22, typename P23, typename P24
, typename P25, typename P26, typename P27, typename P28, typename P29
, typename P30, typename P31, typename P32, typename P33, typename P34
, typename P35, typename P36, typename P37, typename P38, typename P39
, typename P40, typename P41, typename P42, typename P43, typename P44
, typename P45
>
struct map46
: m_item<
46
, typename P45::first
, typename P45::second
, map45< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38,P39,P40,P41,P42,P43,P44 >
>
{
typedef map46 type;
};
template<>
struct m_at_impl<46>
{
template< typename Map > struct result_
{
typedef typename Map::item46 type;
};
};
template<>
struct m_item_impl<47>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item46;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
, typename P20, typename P21, typename P22, typename P23, typename P24
, typename P25, typename P26, typename P27, typename P28, typename P29
, typename P30, typename P31, typename P32, typename P33, typename P34
, typename P35, typename P36, typename P37, typename P38, typename P39
, typename P40, typename P41, typename P42, typename P43, typename P44
, typename P45, typename P46
>
struct map47
: m_item<
47
, typename P46::first
, typename P46::second
, map46< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38,P39,P40,P41,P42,P43,P44,P45 >
>
{
typedef map47 type;
};
template<>
struct m_at_impl<47>
{
template< typename Map > struct result_
{
typedef typename Map::item47 type;
};
};
template<>
struct m_item_impl<48>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item47;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
, typename P20, typename P21, typename P22, typename P23, typename P24
, typename P25, typename P26, typename P27, typename P28, typename P29
, typename P30, typename P31, typename P32, typename P33, typename P34
, typename P35, typename P36, typename P37, typename P38, typename P39
, typename P40, typename P41, typename P42, typename P43, typename P44
, typename P45, typename P46, typename P47
>
struct map48
: m_item<
48
, typename P47::first
, typename P47::second
, map47< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38,P39,P40,P41,P42,P43,P44,P45,P46 >
>
{
typedef map48 type;
};
template<>
struct m_at_impl<48>
{
template< typename Map > struct result_
{
typedef typename Map::item48 type;
};
};
template<>
struct m_item_impl<49>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item48;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
, typename P20, typename P21, typename P22, typename P23, typename P24
, typename P25, typename P26, typename P27, typename P28, typename P29
, typename P30, typename P31, typename P32, typename P33, typename P34
, typename P35, typename P36, typename P37, typename P38, typename P39
, typename P40, typename P41, typename P42, typename P43, typename P44
, typename P45, typename P46, typename P47, typename P48
>
struct map49
: m_item<
49
, typename P48::first
, typename P48::second
, map48< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38,P39,P40,P41,P42,P43,P44,P45,P46,P47 >
>
{
typedef map49 type;
};
template<>
struct m_at_impl<49>
{
template< typename Map > struct result_
{
typedef typename Map::item49 type;
};
};
template<>
struct m_item_impl<50>
{
template< typename Key, typename T, typename Base > struct result_
: m_item_< Key,T,Base >
{
typedef pair< Key,T > item49;
};
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8, typename P9
, typename P10, typename P11, typename P12, typename P13, typename P14
, typename P15, typename P16, typename P17, typename P18, typename P19
, typename P20, typename P21, typename P22, typename P23, typename P24
, typename P25, typename P26, typename P27, typename P28, typename P29
, typename P30, typename P31, typename P32, typename P33, typename P34
, typename P35, typename P36, typename P37, typename P38, typename P39
, typename P40, typename P41, typename P42, typename P43, typename P44
, typename P45, typename P46, typename P47, typename P48, typename P49
>
struct map50
: m_item<
50
, typename P49::first
, typename P49::second
, map49< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38,P39,P40,P41,P42,P43,P44,P45,P46,P47,P48 >
>
{
typedef map50 type;
};
}}

View File

@ -36,6 +36,7 @@ struct map1
, map0< >
>
{
typedef map1 type;
};
template< typename Map>
@ -62,6 +63,7 @@ struct map2
, map1<P0>
>
{
typedef map2 type;
};
template< typename Map>
@ -88,6 +90,7 @@ struct map3
, map2< P0,P1 >
>
{
typedef map3 type;
};
template< typename Map>
@ -114,6 +117,7 @@ struct map4
, map3< P0,P1,P2 >
>
{
typedef map4 type;
};
template< typename Map>
@ -140,6 +144,7 @@ struct map5
, map4< P0,P1,P2,P3 >
>
{
typedef map5 type;
};
template< typename Map>
@ -167,6 +172,7 @@ struct map6
, map5< P0,P1,P2,P3,P4 >
>
{
typedef map6 type;
};
template< typename Map>
@ -194,6 +200,7 @@ struct map7
, map6< P0,P1,P2,P3,P4,P5 >
>
{
typedef map7 type;
};
template< typename Map>
@ -221,6 +228,7 @@ struct map8
, map7< P0,P1,P2,P3,P4,P5,P6 >
>
{
typedef map8 type;
};
template< typename Map>
@ -248,6 +256,7 @@ struct map9
, map8< P0,P1,P2,P3,P4,P5,P6,P7 >
>
{
typedef map9 type;
};
template< typename Map>
@ -275,6 +284,7 @@ struct map10
, map9< P0,P1,P2,P3,P4,P5,P6,P7,P8 >
>
{
typedef map10 type;
};
}}

View File

@ -38,6 +38,7 @@ struct map11
, map10< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9 >
>
{
typedef map11 type;
};
template< typename Map>
@ -66,6 +67,7 @@ struct map12
, map11< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10 >
>
{
typedef map12 type;
};
template< typename Map>
@ -94,6 +96,7 @@ struct map13
, map12< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11 >
>
{
typedef map13 type;
};
template< typename Map>
@ -122,6 +125,7 @@ struct map14
, map13< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12 >
>
{
typedef map14 type;
};
template< typename Map>
@ -150,6 +154,7 @@ struct map15
, map14< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13 >
>
{
typedef map15 type;
};
template< typename Map>
@ -179,6 +184,7 @@ struct map16
, map15< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14 >
>
{
typedef map16 type;
};
template< typename Map>
@ -208,6 +214,7 @@ struct map17
, map16< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15 >
>
{
typedef map17 type;
};
template< typename Map>
@ -237,6 +244,7 @@ struct map18
, map17< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16 >
>
{
typedef map18 type;
};
template< typename Map>
@ -266,6 +274,7 @@ struct map19
, map18< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17 >
>
{
typedef map19 type;
};
template< typename Map>
@ -295,6 +304,7 @@ struct map20
, map19< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18 >
>
{
typedef map20 type;
};
}}

View File

@ -40,6 +40,7 @@ struct map21
, map20< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19 >
>
{
typedef map21 type;
};
template< typename Map>
@ -70,6 +71,7 @@ struct map22
, map21< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20 >
>
{
typedef map22 type;
};
template< typename Map>
@ -100,6 +102,7 @@ struct map23
, map22< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21 >
>
{
typedef map23 type;
};
template< typename Map>
@ -130,6 +133,7 @@ struct map24
, map23< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22 >
>
{
typedef map24 type;
};
template< typename Map>
@ -160,6 +164,7 @@ struct map25
, map24< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23 >
>
{
typedef map25 type;
};
template< typename Map>
@ -191,6 +196,7 @@ struct map26
, map25< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24 >
>
{
typedef map26 type;
};
template< typename Map>
@ -222,6 +228,7 @@ struct map27
, map26< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25 >
>
{
typedef map27 type;
};
template< typename Map>
@ -253,6 +260,7 @@ struct map28
, map27< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26 >
>
{
typedef map28 type;
};
template< typename Map>
@ -284,6 +292,7 @@ struct map29
, map28< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27 >
>
{
typedef map29 type;
};
template< typename Map>
@ -315,6 +324,7 @@ struct map30
, map29< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28 >
>
{
typedef map30 type;
};
}}

View File

@ -42,6 +42,7 @@ struct map31
, map30< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29 >
>
{
typedef map31 type;
};
template< typename Map>
@ -74,6 +75,7 @@ struct map32
, map31< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30 >
>
{
typedef map32 type;
};
template< typename Map>
@ -106,6 +108,7 @@ struct map33
, map32< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31 >
>
{
typedef map33 type;
};
template< typename Map>
@ -138,6 +141,7 @@ struct map34
, map33< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32 >
>
{
typedef map34 type;
};
template< typename Map>
@ -170,6 +174,7 @@ struct map35
, map34< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33 >
>
{
typedef map35 type;
};
template< typename Map>
@ -203,6 +208,7 @@ struct map36
, map35< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34 >
>
{
typedef map36 type;
};
template< typename Map>
@ -236,6 +242,7 @@ struct map37
, map36< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35 >
>
{
typedef map37 type;
};
template< typename Map>
@ -269,6 +276,7 @@ struct map38
, map37< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36 >
>
{
typedef map38 type;
};
template< typename Map>
@ -302,6 +310,7 @@ struct map39
, map38< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37 >
>
{
typedef map39 type;
};
template< typename Map>
@ -335,6 +344,7 @@ struct map40
, map39< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38 >
>
{
typedef map40 type;
};
}}

View File

@ -44,6 +44,7 @@ struct map41
, map40< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38,P39 >
>
{
typedef map41 type;
};
template< typename Map>
@ -78,6 +79,7 @@ struct map42
, map41< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38,P39,P40 >
>
{
typedef map42 type;
};
template< typename Map>
@ -112,6 +114,7 @@ struct map43
, map42< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38,P39,P40,P41 >
>
{
typedef map43 type;
};
template< typename Map>
@ -146,6 +149,7 @@ struct map44
, map43< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38,P39,P40,P41,P42 >
>
{
typedef map44 type;
};
template< typename Map>
@ -180,6 +184,7 @@ struct map45
, map44< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38,P39,P40,P41,P42,P43 >
>
{
typedef map45 type;
};
template< typename Map>
@ -215,6 +220,7 @@ struct map46
, map45< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38,P39,P40,P41,P42,P43,P44 >
>
{
typedef map46 type;
};
template< typename Map>
@ -250,6 +256,7 @@ struct map47
, map46< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38,P39,P40,P41,P42,P43,P44,P45 >
>
{
typedef map47 type;
};
template< typename Map>
@ -285,6 +292,7 @@ struct map48
, map47< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38,P39,P40,P41,P42,P43,P44,P45,P46 >
>
{
typedef map48 type;
};
template< typename Map>
@ -320,6 +328,7 @@ struct map49
, map48< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38,P39,P40,P41,P42,P43,P44,P45,P46,P47 >
>
{
typedef map49 type;
};
template< typename Map>
@ -355,6 +364,7 @@ struct map50
, map49< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38,P39,P40,P41,P42,P43,P44,P45,P46,P47,P48 >
>
{
typedef map50 type;
};
}}

View File

@ -22,6 +22,7 @@ struct map1
, map0< >
>
{
typedef map1 type;
};
template<
@ -34,6 +35,7 @@ struct map2
, map1<P0>
>
{
typedef map2 type;
};
template<
@ -46,6 +48,7 @@ struct map3
, map2< P0,P1 >
>
{
typedef map3 type;
};
template<
@ -58,6 +61,7 @@ struct map4
, map3< P0,P1,P2 >
>
{
typedef map4 type;
};
template<
@ -70,6 +74,7 @@ struct map5
, map4< P0,P1,P2,P3 >
>
{
typedef map5 type;
};
template<
@ -83,6 +88,7 @@ struct map6
, map5< P0,P1,P2,P3,P4 >
>
{
typedef map6 type;
};
template<
@ -96,6 +102,7 @@ struct map7
, map6< P0,P1,P2,P3,P4,P5 >
>
{
typedef map7 type;
};
template<
@ -109,6 +116,7 @@ struct map8
, map7< P0,P1,P2,P3,P4,P5,P6 >
>
{
typedef map8 type;
};
template<
@ -122,6 +130,7 @@ struct map9
, map8< P0,P1,P2,P3,P4,P5,P6,P7 >
>
{
typedef map9 type;
};
template<
@ -135,6 +144,7 @@ struct map10
, map9< P0,P1,P2,P3,P4,P5,P6,P7,P8 >
>
{
typedef map10 type;
};
}}

View File

@ -24,6 +24,7 @@ struct map11
, map10< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9 >
>
{
typedef map11 type;
};
template<
@ -38,6 +39,7 @@ struct map12
, map11< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10 >
>
{
typedef map12 type;
};
template<
@ -52,6 +54,7 @@ struct map13
, map12< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11 >
>
{
typedef map13 type;
};
template<
@ -66,6 +69,7 @@ struct map14
, map13< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12 >
>
{
typedef map14 type;
};
template<
@ -80,6 +84,7 @@ struct map15
, map14< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13 >
>
{
typedef map15 type;
};
template<
@ -95,6 +100,7 @@ struct map16
, map15< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14 >
>
{
typedef map16 type;
};
template<
@ -110,6 +116,7 @@ struct map17
, map16< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15 >
>
{
typedef map17 type;
};
template<
@ -125,6 +132,7 @@ struct map18
, map17< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16 >
>
{
typedef map18 type;
};
template<
@ -140,6 +148,7 @@ struct map19
, map18< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17 >
>
{
typedef map19 type;
};
template<
@ -155,6 +164,7 @@ struct map20
, map19< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18 >
>
{
typedef map20 type;
};
}}

View File

@ -26,6 +26,7 @@ struct map21
, map20< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19 >
>
{
typedef map21 type;
};
template<
@ -42,6 +43,7 @@ struct map22
, map21< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20 >
>
{
typedef map22 type;
};
template<
@ -58,6 +60,7 @@ struct map23
, map22< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21 >
>
{
typedef map23 type;
};
template<
@ -74,6 +77,7 @@ struct map24
, map23< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22 >
>
{
typedef map24 type;
};
template<
@ -90,6 +94,7 @@ struct map25
, map24< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23 >
>
{
typedef map25 type;
};
template<
@ -107,6 +112,7 @@ struct map26
, map25< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24 >
>
{
typedef map26 type;
};
template<
@ -124,6 +130,7 @@ struct map27
, map26< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25 >
>
{
typedef map27 type;
};
template<
@ -141,6 +148,7 @@ struct map28
, map27< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26 >
>
{
typedef map28 type;
};
template<
@ -158,6 +166,7 @@ struct map29
, map28< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27 >
>
{
typedef map29 type;
};
template<
@ -175,6 +184,7 @@ struct map30
, map29< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28 >
>
{
typedef map30 type;
};
}}

View File

@ -28,6 +28,7 @@ struct map31
, map30< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29 >
>
{
typedef map31 type;
};
template<
@ -46,6 +47,7 @@ struct map32
, map31< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30 >
>
{
typedef map32 type;
};
template<
@ -64,6 +66,7 @@ struct map33
, map32< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31 >
>
{
typedef map33 type;
};
template<
@ -82,6 +85,7 @@ struct map34
, map33< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32 >
>
{
typedef map34 type;
};
template<
@ -100,6 +104,7 @@ struct map35
, map34< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33 >
>
{
typedef map35 type;
};
template<
@ -119,6 +124,7 @@ struct map36
, map35< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34 >
>
{
typedef map36 type;
};
template<
@ -138,6 +144,7 @@ struct map37
, map36< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35 >
>
{
typedef map37 type;
};
template<
@ -157,6 +164,7 @@ struct map38
, map37< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36 >
>
{
typedef map38 type;
};
template<
@ -176,6 +184,7 @@ struct map39
, map38< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37 >
>
{
typedef map39 type;
};
template<
@ -195,6 +204,7 @@ struct map40
, map39< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38 >
>
{
typedef map40 type;
};
}}

View File

@ -30,6 +30,7 @@ struct map41
, map40< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38,P39 >
>
{
typedef map41 type;
};
template<
@ -50,6 +51,7 @@ struct map42
, map41< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38,P39,P40 >
>
{
typedef map42 type;
};
template<
@ -70,6 +72,7 @@ struct map43
, map42< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38,P39,P40,P41 >
>
{
typedef map43 type;
};
template<
@ -90,6 +93,7 @@ struct map44
, map43< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38,P39,P40,P41,P42 >
>
{
typedef map44 type;
};
template<
@ -110,6 +114,7 @@ struct map45
, map44< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38,P39,P40,P41,P42,P43 >
>
{
typedef map45 type;
};
template<
@ -131,6 +136,7 @@ struct map46
, map45< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38,P39,P40,P41,P42,P43,P44 >
>
{
typedef map46 type;
};
template<
@ -152,6 +158,7 @@ struct map47
, map46< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38,P39,P40,P41,P42,P43,P44,P45 >
>
{
typedef map47 type;
};
template<
@ -173,6 +180,7 @@ struct map48
, map47< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38,P39,P40,P41,P42,P43,P44,P45,P46 >
>
{
typedef map48 type;
};
template<
@ -194,6 +202,7 @@ struct map49
, map48< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38,P39,P40,P41,P42,P43,P44,P45,P46,P47 >
>
{
typedef map49 type;
};
template<
@ -215,6 +224,7 @@ struct map50
, map49< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15,P16,P17,P18,P19,P20,P21,P22,P23,P24,P25,P26,P27,P28,P29,P30,P31,P32,P33,P34,P35,P36,P37,P38,P39,P40,P41,P42,P43,P44,P45,P46,P47,P48 >
>
{
typedef map50 type;
};
}}

View File

@ -61,7 +61,7 @@ struct second
};
BOOST_MPL_AUX_NA_SPEC(2, pair)
BOOST_MPL_AUX_NA_SPEC_NO_ETI(2, pair)
BOOST_MPL_AUX_NA_SPEC(1, first)
BOOST_MPL_AUX_NA_SPEC(1, second)