Replaced function pointers with boost::function.

This commit is contained in:
David Williams
2009-06-18 23:04:10 +00:00
parent 5e2b8156c9
commit bf26f9c89a
1434 changed files with 215930 additions and 8 deletions

View File

@ -0,0 +1,144 @@
#ifndef BOOST_MPL_MAP_AUX_AT_IMPL_HPP_INCLUDED
#define BOOST_MPL_MAP_AUX_AT_IMPL_HPP_INCLUDED
// Copyright Aleksey Gurtovoy 2003-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)
//
// See http://www.boost.org/libs/mpl for documentation.
// $Id: at_impl.hpp 49267 2008-10-11 06:19:02Z agurtovoy $
// $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $
// $Revision: 49267 $
#include <boost/mpl/at_fwd.hpp>
#include <boost/mpl/long.hpp>
#include <boost/mpl/map/aux_/tag.hpp>
#include <boost/mpl/aux_/order_impl.hpp>
#include <boost/mpl/aux_/overload_names.hpp>
#include <boost/mpl/aux_/type_wrapper.hpp>
#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>
# include <boost/mpl/pair.hpp>
# include <boost/mpl/void.hpp>
# include <boost/mpl/aux_/config/static_constant.hpp>
#endif
namespace boost { namespace mpl {
#if defined(BOOST_MPL_CFG_TYPEOF_BASED_SEQUENCES)
template< typename Map, typename Key >
struct m_at
{
typedef aux::type_wrapper<Key> key_;
typedef __typeof__( BOOST_MPL_AUX_OVERLOAD_CALL_VALUE_BY_KEY(
Map
, BOOST_MPL_AUX_STATIC_CAST(key_*, 0)
) ) type;
};
template<>
struct at_impl< aux::map_tag >
{
template< typename Map, typename Key > struct apply
: aux::wrapped_type< typename m_at<
Map
, Key
>::type >
{
};
};
// agurt 31/jan/04: two-step implementation for the sake of GCC 3.x
template< typename Map, long order >
struct item_by_order_impl
{
typedef __typeof__( BOOST_MPL_AUX_OVERLOAD_CALL_ITEM_BY_ORDER(
Map
, BOOST_MPL_AUX_STATIC_CAST(long_<order>*, 0)
) ) type;
};
template< typename Map, long order >
struct item_by_order
: aux::wrapped_type<
typename item_by_order_impl<Map,order>::type
>
{
};
#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 >
{
template< typename Map, typename Key > struct apply
{
typedef typename m_at< Map, (x_order_impl<Map,Key>::value - 2) >::type item_;
typedef typename eval_if<
is_void_<item_>
, void_
, second<item_>
>::type type;
};
};
template< typename Map, long order > struct is_item_masked
{
BOOST_STATIC_CONSTANT(bool, value =
sizeof( BOOST_MPL_AUX_OVERLOAD_CALL_IS_MASKED(
Map
, BOOST_MPL_AUX_STATIC_CAST(long_<order>*, 0)
) ) == sizeof(aux::yes_tag)
);
};
template< typename Map, long order > struct item_by_order
{
typedef typename eval_if_c<
is_item_masked<Map,order>::value
, void_
, m_at<Map,(order - 2)>
>::type type;
};
#endif
}}
#endif // BOOST_MPL_SET_AUX_AT_IMPL_HPP_INCLUDED

View File

@ -0,0 +1,50 @@
#ifndef BOOST_MPL_MAP_AUX_BEGIN_END_IMPL_HPP_INCLUDED
#define BOOST_MPL_MAP_AUX_BEGIN_END_IMPL_HPP_INCLUDED
// Copyright Aleksey Gurtovoy 2003-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)
//
// See http://www.boost.org/libs/mpl for documentation.
// $Id: begin_end_impl.hpp 49267 2008-10-11 06:19:02Z agurtovoy $
// $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $
// $Revision: 49267 $
#include <boost/mpl/begin_end_fwd.hpp>
#include <boost/mpl/next_prior.hpp>
#include <boost/mpl/map/aux_/iterator.hpp>
namespace boost { namespace mpl {
template<>
struct begin_impl< aux::map_tag >
{
template< typename Map > struct apply
{
typedef typename next< typename Map::order >::type max_order_;
typedef m_iter<
Map
, next_order<Map,1,max_order_::value>::value
, max_order_::value
> type;
};
};
template<>
struct end_impl< aux::map_tag >
{
template< typename Map > struct apply
{
typedef typename next< typename Map::order >::type max_order_;
typedef m_iter< Map,max_order_::value,max_order_::value > type;
};
};
}}
#endif // BOOST_MPL_MAP_AUX_BEGIN_END_IMPL_HPP_INCLUDED

View File

@ -0,0 +1,35 @@
#ifndef BOOST_MPL_MAP_AUX_CLEAR_IMPL_HPP_INCLUDED
#define BOOST_MPL_MAP_AUX_CLEAR_IMPL_HPP_INCLUDED
// Copyright Aleksey Gurtovoy 2003-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)
//
// See http://www.boost.org/libs/mpl for documentation.
// $Id: clear_impl.hpp 49267 2008-10-11 06:19:02Z agurtovoy $
// $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $
// $Revision: 49267 $
#include <boost/mpl/clear_fwd.hpp>
#include <boost/mpl/map/aux_/map0.hpp>
#include <boost/mpl/map/aux_/tag.hpp>
namespace boost { namespace mpl {
template<>
struct clear_impl< aux::map_tag >
{
template< typename Map > struct apply
{
typedef map0<> type;
};
};
}}
#endif // BOOST_MPL_MAP_AUX_CLEAR_IMPL_HPP_INCLUDED

View File

