set/map fixes

[SVN r24912]
This commit is contained in:
Aleksey Gurtovoy
2004-09-05 09:45:19 +00:00
parent ff6d082918
commit f9be91fc35
124 changed files with 2195 additions and 337 deletions

View File

@@ -0,0 +1,21 @@
#ifndef BOOST_MPL_AUX_BASIC_BIND_HPP_INCLUDED
#define BOOST_MPL_AUX_BASIC_BIND_HPP_INCLUDED
// Copyright Peter Dimov 2001
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_CFG_NO_UNNAMED_PLACEHOLDER_SUPPORT
#include <boost/mpl/bind.hpp>
#endif // BOOST_MPL_AUX_BASIC_BIND_HPP_INCLUDED

View File

@@ -25,7 +25,7 @@ struct erase_key_impl
template< typename Sequence, typename Key > struct apply;
};
BOOST_MPL_ALGORITM_TRAITS_LAMBDA_SPEC(1, erase_key_impl)
BOOST_MPL_ALGORITM_TRAITS_LAMBDA_SPEC(2, erase_key_impl)
}}

View File

@@ -19,6 +19,7 @@
#include <boost/mpl/if.hpp>
#include <boost/mpl/long.hpp>
#include <boost/mpl/has_key.hpp>
#include <boost/mpl/aux_/overload_names.hpp>
#include <boost/mpl/aux_/static_cast.hpp>
#include <boost/mpl/aux_/type_wrapper.hpp>
#include <boost/mpl/aux_/ptr_to_ref.hpp>
@@ -30,30 +31,27 @@
namespace boost { namespace mpl {
// default implementation; requires 'Seq' to provide corresponding overloads
// of 'operator/'
// of BOOST_MPL_AUX_OVERLOAD_ORDER_BY_KEY
template< typename Seq, typename Key > struct x_order_impl
#if BOOST_WORKAROUND(BOOST_MSVC, <= 1300) || BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x561))
#if BOOST_WORKAROUND(BOOST_MSVC, BOOST_TESTED_AT(1400)) \
|| BOOST_WORKAROUND(__EDG_VERSION__, <= 245)
{
BOOST_STATIC_CONSTANT(long, value =
sizeof(
sizeof( BOOST_MPL_AUX_OVERLOAD_CALL_ORDER_BY_KEY(
*BOOST_MPL_AUX_STATIC_CAST(Seq*, 0)
/ BOOST_MPL_AUX_STATIC_CAST(aux::type_wrapper<Key>*, 0)
)
, BOOST_MPL_AUX_STATIC_CAST(aux::type_wrapper<Key>*, 0)
) )
);
# if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x561))
typedef long_<(x_order_impl::value)> type;
# else
typedef long_<value> type;
# endif
#else // ISO98 C++
: long_<
sizeof(
sizeof( BOOST_MPL_AUX_OVERLOAD_ORDER_BY_KEY(
aux::ptr_to_ref(BOOST_MPL_AUX_STATIC_CAST(Seq*, 0))
/ BOOST_MPL_AUX_STATIC_CAST(aux::type_wrapper<Key>*, 0)
)
, BOOST_MPL_AUX_STATIC_CAST(aux::type_wrapper<Key>*, 0)
) )
>
{
#endif

View File

@@ -0,0 +1,47 @@
#ifndef BOOST_MPL_AUX_OVERLOAD_NAMES_HPP_INCLUDED
#define BOOST_MPL_AUX_OVERLOAD_NAMES_HPP_INCLUDED
// Copyright Aleksey Gurtovoy 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.
// $Source$
// $Date$
// $Revision$
#include <boost/mpl/aux_/config/msvc.hpp>
#include <boost/mpl/aux_/config/workaround.hpp>
#if BOOST_WORKAROUND(BOOST_MSVC, <= 1300) \
|| BOOST_WORKAROUND(__EDG_VERSION__, <= 245)
# define BOOST_MPL_AUX_OVERLOAD_VALUE_BY_KEY operator/
# define BOOST_MPL_AUX_OVERLOAD_ITEM_BY_ORDER operator|
# define BOOST_MPL_AUX_OVERLOAD_ORDER_BY_KEY operator||
# define BOOST_MPL_AUX_OVERLOAD_IS_MASKED operator%
# define BOOST_MPL_AUX_OVERLOAD_CALL_VALUE_BY_KEY(x, y) x / y
# define BOOST_MPL_AUX_OVERLOAD_CALL_ITEM_BY_ORDER(x, y) x | y
# define BOOST_MPL_AUX_OVERLOAD_CALL_ORDER_BY_KEY(x, y) x || y
# define BOOST_MPL_AUX_OVERLOAD_CALL_IS_MASKED(x, y) x % y
#else
# define BOOST_MPL_AUX_OVERLOAD_VALUE_BY_KEY value_by_key_
# define BOOST_MPL_AUX_OVERLOAD_ITEM_BY_ORDER item_by_order_
# define BOOST_MPL_AUX_OVERLOAD_ORDER_BY_KEY order_by_key_
# define BOOST_MPL_AUX_OVERLOAD_IS_MASKED is_masked_
# define BOOST_MPL_AUX_OVERLOAD_CALL_VALUE_BY_KEY BOOST_MPL_AUX_OVERLOAD_VALUE_BY_KEY
# define BOOST_MPL_AUX_OVERLOAD_CALL_ITEM_BY_ORDER BOOST_MPL_AUX_OVERLOAD_ITEM_BY_ORDER
# define BOOST_MPL_AUX_OVERLOAD_CALL_ORDER_BY_KEY BOOST_MPL_AUX_OVERLOAD_ORDER_BY_KEY
# define BOOST_MPL_AUX_OVERLOAD_CALL_IS_MASKED BOOST_MPL_AUX_OVERLOAD_IS_MASKED
#endif
#endif // BOOST_MPL_AUX_OVERLOAD_NAMES_HPP_INCLUDED

View File

@@ -7,7 +7,7 @@
// http://www.boost.org/LICENSE_1_0.txt)
//
// Preprocessed version of "boost/mpl/bind.hpp" header
// Preprocessed version of "boost/mpl/aux_/basic_bind.hpp" header
// -- DO NOT modify by hand!
namespace boost { namespace mpl {

View File

@@ -7,7 +7,7 @@
// http://www.boost.org/LICENSE_1_0.txt)
//
// Preprocessed version of "boost/mpl/bind.hpp" header
// Preprocessed version of "boost/mpl/aux_/basic_bind.hpp" header
// -- DO NOT modify by hand!
namespace boost { namespace mpl {

View File

@@ -7,7 +7,7 @@
// http://www.boost.org/LICENSE_1_0.txt)
//
// Preprocessed version of "boost/mpl/bind.hpp" header
// Preprocessed version of "boost/mpl/aux_/basic_bind.hpp" header
// -- DO NOT modify by hand!
namespace boost { namespace mpl {

View File

@@ -7,7 +7,7 @@
// http://www.boost.org/LICENSE_1_0.txt)
//
// Preprocessed version of "boost/mpl/bind.hpp" header
// Preprocessed version of "boost/mpl/aux_/basic_bind.hpp" header
// -- DO NOT modify by hand!
namespace boost { namespace mpl {

View File

@@ -7,7 +7,7 @@
// http://www.boost.org/LICENSE_1_0.txt)
//
// Preprocessed version of "boost/mpl/bind.hpp" header
// Preprocessed version of "boost/mpl/aux_/basic_bind.hpp" header
// -- DO NOT modify by hand!
namespace boost { namespace mpl {

View File

@@ -7,7 +7,7 @@
// http://www.boost.org/LICENSE_1_0.txt)
//
// Preprocessed version of "boost/mpl/bind.hpp" header
// Preprocessed version of "boost/mpl/aux_/basic_bind.hpp" header
// -- DO NOT modify by hand!
namespace boost { namespace mpl {

View File

@@ -7,7 +7,7 @@
// http://www.boost.org/LICENSE_1_0.txt)
//
// Preprocessed version of "boost/mpl/bind.hpp" header
// Preprocessed version of "boost/mpl/aux_/basic_bind.hpp" header
// -- DO NOT modify by hand!
namespace boost { namespace mpl {

View File

@@ -7,7 +7,7 @@
// http://www.boost.org/LICENSE_1_0.txt)
//
// Preprocessed version of "boost/mpl/bind.hpp" header
// Preprocessed version of "boost/mpl/aux_/basic_bind.hpp" header
// -- DO NOT modify by hand!
namespace boost { namespace mpl {

View File

@@ -7,7 +7,7 @@
// http://www.boost.org/LICENSE_1_0.txt)
//
// Preprocessed version of "boost/mpl/bind.hpp" header
// Preprocessed version of "boost/mpl/aux_/basic_bind.hpp" header
// -- DO NOT modify by hand!
namespace boost { namespace mpl {

View File

@@ -7,7 +7,7 @@
// http://www.boost.org/LICENSE_1_0.txt)
//
// Preprocessed version of "boost/mpl/bind.hpp" header
// Preprocessed version of "boost/mpl/aux_/basic_bind.hpp" header
// -- DO NOT modify by hand!
namespace boost { namespace mpl {

View File

@@ -19,6 +19,7 @@
#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>
@@ -38,8 +39,10 @@ template< typename Map, typename Key >
struct m_at
{
typedef aux::type_wrapper<Key> key_;
typedef __typeof__( aux::ptr_to_ref(BOOST_MPL_AUX_STATIC_CAST(Map*, 0))
| BOOST_MPL_AUX_STATIC_CAST(key_*, 0) ) type;
typedef __typeof__( BOOST_MPL_AUX_OVERLOAD_CALL_VALUE_BY_KEY(
aux::ptr_to_ref(BOOST_MPL_AUX_STATIC_CAST(Map*, 0))
, BOOST_MPL_AUX_STATIC_CAST(key_*, 0)
) ) type;
};
template<>
@@ -58,8 +61,10 @@ struct at_impl< aux::map_tag >
template< typename Map, long order >
struct item_by_order_impl
{
typedef __typeof__( aux::ptr_to_ref(BOOST_MPL_AUX_STATIC_CAST(Map*, 0))
|| long_<order>() ) type;
typedef __typeof__( BOOST_MPL_AUX_OVERLOAD_CALL_ITEM_BY_ORDER(
aux::ptr_to_ref(BOOST_MPL_AUX_STATIC_CAST(Map*, 0))
, BOOST_MPL_AUX_STATIC_CAST(long_<order>*, 0)
) ) type;
};
template< typename Map, long order >
@@ -77,55 +82,36 @@ template< typename Map, long n > struct m_at
typedef void_ type;
};
template< typename Map>
struct m_at<Map,2>
{
typedef typename Map::type1 type;
};
template< typename Map>
struct m_at<Map,3>
{
typedef typename Map::type2 type;
};
template< typename Map>
struct m_at<Map,4>
{
typedef typename Map::type3 type;
};
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
>::type type_;
typedef typename m_at< Map, (x_order_impl<Map,Key>::value - 2) >::type item_;
typedef typename eval_if<
is_void_<type_>
is_void_<item_>
, void_
, second<type_>
, 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(
aux::ptr_to_ref(BOOST_MPL_AUX_STATIC_CAST(Map*, 0))
, BOOST_MPL_AUX_STATIC_CAST(long_<order>*, 0)
) ) == sizeof(aux::yes_tag)
);
};
template< typename Map, long order > struct item_by_order
{
BOOST_STATIC_CONSTANT(bool, is_deleted_ =
sizeof(
*BOOST_MPL_AUX_STATIC_CAST(Map*, 0)
% BOOST_MPL_AUX_STATIC_CAST(long_<order>*, 0)
) - 1
);
typedef typename eval_if_c<
is_deleted_
is_item_masked<Map,order>::value
, void_
, m_at<Map,order>
, m_at<Map,(order - 2)>
>::type type;
};

View File

@@ -16,6 +16,7 @@
// $Revision$
#include <boost/mpl/begin_end_fwd.hpp>
#include <boost/mpl/next_prior.hpp>
#include <boost/mpl/map/aux_/iterator.hpp>
namespace boost { namespace mpl {
@@ -25,11 +26,11 @@ struct begin_impl< aux::map_tag >
{
template< typename Map > struct apply
{
enum { max_order_ = Map::order + 1 };
typedef typename next< typename Map::order >::type max_order_;
typedef m_iter<
Map
, next_order<Map,1,max_order_>::value
, max_order_
, next_order<Map,1,max_order_::value>::value
, max_order_::value
> type;
};
};
@@ -39,8 +40,8 @@ struct end_impl< aux::map_tag >
{
template< typename Map > struct apply
{
enum { max_order_ = Map::order + 1 };
typedef m_iter< Map,max_order_,max_order_ > type;
typedef typename next< typename Map::order >::type max_order_;
typedef m_iter< Map,max_order_::value,max_order_::value > type;
};
};

View File

@@ -18,11 +18,9 @@
#include <boost/mpl/erase_fwd.hpp>
#include <boost/mpl/map/aux_/erase_key_impl.hpp>
#include <boost/mpl/map/aux_/tag.hpp>
#include <boost/mpl/aux_/config/typeof.hpp>
namespace boost { namespace mpl {
#if defined(BOOST_MPL_CFG_TYPEOF_BASED_SEQUENCES)
template<>
struct erase_impl< aux::map_tag >
{
@@ -37,7 +35,6 @@ struct erase_impl< aux::map_tag >
{
};
};
#endif
}}

View File

@@ -22,13 +22,11 @@
#include <boost/mpl/identity.hpp>
#include <boost/mpl/base.hpp>
#include <boost/mpl/eval_if.hpp>
#include <boost/mpl/aux_/config/typeof.hpp>
#include <boost/type_traits/is_same.hpp>
namespace boost { namespace mpl {
#if defined(BOOST_MPL_CFG_TYPEOF_BASED_SEQUENCES)
template<>
struct erase_key_impl< aux::map_tag >
{
@@ -49,7 +47,6 @@ struct erase_key_impl< aux::map_tag >
{
};
};
#endif
}}

View File

@@ -19,18 +19,22 @@
#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 {
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
{
};
};

View File

@@ -22,8 +22,7 @@
#if defined(BOOST_MPL_CFG_TYPEOF_BASED_SEQUENCES)
# define AUX778076_INCLUDE_DIR typeof_based
#elif defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) \
|| defined(BOOST_MPL_CFG_NO_NONTYPE_TEMPLATE_PARTIAL_SPEC)
#elif defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION)
# define AUX778076_INCLUDE_DIR no_ctps
#else
# define AUX778076_INCLUDE_DIR plain

View File

@@ -24,18 +24,26 @@
namespace boost { namespace mpl {
#if defined(BOOST_MPL_CFG_TYPEOF_BASED_SEQUENCES)
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<
( Map::size::value + 1 )
, typename Pair::first
, typename Pair::second
, Map
>
#endif
>
{
};
@@ -57,7 +65,6 @@ struct insert_impl< aux::map_tag >
{
};
};
#endif
}}

View File

@@ -22,20 +22,23 @@
#include <boost/mpl/prior.hpp>
#include <boost/mpl/map/aux_/map0.hpp>
#include <boost/mpl/aux_/order_impl.hpp>
#include <boost/mpl/aux_/overload_names.hpp>
#include <boost/mpl/aux_/yes_no.hpp>
#include <boost/mpl/aux_/type_wrapper.hpp>
#include <boost/mpl/aux_/config/static_constant.hpp>
#include <boost/mpl/aux_/config/arrays.hpp>
#include <boost/mpl/aux_/config/operators.hpp>
#include <boost/mpl/aux_/config/typeof.hpp>
#include <boost/mpl/aux_/config/workaround.hpp>
#include <boost/preprocessor/cat.hpp>
namespace boost { namespace mpl {
#if defined(BOOST_MPL_CFG_TYPEOF_BASED_SEQUENCES)
aux::type_wrapper<void_> operator|(map0<> const&, void const volatile*);
aux::type_wrapper<void_> operator||(map0<> const&, long_<1>);
aux::no_tag operator/(map0<> const&, void const volatile*);
aux::type_wrapper<void_> BOOST_MPL_AUX_OVERLOAD_VALUE_BY_KEY( map0<> const&, void const volatile* );
aux::type_wrapper<void_> BOOST_MPL_AUX_OVERLOAD_ITEM_BY_ORDER( map0<> const&, long_<1>* );
aux::no_tag BOOST_MPL_AUX_OVERLOAD_ORDER_BY_KEY( map0<> const&, void const volatile* );
# if defined(BOOST_MPL_CFG_USE_OPERATORS_SPECIALIZATION)
@@ -44,28 +47,28 @@ template< typename Key, typename Base > struct m_mask;
template< typename Key, typename T, typename Base >
aux::type_wrapper<T>
operator|(m_item<Key,T,Base> const&, aux::type_wrapper<Key>*);
BOOST_MPL_AUX_OVERLOAD_VALUE_BY_KEY( m_item<Key,T,Base> const&, aux::type_wrapper<Key>* );
template< typename Key, typename T, typename Base >
aux::type_wrapper<typename m_item<Key,T,Base>::type>
operator||(m_item<Key,T,Base> const&, long_<m_item<Key,T,Base>::order>);
aux::type_wrapper< typename m_item<Key,T,Base>::item >
BOOST_MPL_AUX_OVERLOAD_ITEM_BY_ORDER( m_item<Key,T,Base> const&, typename m_item<Key,T,Base>::order* );
template< typename Key, typename Base >
aux::type_wrapper<void_>
operator|(m_mask<Key,Base> const&, aux::type_wrapper<Key>*);
BOOST_MPL_AUX_OVERLOAD_VALUE_BY_KEY( m_mask<Key,Base> const&, aux::type_wrapper<Key>* );
template< typename Key, typename Base >
aux::type_wrapper<void_>
operator||(m_mask<Key,Base> const&, long_<m_mask<Key,Base>::old_order_::value>);
BOOST_MPL_AUX_OVERLOAD_ITEM_BY_ORDER( m_mask<Key,Base> const&, typename m_mask<Key,Base>::key_order_* );
template< typename Key, typename T, typename Base >
typename m_item<Key,T,Base>::order_tag_
operator/(m_item<Key,T,Base> const&, aux::type_wrapper<Key>*);
BOOST_MPL_AUX_OVERLOAD_ORDER_BY_KEY( m_item<Key,T,Base> const&, aux::type_wrapper<Key>* );
# define MPL_AUX_MAP_OPERATOR(x) operator x <>
# define AUX778076_MAP_OVERLOAD(f) BOOST_PP_CAT(BOOST_MPL_AUX_OVERLOAD_,f)<>
# else
# define MPL_AUX_MAP_OPERATOR(x) operator x
# define AUX778076_MAP_OVERLOAD(f) BOOST_PP_CAT(BOOST_MPL_AUX_OVERLOAD_,f)
# endif
@@ -74,22 +77,21 @@ struct m_item
: Base
{
typedef Key key_;
typedef pair<Key,T> type;
typedef pair<Key,T> item;
typedef Base base;
typedef typename next< typename Base::size >::type size;
typedef typename next< typename Base::order >::type order;
BOOST_STATIC_CONSTANT(long, order = Base::order + 1);
#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x561))
typedef typename aux::weighted_tag<(Base::order + 1)>::type order_tag_;
#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_)[order];
typedef char (&order_tag_)[BOOST_MPL_AUX_MSVC_VALUE_WKND(order)::value];
#endif
friend aux::type_wrapper<T> MPL_AUX_MAP_OPERATOR(|)(m_item const&, aux::type_wrapper<Key>*);
friend aux::type_wrapper<type> MPL_AUX_MAP_OPERATOR(||)(m_item const&, long_<order>);
friend order_tag_ MPL_AUX_MAP_OPERATOR(/)(m_item const&, aux::type_wrapper<Key>*);
friend aux::type_wrapper<T> AUX778076_MAP_OVERLOAD(VALUE_BY_KEY)( m_item const&, aux::type_wrapper<Key>* );
friend aux::type_wrapper<item> AUX778076_MAP_OVERLOAD(ITEM_BY_ORDER)( m_item const&, order* );
friend order_tag_ AUX778076_MAP_OVERLOAD(ORDER_BY_KEY)( m_item const&, aux::type_wrapper<Key>* );
};
@@ -101,20 +103,21 @@ struct m_mask
typedef Base base;
typedef typename prior< typename Base::size >::type size;
typedef typename x_order_impl<Base,Key>::type key_order_;
typedef typename x_order_impl<Base,Key>::type old_order_;
friend aux::type_wrapper<void_> MPL_AUX_MAP_OPERATOR(|)(m_mask const&, aux::type_wrapper<Key>*);
friend aux::type_wrapper<void_> MPL_AUX_MAP_OPERATOR(||)(m_mask const&, long_<old_order_::value>);
// friend order_tag_ MPL_AUX_MAP_OPERATOR(/)(m_mask const&, aux::type_wrapper<T>*);
friend aux::type_wrapper<void_> AUX778076_MAP_OVERLOAD(VALUE_BY_KEY)( m_mask const&, aux::type_wrapper<Key>* );
friend aux::type_wrapper<void_> AUX778076_MAP_OVERLOAD(ITEM_BY_ORDER)( m_mask const&, key_order_* );
};
# undef MPL_AUX_MAP_OPERATOR
# undef AUX778076_MAP_OVERLOAD
#else // BOOST_MPL_CFG_TYPEOF_BASED_SEQUENCES
aux::no_tag operator/(map0<> const&, void*);
aux::no_tag operator%(map0<> const&, void*);
aux::no_tag BOOST_MPL_AUX_OVERLOAD_ORDER_BY_KEY( map0<> const&, void const volatile* );
aux::no_tag BOOST_MPL_AUX_OVERLOAD_IS_MASKED( map0<> const&, void const volatile* );
template< long n, typename Key, typename T, typename Base >
struct m_item;
template< typename Key, typename T, typename Base >
struct m_item_
@@ -122,39 +125,18 @@ struct m_item_
{
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;
BOOST_STATIC_CONSTANT(long, order = Base::order + 1);
#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x561))
typedef typename aux::weighted_tag<(Base::order + 1)>::type order_tag_;
#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_)[order];
typedef char (&order_tag_)[BOOST_MPL_AUX_MSVC_VALUE_WKND(order)::value];
#endif
friend order_tag_ operator/(m_item_ const&, aux::type_wrapper<Key>*);
};
template< typename Key, typename T, typename Base >
struct m_item1
: m_item_<Key,T,Base>
{
typedef pair<Key,T> type1;
};
template< typename Key, typename T, typename Base >
struct m_item2
: m_item_<Key,T,Base>
{
typedef pair<Key,T> type2;
};
template< typename Key, typename T, typename Base >
struct m_item3
: m_item_<Key,T,Base>
{
typedef pair<Key,T> type3;
friend order_tag_ BOOST_MPL_AUX_OVERLOAD_ORDER_BY_KEY( m_item_ const&, aux::type_wrapper<Key>* );
};
template< typename Key, typename Base >
@@ -165,15 +147,13 @@ struct m_mask
typedef Base base;
typedef typename prior< typename Base::size >::type size;
typedef typename x_order_impl<Base,Key>::type key_order_;
typedef typename x_order_impl<Base,Key>::type old_order_;
friend aux::no_tag operator/(m_mask const&, aux::type_wrapper<Key>*);
friend aux::yes_tag operator%(m_mask const&, long_<old_order_::value>*);
friend aux::no_tag BOOST_MPL_AUX_OVERLOAD_ORDER_BY_KEY( m_mask const&, aux::type_wrapper<Key>* );
friend aux::yes_tag BOOST_MPL_AUX_OVERLOAD_IS_MASKED( m_mask const&, key_order_* );
};
#endif
#endif // BOOST_MPL_CFG_TYPEOF_BASED_SEQUENCES
}}

View File

@@ -19,7 +19,6 @@
#include <boost/mpl/void.hpp>
#include <boost/mpl/map/aux_/tag.hpp>
#include <boost/mpl/aux_/na.hpp>
#include <boost/mpl/aux_/config/static_constant.hpp>
namespace boost { namespace mpl {
@@ -28,9 +27,8 @@ 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;
BOOST_STATIC_CONSTANT(long, order = 1);
};
}}

View File

@@ -1,7 +1,7 @@
// no include guards, the header is intended for multiple inclusion!
// NO INCLUDE GUARDS, THE HEADER IS INTENDED FOR MULTIPLE INCLUSION
#if defined(BOOST_PP_IS_ITERATING)
#if !defined(BOOST_PP_IS_ITERATING)
// Copyright Aleksey Gurtovoy 2000-2004
//
@@ -15,6 +15,9 @@
// $Date$
// $Revision$
#else
#include <boost/mpl/aux_/config/typeof.hpp>
#include <boost/preprocessor/enum_params.hpp>
#include <boost/preprocessor/dec.hpp>
#include <boost/preprocessor/cat.hpp>
@@ -27,7 +30,9 @@
> \
/**/
#if i_ > 0
#if defined(BOOST_MPL_CFG_TYPEOF_BASED_SEQUENCES)
template<
BOOST_PP_ENUM_PARAMS(i_, typename P)
>
@@ -39,7 +44,36 @@ struct BOOST_PP_CAT(map,i_)
>
{
};
#endif
#else // "brute force" implementation
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_));
};
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)
>
{
};
#endif // BOOST_MPL_CFG_TYPEOF_BASED_SEQUENCES
# undef AUX778076_MAP_TAIL

View File

@@ -7,130 +7,270 @@
// http://www.boost.org/LICENSE_1_0.txt)
//
// Preprocessed version of "boost/mpl/map/Attic/map10.hpp" header
// 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<
typename P0::first
1
, typename P0::first
, typename P0::second
, map0< >
>
{
};
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<
typename P1::first
2
, typename P1::first
, typename P1::second
, map1<P0>
>
{
};
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<
typename P2::first
3
, typename P2::first
, typename P2::second
, map2< P0,P1 >
>
{
};
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<
typename P3::first
4
, typename P3::first
, typename P3::second
, map3< P0,P1,P2 >
>
{
};
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<
typename P4::first
5
, typename P4::first
, typename P4::second
, map4< P0,P1,P2,P3 >
>
{
};
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<
typename P5::first
6
, typename P5::first
, typename P5::second
, map5< P0,P1,P2,P3,P4 >
>
{
};
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<
typename P6::first
7
, typename P6::first
, typename P6::second
, map6< P0,P1,P2,P3,P4,P5 >
>
{
};
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<
typename P7::first
8
, typename P7::first
, typename P7::second
, map7< P0,P1,P2,P3,P4,P5,P6 >
>
{
};
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<
typename P8::first
9
, typename P8::first
, typename P8::second
, map8< P0,P1,P2,P3,P4,P5,P6,P7 >
>
{
};
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<
typename P9::first
10
, typename P9::first
, typename P9::second
, map9< P0,P1,P2,P3,P4,P5,P6,P7,P8 >
>

View File

@@ -7,11 +7,24 @@
// http://www.boost.org/LICENSE_1_0.txt)
//
// Preprocessed version of "boost/mpl/map/Attic/map20.hpp" header
// 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
@@ -19,13 +32,27 @@ template<
>
struct map11
: m_item<
typename P10::first
11
, typename P10::first
, typename P10::second
, map10< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9 >
>
{
};
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
@@ -33,13 +60,27 @@ template<
>
struct map12
: m_item<
typename P11::first
12
, typename P11::first
, typename P11::second
, map11< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10 >
>
{
};
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
@@ -47,13 +88,27 @@ template<
>
struct map13
: m_item<
typename P12::first
13
, typename P12::first
, typename P12::second
, map12< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11 >
>
{
};
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
@@ -61,13 +116,27 @@ template<
>
struct map14
: m_item<
typename P13::first
14
, typename P13::first
, typename P13::second
, map13< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12 >
>
{
};
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
@@ -75,13 +144,27 @@ template<
>
struct map15
: m_item<
typename P14::first
15
, typename P14::first
, typename P14::second
, map14< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13 >
>
{
};
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
@@ -90,13 +173,27 @@ template<
>
struct map16
: m_item<
typename P15::first
16
, typename P15::first
, typename P15::second
, map15< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14 >
>
{
};
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
@@ -105,13 +202,27 @@ template<
>
struct map17
: m_item<
typename P16::first
17
, typename P16::first
, typename P16::second
, map16< P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11,P12,P13,P14,P15 >
>
{
};
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
@@ -120,13 +231,27 @@ template<
>
struct map18
: m_item<
typename P17::first
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 >
>
{
};
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
@@ -135,13 +260,27 @@ template<
>
struct map19
: m_item<
typename P18::first
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 >
>
{
};
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
@@ -150,7 +289,8 @@ template<
>
struct map20
: m_item<
typename P19::first
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 >
>

View File

@@ -7,11 +7,24 @@
// http://www.boost.org/LICENSE_1_0.txt)
//
// Preprocessed version of "boost/mpl/map/Attic/map30.hpp" header
// 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
@@ -21,13 +34,27 @@ template<
>
struct map21
: m_item<
typename P20::first
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 >
>
{
};
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
@@ -37,13 +64,27 @@ template<
>
struct map22
: m_item<
typename P21::first
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 >
>
{
};
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
@@ -53,13 +94,27 @@ template<
>
struct map23
: m_item<
typename P22::first
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 >
>
{
};
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
@@ -69,13 +124,27 @@ template<
>
struct map24
: m_item<
typename P23::first
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 >
>
{
};
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
@@ -85,13 +154,27 @@ template<
>
struct map25
: m_item<
typename P24::first
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 >
>
{
};
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
@@ -102,13 +185,27 @@ template<
>
struct map26
: m_item<
typename P25::first
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 >
>
{
};
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
@@ -119,13 +216,27 @@ template<
>
struct map27
: m_item<
typename P26::first
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 >
>
{
};
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
@@ -136,13 +247,27 @@ template<
>
struct map28
: m_item<
typename P27::first
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 >
>
{
};
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
@@ -153,13 +278,27 @@ template<
>
struct map29
: m_item<
typename P28::first
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 >
>
{
};
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
@@ -170,7 +309,8 @@ template<
>
struct map30
: m_item<
typename P29::first
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 >
>

View File

@@ -7,11 +7,24 @@
// http://www.boost.org/LICENSE_1_0.txt)
//
// Preprocessed version of "boost/mpl/map/Attic/map40.hpp" header
// 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
@@ -23,13 +36,27 @@ template<
>
struct map31
: m_item<
typename P30::first
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 >
>
{
};
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
@@ -41,13 +68,27 @@ template<
>
struct map32
: m_item<
typename P31::first
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 >
>
{
};
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
@@ -59,13 +100,27 @@ template<
>
struct map33
: m_item<
typename P32::first
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 >
>
{
};
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
@@ -77,13 +132,27 @@ template<
>
struct map34
: m_item<
typename P33::first
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 >
>
{
};
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
@@ -95,13 +164,27 @@ template<
>
struct map35
: m_item<
typename P34::first
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 >
>
{
};
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
@@ -114,13 +197,27 @@ template<
>
struct map36
: m_item<
typename P35::first
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 >
>
{
};
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
@@ -133,13 +230,27 @@ template<
>
struct map37
: m_item<
typename P36::first
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 >
>
{
};
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
@@ -152,13 +263,27 @@ template<
>
struct map38
: m_item<
typename P37::first
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 >
>
{
};
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
@@ -171,13 +296,27 @@ template<
>
struct map39
: m_item<
typename P38::first
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 >
>
{
};
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
@@ -190,7 +329,8 @@ template<
>
struct map40
: m_item<
typename P39::first
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 >
>

View File

@@ -7,11 +7,24 @@
// http://www.boost.org/LICENSE_1_0.txt)
//
// Preprocessed version of "boost/mpl/map/Attic/map50.hpp" header
// 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
@@ -25,13 +38,27 @@ template<
>
struct map41
: m_item<
typename P40::first
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 >
>
{
};
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
@@ -45,13 +72,27 @@ template<
>
struct map42
: m_item<
typename P41::first
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 >
>
{
};
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
@@ -65,13 +106,27 @@ template<
>
struct map43
: m_item<
typename P42::first
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 >
>
{
};
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
@@ -85,13 +140,27 @@ template<
>
struct map44
: m_item<
typename P43::first
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 >
>
{
};
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
@@ -105,13 +174,27 @@ template<
>
struct map45
: m_item<
typename P44::first
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 >
>
{
};
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
@@ -126,13 +209,27 @@ template<
>
struct map46
: m_item<
typename P45::first
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 >
>
{
};
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
@@ -147,13 +244,27 @@ template<
>
struct map47
: m_item<
typename P46::first
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 >
>
{
};
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
@@ -168,13 +279,27 @@ template<
>
struct map48
: m_item<
typename P47::first
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 >
>
{
};
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
@@ -189,13 +314,27 @@ template<
>
struct map49
: m_item<
typename P48::first
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 >
>
{
};
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
@@ -210,7 +349,8 @@ template<
>
struct map50
: m_item<
typename P49::first
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 >
>

View File

@@ -7,7 +7,7 @@
// http://www.boost.org/LICENSE_1_0.txt)
//
// Preprocessed version of "boost/mpl/map/Attic/map10.hpp" header
// Preprocessed version of "boost/mpl/map/map10.hpp" header
// -- DO NOT modify by hand!
namespace boost { namespace mpl {

View File

@@ -7,7 +7,7 @@
// http://www.boost.org/LICENSE_1_0.txt)
//
// Preprocessed version of "boost/mpl/map/Attic/map20.hpp" header
// Preprocessed version of "boost/mpl/map/map20.hpp" header
// -- DO NOT modify by hand!
namespace boost { namespace mpl {

View File

@@ -7,7 +7,7 @@
// http://www.boost.org/LICENSE_1_0.txt)
//
// Preprocessed version of "boost/mpl/map/Attic/map30.hpp" header
// Preprocessed version of "boost/mpl/map/map30.hpp" header
// -- DO NOT modify by hand!
namespace boost { namespace mpl {

View File

@@ -7,7 +7,7 @@
// http://www.boost.org/LICENSE_1_0.txt)
//
// Preprocessed version of "boost/mpl/map/Attic/map40.hpp" header
// Preprocessed version of "boost/mpl/map/map40.hpp" header
// -- DO NOT modify by hand!
namespace boost { namespace mpl {

View File

@@ -7,7 +7,7 @@
// http://www.boost.org/LICENSE_1_0.txt)
//
// Preprocessed version of "boost/mpl/map/Attic/map50.hpp" header
// Preprocessed version of "boost/mpl/map/map50.hpp" header
// -- DO NOT modify by hand!
namespace boost { namespace mpl {

View File

@@ -34,7 +34,7 @@
namespace boost { namespace mpl {
# define BOOST_PP_ITERATION_PARAMS_1 \
(3,(0, 10, <boost/mpl/map/aux_/numbered.hpp>))
(3,(1, 10, <boost/mpl/map/aux_/numbered.hpp>))
# include BOOST_PP_ITERATE()
}}

View File

@@ -18,6 +18,7 @@
#include <boost/mpl/set/aux_/tag.hpp>
#include <boost/mpl/has_key_fwd.hpp>
#include <boost/mpl/bool.hpp>
#include <boost/mpl/aux_/overload_names.hpp>
#include <boost/mpl/aux_/static_cast.hpp>
#include <boost/mpl/aux_/yes_no.hpp>
#include <boost/mpl/aux_/type_wrapper.hpp>
@@ -30,27 +31,24 @@ template<>
struct has_key_impl< aux::set_tag >
{
template< typename Set, typename T > struct apply
#if BOOST_WORKAROUND(BOOST_MSVC, <= 1300) || BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x561))
#if BOOST_WORKAROUND(BOOST_MSVC, BOOST_TESTED_AT(1400)) \
|| BOOST_WORKAROUND(__EDG_VERSION__, <= 245)
{
BOOST_STATIC_CONSTANT(bool, value =
( sizeof(
( sizeof( BOOST_MPL_AUX_OVERLOAD_IS_MASKED(
*BOOST_MPL_AUX_STATIC_CAST(Set*, 0)
% BOOST_MPL_AUX_STATIC_CAST(aux::type_wrapper<T>*, 0)
) == sizeof(aux::yes_tag) )
, BOOST_MPL_AUX_STATIC_CAST(aux::type_wrapper<T>*, 0)
) ) == sizeof(aux::no_tag) )
);
# if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x561))
typedef bool_<(apply::value)> type;
# else
typedef bool_<value> type;
# endif
#else // ISO98 C++
: bool_<
( sizeof(
( sizeof( BOOST_MPL_AUX_OVERLOAD_IS_MASKED(
aux::ptr_to_ref(BOOST_MPL_AUX_STATIC_CAST(Set*, 0))
% BOOST_MPL_AUX_STATIC_CAST(aux::type_wrapper<T>*, 0)
) == sizeof(aux::yes_tag) )
, BOOST_MPL_AUX_STATIC_CAST(aux::type_wrapper<T>*, 0)
) ) == sizeof(aux::no_tag) )
>
{
#endif

View File

@@ -39,13 +39,6 @@ template< typename Set, typename T > struct set_insert_impl
, identity< s_item<T,Set> >
>
>
/*
: eval< if_<
has_key<Set,T>
, if_< is_same< T,typename Set::last_masked >, base< arg<Set> >, Set >
, Set
> >
*/
{
};
}

View File

@@ -20,16 +20,20 @@
#include <boost/mpl/next.hpp>
#include <boost/mpl/prior.hpp>
#include <boost/mpl/set/aux_/set0.hpp>
#include <boost/mpl/aux_/overload_names.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/operators.hpp>
#include <boost/mpl/aux_/config/static_constant.hpp>
#include <boost/preprocessor/cat.hpp>
namespace boost { namespace mpl {
aux::no_tag operator/(set0<> const&, void*);
aux::no_tag operator%(set0<> const&, void*);
aux::no_tag BOOST_MPL_AUX_OVERLOAD_ORDER_BY_KEY( set0<> const&, void const volatile* );
aux::yes_tag BOOST_MPL_AUX_OVERLOAD_IS_MASKED( set0<> const&, void const volatile* );
#if defined(BOOST_MPL_CFG_USE_OPERATORS_SPECIALIZATION)
@@ -39,22 +43,25 @@ template< typename T, typename Base > struct s_unmask;
template< typename T, typename Base >
typename s_item<T,Base>::order_tag_
operator/(s_item<T,Base> const&, aux::type_wrapper<T>*);
BOOST_MPL_AUX_OVERLOAD_ORDER_BY_KEY( s_item<T,Base> const&, aux::type_wrapper<T>* );
template< typename T, typename Base >
aux::yes_tag operator%(s_item<T,Base> const&, aux::type_wrapper<T>*);
aux::no_tag
BOOST_MPL_AUX_OVERLOAD_IS_MASKED( s_item<T,Base> const&, aux::type_wrapper<T>* );
template< typename T, typename Base >
aux::yes_tag operator%(s_unmask<T,Base> const&, aux::type_wrapper<T>*);
aux::no_tag
BOOST_MPL_AUX_OVERLOAD_IS_MASKED( s_unmask<T,Base> const&, aux::type_wrapper<T>* );
template< typename T, typename Base >
aux::no_tag operator%(s_mask<T,Base> const&, aux::type_wrapper<T>*);
aux::yes_tag
BOOST_MPL_AUX_OVERLOAD_IS_MASKED( s_mask<T,Base> const&, aux::type_wrapper<T>* );
# define MPL_AUX_SET_OPERATOR(x) operator x <>
# define AUX778076_SET_OVERLOAD(f) BOOST_PP_CAT(BOOST_MPL_AUX_OVERLOAD_,f)<>
#else
# define MPL_AUX_SET_OPERATOR(x) operator x
#endif
# else
# define AUX778076_SET_OVERLOAD(f) BOOST_PP_CAT(BOOST_MPL_AUX_OVERLOAD_,f)
# endif
template< typename T, typename Base >
@@ -68,17 +75,16 @@ struct s_item
typedef Base base;
typedef typename next< typename Base::size >::type size;
typedef typename next< typename Base::order >::type order;
BOOST_STATIC_CONSTANT(long, order = Base::order + 1);
#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x561))
typedef typename aux::weighted_tag<(Base::order + 1)>::type order_tag_;
#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_)[order];
typedef char (&order_tag_)[BOOST_MPL_AUX_MSVC_VALUE_WKND(order)::value];
#endif
friend order_tag_ MPL_AUX_SET_OPERATOR(/)(s_item const&, aux::type_wrapper<T>*);
friend aux::yes_tag MPL_AUX_SET_OPERATOR(%)(s_item const&, aux::type_wrapper<T>*);
friend order_tag_ AUX778076_SET_OVERLOAD(ORDER_BY_KEY)( s_item const&, aux::type_wrapper<T>* );
friend aux::no_tag AUX778076_SET_OVERLOAD(IS_MASKED)( s_item const&, aux::type_wrapper<T>* );
};
@@ -91,7 +97,7 @@ struct s_mask
typedef Base base;
typedef typename prior< typename Base::size >::type size;
friend aux::no_tag MPL_AUX_SET_OPERATOR(%)(s_mask const&, aux::type_wrapper<T>*);
friend aux::yes_tag AUX778076_SET_OVERLOAD(IS_MASKED)( s_mask const&, aux::type_wrapper<T>* );
};
@@ -104,10 +110,10 @@ struct s_unmask
typedef Base base;
typedef typename next< typename Base::size >::type size;
friend aux::yes_tag MPL_AUX_SET_OPERATOR(%)(s_unmask const&, aux::type_wrapper<T>*);
friend aux::no_tag AUX778076_SET_OVERLOAD(IS_MASKED)( s_unmask const&, aux::type_wrapper<T>* );
};
#undef MPL_AUX_SET_OPERATOR
#undef AUX778076_SET_OVERLOAD
}}

View File

@@ -37,6 +37,7 @@ struct BOOST_PP_CAT(set,i_)
, AUX778076_SET_TAIL(set,BOOST_PP_DEC(i_),T)
>
{
typedef BOOST_PP_CAT(set,i_) type;
};
#endif

View File

@@ -7,7 +7,7 @@
// http://www.boost.org/LICENSE_1_0.txt)
//
// Preprocessed version of "boost/mpl/set/Attic/set10.hpp" header
// Preprocessed version of "boost/mpl/set/set10.hpp" header
// -- DO NOT modify by hand!
namespace boost { namespace mpl {
@@ -21,6 +21,7 @@ struct set1
, set0< >
>
{
typedef set1 type;
};
template<
@@ -32,6 +33,7 @@ struct set2
, set1<T0>
>
{
typedef set2 type;
};
template<
@@ -43,6 +45,7 @@ struct set3
, set2< T0,T1 >
>
{
typedef set3 type;
};
template<
@@ -54,6 +57,7 @@ struct set4
, set3< T0,T1,T2 >
>
{
typedef set4 type;
};
template<
@@ -65,6 +69,7 @@ struct set5
, set4< T0,T1,T2,T3 >
>
{
typedef set5 type;
};
template<
@@ -77,6 +82,7 @@ struct set6
, set5< T0,T1,T2,T3,T4 >
>
{
typedef set6 type;
};
template<
@@ -89,6 +95,7 @@ struct set7
, set6< T0,T1,T2,T3,T4,T5 >
>
{
typedef set7 type;
};
template<
@@ -101,6 +108,7 @@ struct set8
, set7< T0,T1,T2,T3,T4,T5,T6 >
>
{
typedef set8 type;
};
template<
@@ -113,6 +121,7 @@ struct set9
, set8< T0,T1,T2,T3,T4,T5,T6,T7 >
>
{
typedef set9 type;
};
template<
@@ -125,6 +134,7 @@ struct set10
, set9< T0,T1,T2,T3,T4,T5,T6,T7,T8 >
>
{
typedef set10 type;
};
}}

View File

@@ -7,7 +7,7 @@
// http://www.boost.org/LICENSE_1_0.txt)
//
// Preprocessed version of "boost/mpl/set/Attic/set20.hpp" header
// Preprocessed version of "boost/mpl/set/set20.hpp" header
// -- DO NOT modify by hand!
namespace boost { namespace mpl {
@@ -23,6 +23,7 @@ struct set11
, set10< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9 >
>
{
typedef set11 type;
};
template<
@@ -36,6 +37,7 @@ struct set12
, set11< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10 >
>
{
typedef set12 type;
};
template<
@@ -49,6 +51,7 @@ struct set13
, set12< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11 >
>
{
typedef set13 type;
};
template<
@@ -62,6 +65,7 @@ struct set14
, set13< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12 >
>
{
typedef set14 type;
};
template<
@@ -75,6 +79,7 @@ struct set15
, set14< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13 >
>
{
typedef set15 type;
};
template<
@@ -89,6 +94,7 @@ struct set16
, set15< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14 >
>
{
typedef set16 type;
};
template<
@@ -103,6 +109,7 @@ struct set17
, set16< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15 >
>
{
typedef set17 type;
};
template<
@@ -117,6 +124,7 @@ struct set18
, set17< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16 >
>
{
typedef set18 type;
};
template<
@@ -131,6 +139,7 @@ struct set19
, set18< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17 >
>
{
typedef set19 type;
};
template<
@@ -145,6 +154,7 @@ struct set20
, set19< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18 >
>
{
typedef set20 type;
};
}}

View File

@@ -7,7 +7,7 @@
// http://www.boost.org/LICENSE_1_0.txt)
//
// Preprocessed version of "boost/mpl/set/Attic/set30.hpp" header
// Preprocessed version of "boost/mpl/set/set30.hpp" header
// -- DO NOT modify by hand!
namespace boost { namespace mpl {
@@ -25,6 +25,7 @@ struct set21
, set20< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19 >
>
{
typedef set21 type;
};
template<
@@ -40,6 +41,7 @@ struct set22
, set21< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20 >
>
{
typedef set22 type;
};
template<
@@ -55,6 +57,7 @@ struct set23
, set22< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21 >
>
{
typedef set23 type;
};
template<
@@ -70,6 +73,7 @@ struct set24
, set23< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22 >
>
{
typedef set24 type;
};
template<
@@ -85,6 +89,7 @@ struct set25
, set24< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23 >
>
{
typedef set25 type;
};
template<
@@ -101,6 +106,7 @@ struct set26
, set25< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24 >
>
{
typedef set26 type;
};
template<
@@ -117,6 +123,7 @@ struct set27
, set26< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25 >
>
{
typedef set27 type;
};
template<
@@ -133,6 +140,7 @@ struct set28
, set27< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26 >
>
{
typedef set28 type;
};
template<
@@ -149,6 +157,7 @@ struct set29
, set28< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27 >
>
{
typedef set29 type;
};
template<
@@ -165,6 +174,7 @@ struct set30
, set29< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28 >
>
{
typedef set30 type;
};
}}

View File

@@ -7,7 +7,7 @@
// http://www.boost.org/LICENSE_1_0.txt)
//
// Preprocessed version of "boost/mpl/set/Attic/set40.hpp" header
// Preprocessed version of "boost/mpl/set/set40.hpp" header
// -- DO NOT modify by hand!
namespace boost { namespace mpl {
@@ -27,6 +27,7 @@ struct set31
, set30< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29 >
>
{
typedef set31 type;
};
template<
@@ -44,6 +45,7 @@ struct set32
, set31< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30 >
>
{
typedef set32 type;
};
template<
@@ -61,6 +63,7 @@ struct set33
, set32< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31 >
>
{
typedef set33 type;
};
template<
@@ -78,6 +81,7 @@ struct set34
, set33< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32 >
>
{
typedef set34 type;
};
template<
@@ -95,6 +99,7 @@ struct set35
, set34< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33 >
>
{
typedef set35 type;
};
template<
@@ -113,6 +118,7 @@ struct set36
, set35< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34 >
>
{
typedef set36 type;
};
template<
@@ -131,6 +137,7 @@ struct set37
, set36< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35 >
>
{
typedef set37 type;
};
template<
@@ -149,6 +156,7 @@ struct set38
, set37< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36 >
>
{
typedef set38 type;
};
template<
@@ -167,6 +175,7 @@ struct set39
, set38< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37 >
>
{
typedef set39 type;
};
template<
@@ -185,6 +194,7 @@ struct set40
, set39< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38 >
>
{
typedef set40 type;
};
}}

View File

@@ -7,7 +7,7 @@
// http://www.boost.org/LICENSE_1_0.txt)
//
// Preprocessed version of "boost/mpl/set/Attic/set50.hpp" header
// Preprocessed version of "boost/mpl/set/set50.hpp" header
// -- DO NOT modify by hand!
namespace boost { namespace mpl {
@@ -29,6 +29,7 @@ struct set41
, set40< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39 >
>
{
typedef set41 type;
};
template<
@@ -48,6 +49,7 @@ struct set42
, set41< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40 >
>
{
typedef set42 type;
};
template<
@@ -67,6 +69,7 @@ struct set43
, set42< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41 >
>
{
typedef set43 type;
};
template<
@@ -86,6 +89,7 @@ struct set44
, set43< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42 >
>
{
typedef set44 type;
};
template<
@@ -105,6 +109,7 @@ struct set45
, set44< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43 >
>
{
typedef set45 type;
};
template<
@@ -125,6 +130,7 @@ struct set46
, set45< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44 >
>
{
typedef set46 type;
};
template<
@@ -145,6 +151,7 @@ struct set47
, set46< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45 >
>
{
typedef set47 type;
};
template<
@@ -165,6 +172,7 @@ struct set48
, set47< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46 >
>
{
typedef set48 type;
};
template<
@@ -185,6 +193,7 @@ struct set49
, set48< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47 >
>
{
typedef set49 type;
};
template<
@@ -205,6 +214,7 @@ struct set50
, set49< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48 >
>
{
typedef set50 type;
};
}}

View File

@@ -17,20 +17,19 @@
#include <boost/mpl/long.hpp>
#include <boost/mpl/void.hpp>
#include <boost/mpl/aux_/na.hpp>
#include <boost/mpl/set/aux_/tag.hpp>
#include <boost/mpl/aux_/config/static_constant.hpp>
namespace boost { namespace mpl {
template< int dummy_ = 0 > struct set0
template< typename Dummy = na > struct set0
{
typedef aux::set_tag tag;
typedef void_ last_masked_;
typedef void_ item_type_;
typedef item_type_ type;
typedef long_<0> size;
BOOST_STATIC_CONSTANT(long, order = 0);
typedef long_<1> order;
};
}}

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/list/list10.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/list/list10_c.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/list/list20.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/list/list20_c.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/list/list30.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/list/list30_c.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/list/list40.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/list/list40_c.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/list/list50.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/list/list50_c.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2003-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/map/map10.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2003-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/map/map20.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2003-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/map/map30.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2003-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/map/map40.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2003-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/map/map50.hpp>

View File

@@ -145,7 +145,11 @@ class pretty:
self.reading_copyright = 0
self.copyright = None
self.re_header_name_comment = re.compile( r'^\s*//\s+\$[S]ource: /cvsroot/boost/boost/(.*),v\s*\$$' )
self.re_header_name_comment = re.compile(
r'^\s*//\s+\$[S]ource: /cvsroot/boost/boost/(.*?%s\.hpp),v\s*\$$'
% os.path.splitext( name )[0]
)
self.header_was_written = 0
self.re_junk = re.compile(r'^\s*(#|//[^/]|////).*$')
@@ -189,7 +193,8 @@ class pretty:
return
# searching for header line
if not self.header_was_written and self.re_header_name_comment.match( line ):
if not self.header_was_written:
if self.re_header_name_comment.match( line ):
self.header_was_written = 1
match = self.re_header_name_comment.match( line )
self.output.write( \

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2003-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/set/set10.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2003-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/set/set20.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2003-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/set/set30.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2003-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/set/set40.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2003-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/set/set50.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/aux_/advance_backward.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/aux_/advance_forward.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/and.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/apply.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/apply_fwd.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/apply_wrap.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/arg.hpp>

View File

@@ -1,3 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#define BOOST_MPL_CFG_NO_UNNAMED_PLACEHOLDER_SUPPORT
#include <boost/mpl/bind.hpp>
#include <boost/config.hpp>
#include <boost/mpl/aux_/basic_bind.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/bind.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/bind_fwd.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/bitand.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/bitor.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/bitxor.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/divides.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/equal_to.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/aux_/fold_impl.hpp>

View File

@@ -1,3 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
//#define BOOST_MPL_CFG_NO_LAMBDA_HEURISTIC
#include <boost/config.hpp>
#include <boost/mpl/aux_/full_lambda.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/greater.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/greater_equal.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/inherit.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/aux_/iter_fold_if_impl.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/aux_/iter_fold_impl.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/aux_/lambda_no_ctps.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/less.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/less_equal.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/list.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/list_c.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/map.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/minus.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/modulus.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/not_equal_to.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/or.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/placeholders.hpp>

View File

@@ -1,2 +1,16 @@
// Copyright Aleksey Gurtovoy 2002-4004
//
// 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.
// $Source$
// $Date$
// $Revision$
#define BOOST_MPL_PREPROCESSING_MODE
#include <boost/config.hpp>
#include <boost/mpl/plus.hpp>

Some files were not shown because too many files have changed in this diff Show More