@ -0,0 +1,43 @@
#ifndef BOOST_MPL_MAP_AUX_CONTAINS_IMPL_HPP_INCLUDED
#define BOOST_MPL_MAP_AUX_CONTAINS_IMPL_HPP_INCLUDED
// Copyright Aleksey Gurtovoy 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)
//
// See http://www.boost.org/libs/mpl for documentation.
// $Id: contains_impl.hpp 49267 2008-10-11 06:19:02Z agurtovoy $
// $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $
// $Revision: 49267 $
#include <boost/mpl/contains_fwd.hpp>
#include <boost/mpl/if.hpp>
#include <boost/mpl/map/aux_/at_impl.hpp>
#include <boost/mpl/map/aux_/tag.hpp>
#include <boost/type_traits/is_same.hpp>
namespace boost { namespace mpl {
template<>
struct contains_impl< aux::map_tag >
{
template< typename Map, typename Pair > struct apply
: is_same<
typename at_impl<aux::map_tag>::apply<
Map
, typename Pair::first
>::type
, typename Pair::second
>
{
};
};
}}
#endif // BOOST_MPL_MAP_AUX_CONTAINS_IMPL_HPP_INCLUDED

View File

@ -0,0 +1,34 @@
#ifndef BOOST_MPL_MAP_AUX_EMPTY_IMPL_HPP_INCLUDED
#define BOOST_MPL_MAP_AUX_EMPTY_IMPL_HPP_INCLUDED
// Copyright Aleksey Gurtovoy 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)
//
// See http://www.boost.org/libs/mpl for documentation.
// $Id: empty_impl.hpp 49267 2008-10-11 06:19:02Z agurtovoy $
// $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $
// $Revision: 49267 $
#include <boost/mpl/empty_fwd.hpp>
#include <boost/mpl/not.hpp>
#include <boost/mpl/map/aux_/tag.hpp>
namespace boost { namespace mpl {
template<>
struct empty_impl< aux::map_tag >
{
template< typename Map > struct apply
: not_< typename Map::size >
{
};
};
}}
#endif // BOOST_MPL_MAP_AUX_EMPTY_IMPL_HPP_INCLUDED

View File

@ -0,0 +1,41 @@
#ifndef BOOST_MPL_MAP_AUX_ERASE_IMPL_HPP_INCLUDED
#define BOOST_MPL_MAP_AUX_ERASE_IMPL_HPP_INCLUDED
// Copyright Aleksey Gurtovoy 2003-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)
//
// See http://www.boost.org/libs/mpl for documentation.
// $Id: erase_impl.hpp 49267 2008-10-11 06:19:02Z agurtovoy $
// $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $
// $Revision: 49267 $
#include <boost/mpl/erase_fwd.hpp>
#include <boost/mpl/map/aux_/erase_key_impl.hpp>
#include <boost/mpl/map/aux_/tag.hpp>
namespace boost { namespace mpl {
template<>
struct erase_impl< aux::map_tag >
{
template<
typename Map
, typename Pos
, typename unused_
>
struct apply
: erase_key_impl<aux::map_tag>
::apply<Map,typename Pos::type::first>
{
};
};
}}
#endif // BOOST_MPL_MAP_AUX_ERASE_IMPL_HPP_INCLUDED

View File

@ -0,0 +1,53 @@
#ifndef BOOST_MPL_MAP_AUX_ERASE_KEY_IMPL_HPP_INCLUDED
#define BOOST_MPL_MAP_AUX_ERASE_KEY_IMPL_HPP_INCLUDED
// Copyright Aleksey Gurtovoy 2003-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)
//
// See http://www.boost.org/libs/mpl for documentation.
// $Id: erase_key_impl.hpp 49267 2008-10-11 06:19:02Z agurtovoy $
// $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $
// $Revision: 49267 $
#include <boost/mpl/erase_key_fwd.hpp>
#include <boost/mpl/map/aux_/has_key_impl.hpp>
#include <boost/mpl/map/aux_/item.hpp>
#include <boost/mpl/map/aux_/tag.hpp>
#include <boost/mpl/identity.hpp>
#include <boost/mpl/base.hpp>
#include <boost/mpl/eval_if.hpp>
#include <boost/type_traits/is_same.hpp>
namespace boost { namespace mpl {
template<>
struct erase_key_impl< aux::map_tag >
{
template<
typename Map
, typename Key
>
struct apply
: eval_if<
has_key_impl<aux::map_tag>::apply<Map,Key>
, eval_if<
is_same< Key,typename Map::key_ >
, base<Map>
, identity< m_mask<Key,Map> >
>
, identity<Map>
>
{
};
};
}}
#endif // BOOST_MPL_MAP_AUX_ERASE_KEY_IMPL_HPP_INCLUDED

View File

@ -0,0 +1,44 @@
#ifndef BOOST_MPL_MAP_AUX_HAS_KEY_IMPL_HPP_INCLUDED
#define BOOST_MPL_MAP_AUX_HAS_KEY_IMPL_HPP_INCLUDED
// Copyright Aleksey Gurtovoy 2003-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)
//
// See http://www.boost.org/libs/mpl for documentation.
// $Id: has_key_impl.hpp 49267 2008-10-11 06:19:02Z agurtovoy $
// $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $
// $Revision: 49267 $
#include <boost/mpl/has_key_fwd.hpp>
#include <boost/mpl/map/aux_/tag.hpp>
#include <boost/mpl/map/aux_/at_impl.hpp>
#include <boost/mpl/void.hpp>
#include <boost/mpl/aux_/config/typeof.hpp>
namespace boost { namespace mpl {
template<>
struct has_key_impl< aux::map_tag >
{
template< typename Map, typename Key > struct apply
#if defined(BOOST_MPL_CFG_TYPEOF_BASED_SEQUENCES)
: is_not_void_<
typename at_impl<aux::map_tag>
::apply<Map,Key>::type
>
#else
: bool_< ( x_order_impl<Map,Key>::value > 1 ) >
#endif
{
};
};
}}
#endif // BOOST_MPL_MAP_AUX_HAS_KEY_IMPL_HPP_INCLUDED

View File

@ -0,0 +1,53 @@
// Copyright Aleksey Gurtovoy 2001-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)
//
// See http://www.boost.org/libs/mpl for documentation.
// $Id: include_preprocessed.hpp 49267 2008-10-11 06:19:02Z agurtovoy $
// $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $
// $Revision: 49267 $
// NO INCLUDE GUARDS, THE HEADER IS INTENDED FOR MULTIPLE INCLUSION!
#include <boost/mpl/aux_/config/typeof.hpp>
#include <boost/mpl/aux_/config/ctps.hpp>
#include <boost/mpl/aux_/config/preprocessor.hpp>
#include <boost/mpl/aux_/config/workaround.hpp>
#include <boost/preprocessor/cat.hpp>
#include <boost/preprocessor/stringize.hpp>
#if defined(BOOST_MPL_CFG_TYPEOF_BASED_SEQUENCES)
# define AUX778076_INCLUDE_DIR typeof_based
#elif defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION)
# define AUX778076_INCLUDE_DIR no_ctps
#else
# define AUX778076_INCLUDE_DIR plain
#endif
#if !defined(BOOST_NEEDS_TOKEN_PASTING_OP_FOR_TOKENS_JUXTAPOSING)
# define AUX778076_HEADER \
AUX778076_INCLUDE_DIR/BOOST_MPL_PREPROCESSED_HEADER \
/**/
#else
# define AUX778076_HEADER \
BOOST_PP_CAT(AUX778076_INCLUDE_DIR,/)##BOOST_MPL_PREPROCESSED_HEADER \
/**/
#endif
#if BOOST_WORKAROUND(__IBMCPP__, BOOST_TESTED_AT(700))
# define AUX778076_INCLUDE_STRING BOOST_PP_STRINGIZE(boost/mpl/map/aux_/preprocessed/AUX778076_HEADER)
# include AUX778076_INCLUDE_STRING
# undef AUX778076_INCLUDE_STRING
#else
# include BOOST_PP_STRINGIZE(boost/mpl/map/aux_/preprocessed/AUX778076_HEADER)
#endif
# undef AUX778076_HEADER
# undef AUX778076_INCLUDE_DIR
#undef BOOST_MPL_PREPROCESSED_HEADER

View File

@ -0,0 +1,72 @@
#ifndef BOOST_MPL_MAP_AUX_INSERT_IMPL_HPP_INCLUDED
#define BOOST_MPL_MAP_AUX_INSERT_IMPL_HPP_INCLUDED
// Copyright Aleksey Gurtovoy 2003-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)
//
// See http://www.boost.org/libs/mpl for documentation.
// $Id: insert_impl.hpp 49267 2008-10-11 06:19:02Z agurtovoy $
// $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $
// $Revision: 49267 $
#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>
#include <boost/mpl/aux_/na.hpp>
#include <boost/mpl/aux_/config/typeof.hpp>
namespace boost { namespace mpl {
namespace aux {
template< typename Map, typename Pair >
struct map_insert_impl
: if_<
contains_impl<aux::map_tag>::apply<Map,Pair>
, Map
#if defined(BOOST_MPL_CFG_TYPEOF_BASED_SEQUENCES)
, m_item<
typename Pair::first
, typename Pair::second
, Map
>
#else
, m_item<
next< typename Map::size >::type::value
, typename Pair::first
, typename Pair::second
, Map
>
#endif
>
{
};
}
template<>
struct insert_impl< aux::map_tag >
{
template<
typename Map
, typename PosOrKey
, typename KeyOrNA
>
struct apply
: aux::map_insert_impl<
Map
, typename if_na<KeyOrNA,PosOrKey>::type
>
{
};
};
}}
#endif // BOOST_MPL_MAP_AUX_INSERT_IMPL_HPP_INCLUDED

View File

@ -0,0 +1,138 @@
#ifndef BOOST_MPL_MAP_AUX_ITEM_HPP_INCLUDED
#define BOOST_MPL_MAP_AUX_ITEM_HPP_INCLUDED
// Copyright Aleksey Gurtovoy 2003-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)
//
// See http://www.boost.org/libs/mpl for documentation.
// $Id: item.hpp 49267 2008-10-11 06:19:02Z agurtovoy $
// $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $
// $Revision: 49267 $
#include <boost/mpl/void.hpp>
#include <boost/mpl/pair.hpp>
#include <boost/mpl/long.hpp>
#include <boost/mpl/next.hpp>
#include <boost/mpl/prior.hpp>
#include <boost/mpl/map/aux_/map0.hpp>
#include <boost/mpl/aux_/order_impl.hpp>
#include <boost/mpl/aux_/yes_no.hpp>
#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 {
#if defined(BOOST_MPL_CFG_TYPEOF_BASED_SEQUENCES)
template< typename Key, typename T, typename Base >
struct m_item
: Base
{
typedef Key key_;
typedef pair<Key,T> item;
typedef Base base;
typedef typename next< typename Base::size >::type size;
typedef typename next< typename Base::order >::type order;
#if defined(BOOST_MPL_CFG_NO_DEPENDENT_ARRAY_TYPES)
typedef typename aux::weighted_tag<BOOST_MPL_AUX_MSVC_VALUE_WKND(order)::value>::type order_tag_;
#else
typedef char (&order_tag_)[BOOST_MPL_AUX_MSVC_VALUE_WKND(order)::value];
#endif
BOOST_MPL_AUX_MAP_OVERLOAD( aux::type_wrapper<T>, VALUE_BY_KEY, m_item, aux::type_wrapper<Key>* );
BOOST_MPL_AUX_MAP_OVERLOAD( aux::type_wrapper<item>, ITEM_BY_ORDER, m_item, order* );
BOOST_MPL_AUX_MAP_OVERLOAD( order_tag_, ORDER_BY_KEY, m_item, aux::type_wrapper<Key>* );
};
template< typename Key, typename Base >
struct m_mask
: Base
{
typedef void_ key_;
typedef Base base;
typedef typename prior< typename Base::size >::type size;
typedef typename x_order_impl<Base,Key>::type key_order_;
BOOST_MPL_AUX_MAP_OVERLOAD( aux::type_wrapper<void_>, VALUE_BY_KEY, m_mask, aux::type_wrapper<Key>* );
BOOST_MPL_AUX_MAP_OVERLOAD( aux::type_wrapper<void_>, ITEM_BY_ORDER, m_mask, key_order_* );
};
#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
{
typedef Key key_;
typedef Base base;
typedef m_item_ type;
typedef typename next< typename Base::size >::type size;
typedef typename next< typename Base::order >::type order;
#if defined(BOOST_MPL_CFG_NO_DEPENDENT_ARRAY_TYPES)
typedef typename aux::weighted_tag<BOOST_MPL_AUX_MSVC_VALUE_WKND(order)::value>::type order_tag_;
#else
typedef char (&order_tag_)[BOOST_MPL_AUX_MSVC_VALUE_WKND(order)::value];
#endif
BOOST_MPL_AUX_MAP_OVERLOAD( order_tag_, ORDER_BY_KEY, m_item_, aux::type_wrapper<Key>* );
};
template< typename Key, typename Base >
struct m_mask
: Base
{
typedef void_ key_;
typedef Base base;
typedef typename prior< typename Base::size >::type size;
typedef typename x_order_impl<Base,Key>::type key_order_;
BOOST_MPL_AUX_MAP_OVERLOAD( aux::no_tag, ORDER_BY_KEY, m_mask, aux::type_wrapper<Key>* );
BOOST_MPL_AUX_MAP_OVERLOAD( aux::yes_tag, IS_MASKED, m_mask, key_order_* );
};
#endif // BOOST_MPL_CFG_TYPEOF_BASED_SEQUENCES
}}
#endif // BOOST_MPL_MAP_AUX_ITEM_HPP_INCLUDED

View File

@ -0,0 +1,169 @@
#ifndef BOOST_MPL_MAP_AUX_ITERATOR_HPP_INCLUDED
#define BOOST_MPL_MAP_AUX_ITERATOR_HPP_INCLUDED
// Copyright Aleksey Gurtovoy 2003-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)
//
// See http://www.boost.org/libs/mpl for documentation.
// $Id: iterator.hpp 49267 2008-10-11 06:19:02Z agurtovoy $
// $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $
// $Revision: 49267 $
#include <boost/mpl/map/aux_/map0.hpp>
#include <boost/mpl/map/aux_/at_impl.hpp>
#include <boost/mpl/map/aux_/tag.hpp>
#include <boost/mpl/iterator_tags.hpp>
#include <boost/mpl/if.hpp>
#include <boost/mpl/next.hpp>
#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
, long max_order
>
struct next_order
: if_<
is_void_< typename item_by_order<Map,order>::type >
, next_order<Map,(order+1),max_order>
, long_<order>
>::type
{
};
template<
typename Map
, long max_order
>
struct next_order<Map,max_order,max_order>
: long_<max_order>
{
};
template< typename Map, long order, long max_order >
struct m_iter
{
typedef forward_iterator_tag category;
typedef typename item_by_order<Map,order>::type type;
};
template< typename Map, long max_order >
struct m_iter<Map,max_order,max_order>
{
typedef forward_iterator_tag category;
};
template< typename Map, long order, long max_order >
struct next< m_iter<Map,order,max_order> >
{
typedef m_iter<
Map
, next_order<Map,order+1,max_order>::value
, max_order
> type;
};
template< typename Map, long max_order >
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

@ -0,0 +1,36 @@
#ifndef BOOST_MPL_MAP_AUX_KEY_TYPE_IMPL_HPP_INCLUDED
#define BOOST_MPL_MAP_AUX_KEY_TYPE_IMPL_HPP_INCLUDED
// Copyright Aleksey Gurtovoy 2003-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)
//
// See http://www.boost.org/libs/mpl for documentation.
// $Id: key_type_impl.hpp 49267 2008-10-11 06:19:02Z agurtovoy $
// $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $
// $Revision: 49267 $
#include <boost/mpl/key_type_fwd.hpp>
#include <boost/mpl/pair.hpp>
#include <boost/mpl/map/aux_/tag.hpp>
namespace boost {
namespace mpl {
template<>
struct key_type_impl< aux::map_tag >
{
template< typename Map, typename T > struct apply
: first<T>
{
};
};
}}
#endif // BOOST_MPL_MAP_AUX_KEY_TYPE_IMPL_HPP_INCLUDED

View File

@ -0,0 +1,74 @@
#ifndef BOOST_MPL_MAP_AUX_MAP0_HPP_INCLUDED
#define BOOST_MPL_MAP_AUX_MAP0_HPP_INCLUDED
// Copyright Aleksey Gurtovoy 2003-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)
//
// See http://www.boost.org/libs/mpl for documentation.
// $Id: map0.hpp 49267 2008-10-11 06:19:02Z agurtovoy $
// $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $
// $Revision: 49267 $
#include <boost/mpl/long.hpp>
#include <boost/mpl/void.hpp>
#include <boost/mpl/map/aux_/tag.hpp>
#include <boost/mpl/aux_/na.hpp>
#include <boost/mpl/aux_/yes_no.hpp>
#include <boost/mpl/aux_/overload_names.hpp>
#include <boost/mpl/aux_/config/operators.hpp>
#include <boost/preprocessor/cat.hpp>
namespace boost { namespace mpl {
#if defined(BOOST_MPL_CFG_USE_OPERATORS_OVERLOADING)
# define BOOST_MPL_AUX_MAP0_OVERLOAD(R, f, X, T) \
friend R BOOST_PP_CAT(BOOST_MPL_AUX_OVERLOAD_,f)(X const&, T) \
/**/
# define BOOST_MPL_AUX_MAP_OVERLOAD(R, f, X, T) \
BOOST_MPL_AUX_MAP0_OVERLOAD(R, f, X, T) \
/**/
#else
# define BOOST_MPL_AUX_MAP0_OVERLOAD(R, f, X, T) \
static R BOOST_PP_CAT(BOOST_MPL_AUX_OVERLOAD_,f)(X const&, T) \
/**/
# define BOOST_MPL_AUX_MAP_OVERLOAD(R, f, X, T) \
BOOST_MPL_AUX_MAP0_OVERLOAD(R, f, X, T); \
using Base::BOOST_PP_CAT(BOOST_MPL_AUX_OVERLOAD_,f) \
/**/
#endif
template< typename Dummy = na > struct map0
{
typedef map0 type;
typedef aux::map_tag tag;
typedef void_ key_;
typedef long_<1> order;
typedef long_<0> size;
#if defined(BOOST_MPL_CFG_TYPEOF_BASED_SEQUENCES)
BOOST_MPL_AUX_MAP0_OVERLOAD( aux::type_wrapper<void_>, VALUE_BY_KEY, map0<>, void const volatile* );
BOOST_MPL_AUX_MAP0_OVERLOAD( aux::type_wrapper<void_>, ITEM_BY_ORDER, map0<>, long_<1>* );
BOOST_MPL_AUX_MAP0_OVERLOAD( aux::no_tag, ORDER_BY_KEY, map0<>, void const volatile* );
#else
BOOST_MPL_AUX_MAP0_OVERLOAD( aux::no_tag, ORDER_BY_KEY, map0<>, void const volatile* );
BOOST_MPL_AUX_MAP0_OVERLOAD( aux::no_tag, IS_MASKED, map0<>, void const volatile* );
#endif
};
}}
#endif // BOOST_MPL_MAP_AUX_MAP0_HPP_INCLUDED

View File

@ -0,0 +1,110 @@
// NO INCLUDE GUARDS, THE HEADER IS INTENDED FOR MULTIPLE INCLUSION
#if !defined(BOOST_PP_IS_ITERATING)
// 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)
//
// See http://www.boost.org/libs/mpl for documentation.
// $Id: numbered.hpp 49267 2008-10-11 06:19:02Z agurtovoy $
// $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $
// $Revision: 49267 $
#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>
#define i_ BOOST_PP_FRAME_ITERATION(1)
# define AUX778076_MAP_TAIL(map, i_, P) \
BOOST_PP_CAT(map,i_)< \
BOOST_PP_ENUM_PARAMS(i_, P) \
> \
/**/
#if defined(BOOST_MPL_CFG_TYPEOF_BASED_SEQUENCES)
template<
BOOST_PP_ENUM_PARAMS(i_, typename P)
>
struct BOOST_PP_CAT(map,i_)
: m_item<
typename BOOST_PP_CAT(P,BOOST_PP_DEC(i_))::first
, typename BOOST_PP_CAT(P,BOOST_PP_DEC(i_))::second
, 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_)>
{
typedef typename Map::BOOST_PP_CAT(item,BOOST_PP_DEC(i_)) type;
};
template< typename Key, typename T, typename Base >
struct m_item<i_,Key,T,Base>
: m_item_<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)
>
struct BOOST_PP_CAT(map,i_)
: m_item<
i_
, typename BOOST_PP_CAT(P,BOOST_PP_DEC(i_))::first
, typename BOOST_PP_CAT(P,BOOST_PP_DEC(i_))::second
, AUX778076_MAP_TAIL(map,BOOST_PP_DEC(i_),P)
>
{
typedef BOOST_PP_CAT(map,i_) type;
};
#endif // BOOST_MPL_CFG_TYPEOF_BASED_SEQUENCES
# undef AUX778076_MAP_TAIL
#undef i_
#endif // BOOST_PP_IS_ITERATING

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

@ -0,0 +1,290 @@
// 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< typename Map>
struct m_at< Map,0 >
{
typedef typename Map::item0 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 1,Key,T,Base >
: 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< typename Map>
struct m_at< Map,1 >
{
typedef typename Map::item1 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 2,Key,T,Base >
: 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< typename Map>
struct m_at< Map,2 >
{
typedef typename Map::item2 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 3,Key,T,Base >
: 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< typename Map>
struct m_at< Map,3 >
{
typedef typename Map::item3 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 4,Key,T,Base >
: 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< typename Map>
struct m_at< Map,4 >
{
typedef typename Map::item4 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 5,Key,T,Base >
: 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< typename Map>
struct m_at< Map,5 >
{
typedef typename Map::item5 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 6,Key,T,Base >
: 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< typename Map>
struct m_at< Map,6 >
{
typedef typename Map::item6 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 7,Key,T,Base >
: 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< typename Map>
struct m_at< Map,7 >
{
typedef typename Map::item7 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 8,Key,T,Base >
: 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< typename Map>
struct m_at< Map,8 >
{
typedef typename Map::item8 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 9,Key,T,Base >
: 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< typename Map>
struct m_at< Map,9 >
{
typedef typename Map::item9 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 10,Key,T,Base >
: 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,310 @@
// 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< typename Map>
struct m_at< Map,10 >
{
typedef typename Map::item10 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 11,Key,T,Base >
: 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< typename Map>
struct m_at< Map,11 >
{
typedef typename Map::item11 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 12,Key,T,Base >
: 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< typename Map>
struct m_at< Map,12 >
{
typedef typename Map::item12 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 13,Key,T,Base >
: 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< typename Map>
struct m_at< Map,13 >
{
typedef typename Map::item13 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 14,Key,T,Base >
: 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< typename Map>
struct m_at< Map,14 >
{
typedef typename Map::item14 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 15,Key,T,Base >
: 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< typename Map>
struct m_at< Map,15 >
{
typedef typename Map::item15 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 16,Key,T,Base >
: 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< typename Map>
struct m_at< Map,16 >
{
typedef typename Map::item16 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 17,Key,T,Base >
: 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< typename Map>
struct m_at< Map,17 >
{
typedef typename Map::item17 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 18,Key,T,Base >
: 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< typename Map>
struct m_at< Map,18 >
{
typedef typename Map::item18 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 19,Key,T,Base >
: 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< typename Map>
struct m_at< Map,19 >
{
typedef typename Map::item19 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 20,Key,T,Base >
: 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,330 @@
// 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< typename Map>
struct m_at< Map,20 >
{
typedef typename Map::item20 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 21,Key,T,Base >
: 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< typename Map>
struct m_at< Map,21 >
{
typedef typename Map::item21 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 22,Key,T,Base >
: 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< typename Map>
struct m_at< Map,22 >
{
typedef typename Map::item22 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 23,Key,T,Base >
: 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< typename Map>
struct m_at< Map,23 >
{
typedef typename Map::item23 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 24,Key,T,Base >
: 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< typename Map>
struct m_at< Map,24 >
{
typedef typename Map::item24 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 25,Key,T,Base >
: 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< typename Map>
struct m_at< Map,25 >
{
typedef typename Map::item25 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 26,Key,T,Base >
: 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< typename Map>
struct m_at< Map,26 >
{
typedef typename Map::item26 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 27,Key,T,Base >
: 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< typename Map>
struct m_at< Map,27 >
{
typedef typename Map::item27 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 28,Key,T,Base >
: 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< typename Map>
struct m_at< Map,28 >
{
typedef typename Map::item28 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 29,Key,T,Base >
: 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< typename Map>
struct m_at< Map,29 >
{
typedef typename Map::item29 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 30,Key,T,Base >
: 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,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/map40.hpp" header
// -- DO NOT modify by hand!
namespace boost { namespace mpl {
template< typename Map>
struct m_at< Map,30 >
{
typedef typename Map::item30 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 31,Key,T,Base >
: 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< typename Map>
struct m_at< Map,31 >
{
typedef typename Map::item31 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 32,Key,T,Base >
: 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< typename Map>
struct m_at< Map,32 >
{
typedef typename Map::item32 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 33,Key,T,Base >
: 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< typename Map>
struct m_at< Map,33 >
{
typedef typename Map::item33 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 34,Key,T,Base >
: 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< typename Map>
struct m_at< Map,34 >
{
typedef typename Map::item34 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 35,Key,T,Base >
: 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< typename Map>
struct m_at< Map,35 >
{
typedef typename Map::item35 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 36,Key,T,Base >
: 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< typename Map>
struct m_at< Map,36 >
{
typedef typename Map::item36 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 37,Key,T,Base >
: 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< typename Map>
struct m_at< Map,37 >
{
typedef typename Map::item37 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 38,Key,T,Base >
: 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< typename Map>
struct m_at< Map,38 >
{
typedef typename Map::item38 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 39,Key,T,Base >
: 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< typename Map>
struct m_at< Map,39 >
{
typedef typename Map::item39 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 40,Key,T,Base >
: 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,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/map50.hpp" header
// -- DO NOT modify by hand!
namespace boost { namespace mpl {
template< typename Map>
struct m_at< Map,40 >
{
typedef typename Map::item40 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 41,Key,T,Base >
: 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< typename Map>
struct m_at< Map,41 >
{
typedef typename Map::item41 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 42,Key,T,Base >
: 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< typename Map>
struct m_at< Map,42 >
{
typedef typename Map::item42 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 43,Key,T,Base >
: 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< typename Map>
struct m_at< Map,43 >
{
typedef typename Map::item43 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 44,Key,T,Base >
: 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< typename Map>
struct m_at< Map,44 >
{
typedef typename Map::item44 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 45,Key,T,Base >
: 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< typename Map>
struct m_at< Map,45 >
{
typedef typename Map::item45 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 46,Key,T,Base >
: 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< typename Map>
struct m_at< Map,46 >
{
typedef typename Map::item46 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 47,Key,T,Base >
: 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< typename Map>
struct m_at< Map,47 >
{
typedef typename Map::item47 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 48,Key,T,Base >
: 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< typename Map>
struct m_at< Map,48 >
{
typedef typename Map::item48 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 49,Key,T,Base >
: 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< typename Map>
struct m_at< Map,49 >
{
typedef typename Map::item49 type;
};
template< typename Key, typename T, typename Base >
struct m_item< 50,Key,T,Base >
: 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

@ -0,0 +1,150 @@
// 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<
typename P0
>
struct map1
: m_item<
typename P0::first
, typename P0::second
, map0< >
>
{
typedef map1 type;
};
template<
typename P0, typename P1
>
struct map2
: m_item<
typename P1::first
, typename P1::second
, map1<P0>
>
{
typedef map2 type;
};
template<
typename P0, typename P1, typename P2
>
struct map3
: m_item<
typename P2::first
, typename P2::second
, map2< P0,P1 >
>
{
typedef map3 type;
};
template<
typename P0, typename P1, typename P2, typename P3
>
struct map4
: m_item<
typename P3::first
, typename P3::second
, map3< P0,P1,P2 >
>
{
typedef map4 type;
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
>
struct map5
: m_item<
typename P4::first
, typename P4::second
, map4< P0,P1,P2,P3 >
>
{
typedef map5 type;
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5
>
struct map6
: m_item<
typename P5::first
, typename P5::second
, map5< P0,P1,P2,P3,P4 >
>
{
typedef map6 type;
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6
>
struct map7
: m_item<
typename P6::first
, typename P6::second
, map6< P0,P1,P2,P3,P4,P5 >
>
{
typedef map7 type;
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7
>
struct map8
: m_item<
typename P7::first
, typename P7::second
, map7< P0,P1,P2,P3,P4,P5,P6 >
>
{
typedef map8 type;
};
template<
typename P0, typename P1, typename P2, typename P3, typename P4
, typename P5, typename P6, typename P7, typename P8
>
struct map9
: m_item<
typename P8::first
, typename P8::second
, map8< P0,P1,P2,P3,P4,P5,P6,P7 >
>
{
typedef map9 type;
};
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<
typename P9::first
, typename P9::second
, map9< P0,P1,P2,P3,P4,P5,P6,P7,P8 >
>
{
typedef map10 type;
};
}}

View File

@ -0,0 +1,170 @@
// 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<
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<
typename P10::first
, typename P10::second
, map10< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9 >
>
{
typedef map11 type;
};
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<
typename P11::first
, typename P11::second
, map11< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10 >
>
{
typedef map12 type;
};
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<
typename P12::first
, typename P12::second
, map12< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11 >
>
{
typedef map13 type;
};
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<
typename P13::first
, typename P13::second
, map13< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12 >
>
{
typedef map14 type;
};
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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,190 @@
// 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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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,210 @@
// 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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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,230 @@
// 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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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<
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

@ -0,0 +1,33 @@
#ifndef BOOST_MPL_MAP_AUX_SIZE_IMPL_HPP_INCLUDED
#define BOOST_MPL_MAP_AUX_SIZE_IMPL_HPP_INCLUDED
// Copyright Aleksey Gurtovoy 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)
//
// See http://www.boost.org/libs/mpl for documentation.
// $Id: size_impl.hpp 49267 2008-10-11 06:19:02Z agurtovoy $
// $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $
// $Revision: 49267 $
#include <boost/mpl/size_fwd.hpp>
#include <boost/mpl/map/aux_/tag.hpp>
namespace boost { namespace mpl {
template<>
struct size_impl< aux::map_tag >
{
template< typename Map > struct apply
: Map::size
{
};
};
}}
#endif // BOOST_MPL_MAP_AUX_SIZE_IMPL_HPP_INCLUDED

View File

@ -0,0 +1,24 @@
#ifndef BOOST_MPL_MAP_AUX_TAG_HPP_INCLUDED
#define BOOST_MPL_MAP_AUX_TAG_HPP_INCLUDED
// Copyright Aleksey Gurtovoy 2003-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)
//
// See http://www.boost.org/libs/mpl for documentation.
// $Id: tag.hpp 49267 2008-10-11 06:19:02Z agurtovoy $
// $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $
// $Revision: 49267 $
namespace boost { namespace mpl { namespace aux {
struct map_tag;
}}}
#endif // BOOST_MPL_MAP_AUX_TAG_HPP_INCLUDED

View File

@ -0,0 +1,36 @@
#ifndef BOOST_MPL_MAP_AUX_VALUE_TYPE_IMPL_HPP_INCLUDED
#define BOOST_MPL_MAP_AUX_VALUE_TYPE_IMPL_HPP_INCLUDED
// Copyright Aleksey Gurtovoy 2003-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)
//
// See http://www.boost.org/libs/mpl for documentation.
// $Id: value_type_impl.hpp 49267 2008-10-11 06:19:02Z agurtovoy $
// $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $
// $Revision: 49267 $
#include <boost/mpl/value_type_fwd.hpp>
#include <boost/mpl/pair.hpp>
#include <boost/mpl/map/aux_/tag.hpp>
namespace boost {
namespace mpl {
template<>
struct value_type_impl< aux::map_tag >
{
template< typename Map, typename T > struct apply
: second<T>
{
};
};
}}
#endif // BOOST_MPL_MAP_AUX_VALUE_TYPE_IMPL_HPP_INCLUDED

View File

@ -0,0 +1,36 @@
#ifndef BOOST_MPL_MAP_MAP0_HPP_INCLUDED
#define BOOST_MPL_MAP_MAP0_HPP_INCLUDED
// Copyright Aleksey Gurtovoy 2003-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)
//
// See http://www.boost.org/libs/mpl for documentation.
// $Id: map0.hpp 49267 2008-10-11 06:19:02Z agurtovoy $
// $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $
// $Revision: 49267 $
#include <boost/mpl/map/aux_/contains_impl.hpp>
#include <boost/mpl/map/aux_/at_impl.hpp>
//#include <boost/mpl/map/aux_/O1_size.hpp>
#include <boost/mpl/map/aux_/insert_impl.hpp>
#include <boost/mpl/map/aux_/erase_impl.hpp>
#include <boost/mpl/map/aux_/erase_key_impl.hpp>
#include <boost/mpl/map/aux_/has_key_impl.hpp>
#include <boost/mpl/map/aux_/key_type_impl.hpp>
#include <boost/mpl/map/aux_/value_type_impl.hpp>
#include <boost/mpl/map/aux_/clear_impl.hpp>
#include <boost/mpl/map/aux_/size_impl.hpp>
#include <boost/mpl/map/aux_/empty_impl.hpp>
#include <boost/mpl/map/aux_/begin_end_impl.hpp>
#include <boost/mpl/map/aux_/iterator.hpp>
#include <boost/mpl/map/aux_/item.hpp>
#include <boost/mpl/map/aux_/map0.hpp>
#include <boost/mpl/map/aux_/tag.hpp>
#endif // BOOST_MPL_MAP_MAP0_HPP_INCLUDED

View File

@ -0,0 +1,44 @@
#ifndef BOOST_MPL_MAP_MAP10_HPP_INCLUDED
#define BOOST_MPL_MAP_MAP10_HPP_INCLUDED
// 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)
//
// See http://www.boost.org/libs/mpl for documentation.
// $Id: map10.hpp 49267 2008-10-11 06:19:02Z agurtovoy $
// $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $
// $Revision: 49267 $
#if !defined(BOOST_MPL_PREPROCESSING_MODE)
# include <boost/mpl/map/map0.hpp>
#endif
#include <boost/mpl/aux_/config/use_preprocessed.hpp>
#if !defined(BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS) \
&& !defined(BOOST_MPL_PREPROCESSING_MODE)
# define BOOST_MPL_PREPROCESSED_HEADER map10.hpp
# include <boost/mpl/map/aux_/include_preprocessed.hpp>
#else
# include <boost/preprocessor/iterate.hpp>
namespace boost { namespace mpl {
# define BOOST_PP_ITERATION_PARAMS_1 \
(3,(1, 10, <boost/mpl/map/aux_/numbered.hpp>))
# include BOOST_PP_ITERATE()
}}
#endif // BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS
#endif // BOOST_MPL_MAP_MAP10_HPP_INCLUDED

View File

@ -0,0 +1,44 @@
#ifndef BOOST_MPL_MAP_MAP20_HPP_INCLUDED
#define BOOST_MPL_MAP_MAP20_HPP_INCLUDED
// 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)
//
// See http://www.boost.org/libs/mpl for documentation.
// $Id: map20.hpp 49267 2008-10-11 06:19:02Z agurtovoy $
// $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $
// $Revision: 49267 $
#if !defined(BOOST_MPL_PREPROCESSING_MODE)
# include <boost/mpl/map/map10.hpp>
#endif
#include <boost/mpl/aux_/config/use_preprocessed.hpp>
#if !defined(BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS) \
&& !defined(BOOST_MPL_PREPROCESSING_MODE)
# define BOOST_MPL_PREPROCESSED_HEADER map20.hpp
# include <boost/mpl/map/aux_/include_preprocessed.hpp>
#else
# include <boost/preprocessor/iterate.hpp>
namespace boost { namespace mpl {
# define BOOST_PP_ITERATION_PARAMS_1 \
(3,(11, 20, <boost/mpl/map/aux_/numbered.hpp>))
# include BOOST_PP_ITERATE()
}}
#endif // BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS
#endif // BOOST_MPL_MAP_MAP20_HPP_INCLUDED

View File

@ -0,0 +1,44 @@
#ifndef BOOST_MPL_MAP_MAP30_HPP_INCLUDED
#define BOOST_MPL_MAP_MAP30_HPP_INCLUDED
// 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)
//
// See http://www.boost.org/libs/mpl for documentation.
// $Id: map30.hpp 49267 2008-10-11 06:19:02Z agurtovoy $
// $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $
// $Revision: 49267 $
#if !defined(BOOST_MPL_PREPROCESSING_MODE)
# include <boost/mpl/map/map20.hpp>
#endif
#include <boost/mpl/aux_/config/use_preprocessed.hpp>
#if !defined(BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS) \
&& !defined(BOOST_MPL_PREPROCESSING_MODE)
# define BOOST_MPL_PREPROCESSED_HEADER map30.hpp
# include <boost/mpl/map/aux_/include_preprocessed.hpp>
#else
# include <boost/preprocessor/iterate.hpp>
namespace boost { namespace mpl {
# define BOOST_PP_ITERATION_PARAMS_1 \
(3,(21, 30, <boost/mpl/map/aux_/numbered.hpp>))
# include BOOST_PP_ITERATE()
}}
#endif // BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS
#endif // BOOST_MPL_MAP_MAP30_HPP_INCLUDED

View File

@ -0,0 +1,44 @@
#ifndef BOOST_MPL_MAP_MAP40_HPP_INCLUDED
#define BOOST_MPL_MAP_MAP40_HPP_INCLUDED
// 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)
//
// See http://www.boost.org/libs/mpl for documentation.
// $Id: map40.hpp 49267 2008-10-11 06:19:02Z agurtovoy $
// $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $
// $Revision: 49267 $
#if !defined(BOOST_MPL_PREPROCESSING_MODE)
# include <boost/mpl/map/map30.hpp>
#endif
#include <boost/mpl/aux_/config/use_preprocessed.hpp>
#if !defined(BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS) \
&& !defined(BOOST_MPL_PREPROCESSING_MODE)
# define BOOST_MPL_PREPROCESSED_HEADER map40.hpp
# include <boost/mpl/map/aux_/include_preprocessed.hpp>
#else
# include <boost/preprocessor/iterate.hpp>
namespace boost { namespace mpl {
# define BOOST_PP_ITERATION_PARAMS_1 \
(3,(31, 40, <boost/mpl/map/aux_/numbered.hpp>))
# include BOOST_PP_ITERATE()
}}
#endif // BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS
#endif // BOOST_MPL_MAP_MAP40_HPP_INCLUDED

View File

@ -0,0 +1,44 @@
#ifndef BOOST_MPL_MAP_MAP50_HPP_INCLUDED
#define BOOST_MPL_MAP_MAP50_HPP_INCLUDED
// 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)
//
// See http://www.boost.org/libs/mpl for documentation.
// $Id: map50.hpp 49267 2008-10-11 06:19:02Z agurtovoy $
// $Date: 2008-10-11 02:19:02 -0400 (Sat, 11 Oct 2008) $
// $Revision: 49267 $
#if !defined(BOOST_MPL_PREPROCESSING_MODE)
# include <boost/mpl/map/map40.hpp>
#endif
#include <boost/mpl/aux_/config/use_preprocessed.hpp>
#if !defined(BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS) \
&& !defined(BOOST_MPL_PREPROCESSING_MODE)
# define BOOST_MPL_PREPROCESSED_HEADER map50.hpp
# include <boost/mpl/map/aux_/include_preprocessed.hpp>
#else
# include <boost/preprocessor/iterate.hpp>
namespace boost { namespace mpl {
# define BOOST_PP_ITERATION_PARAMS_1 \
(3,(41, 50, <boost/mpl/map/aux_/numbered.hpp>))
# include BOOST_PP_ITERATE()
}}
#endif // BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS
#endif // BOOST_MPL_MAP_MAP50_HPP_INCLUDED