mirror of
https://github.com/boostorg/mpl.git
synced 2025-08-02 22:34:31 +02:00
MPL names/directory structure refactoring
[SVN r17651]
This commit is contained in:
@@ -29,7 +29,7 @@ namespace fsm {
|
|||||||
namespace aux {
|
namespace aux {
|
||||||
|
|
||||||
namespace mpl = boost::mpl;
|
namespace mpl = boost::mpl;
|
||||||
using namespace mpl::placeholder;
|
using namespace mpl::placeholders;
|
||||||
|
|
||||||
template< typename Transition >
|
template< typename Transition >
|
||||||
struct STT_void_row_impl
|
struct STT_void_row_impl
|
||||||
|
@@ -15,13 +15,13 @@
|
|||||||
// without express or implied warranty.
|
// without express or implied warranty.
|
||||||
|
|
||||||
#include "boost/mpl/inherit_linearly.hpp"
|
#include "boost/mpl/inherit_linearly.hpp"
|
||||||
#include "boost/mpl/int_c.hpp"
|
#include "boost/mpl/int.hpp"
|
||||||
#include "boost/mpl/list.hpp"
|
#include "boost/mpl/list.hpp"
|
||||||
|
|
||||||
#include <iostream>
|
#include <iostream>
|
||||||
|
|
||||||
namespace mpl = boost::mpl;
|
namespace mpl = boost::mpl;
|
||||||
using namespace mpl::placeholder;
|
using namespace mpl::placeholders;
|
||||||
|
|
||||||
template< typename Base, typename T >
|
template< typename Base, typename T >
|
||||||
struct tuple_part
|
struct tuple_part
|
||||||
@@ -36,7 +36,7 @@ struct tuple_part
|
|||||||
|
|
||||||
struct empty_tuple
|
struct empty_tuple
|
||||||
{
|
{
|
||||||
typedef mpl::int_c<-1> index;
|
typedef mpl::int_<-1> index;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@@ -51,14 +51,14 @@ int main()
|
|||||||
{
|
{
|
||||||
my_tuple t;
|
my_tuple t;
|
||||||
|
|
||||||
field(t, mpl::int_c<0>()) = -1;
|
field(t, mpl::int_<0>()) = -1;
|
||||||
field(t, mpl::int_c<1>()) = "text";
|
field(t, mpl::int_<1>()) = "text";
|
||||||
field(t, mpl::int_c<2>()) = false;
|
field(t, mpl::int_<2>()) = false;
|
||||||
|
|
||||||
std::cout
|
std::cout
|
||||||
<< field(t, mpl::int_c<0>()) << '\n'
|
<< field(t, mpl::int_<0>()) << '\n'
|
||||||
<< field(t, mpl::int_c<1>()) << '\n'
|
<< field(t, mpl::int_<1>()) << '\n'
|
||||||
<< field(t, mpl::int_c<2>()) << '\n'
|
<< field(t, mpl::int_<2>()) << '\n'
|
||||||
;
|
;
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
@@ -21,7 +21,7 @@
|
|||||||
#include <iostream>
|
#include <iostream>
|
||||||
|
|
||||||
namespace mpl = boost::mpl;
|
namespace mpl = boost::mpl;
|
||||||
using namespace mpl::placeholder;
|
using namespace mpl::placeholders;
|
||||||
|
|
||||||
template< typename T >
|
template< typename T >
|
||||||
struct tuple_field
|
struct tuple_field
|
||||||
|
@@ -14,12 +14,12 @@
|
|||||||
// suitability of this software for any purpose. It is provided "as is"
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
// without express or implied warranty.
|
// without express or implied warranty.
|
||||||
|
|
||||||
#include "boost/mpl/arithmetic/multiplies.hpp"
|
#include "boost/mpl/multiplies.hpp"
|
||||||
#include "boost/mpl/list.hpp"
|
#include "boost/mpl/list.hpp"
|
||||||
#include "boost/mpl/lower_bound.hpp"
|
#include "boost/mpl/lower_bound.hpp"
|
||||||
#include "boost/mpl/transform_view.hpp"
|
#include "boost/mpl/transform_view.hpp"
|
||||||
#include "boost/mpl/sizeof.hpp"
|
#include "boost/mpl/sizeof.hpp"
|
||||||
#include "boost/mpl/int_c.hpp"
|
#include "boost/mpl/int.hpp"
|
||||||
#include "boost/mpl/identity.hpp"
|
#include "boost/mpl/identity.hpp"
|
||||||
#include "boost/mpl/base.hpp"
|
#include "boost/mpl/base.hpp"
|
||||||
#include "boost/mpl/apply_if.hpp"
|
#include "boost/mpl/apply_if.hpp"
|
||||||
@@ -28,7 +28,7 @@
|
|||||||
#include "boost/mpl/assert_is_same.hpp"
|
#include "boost/mpl/assert_is_same.hpp"
|
||||||
|
|
||||||
namespace mpl = boost::mpl;
|
namespace mpl = boost::mpl;
|
||||||
using namespace mpl::placeholder;
|
using namespace mpl::placeholders;
|
||||||
|
|
||||||
template< int bit_size >
|
template< int bit_size >
|
||||||
class big_int
|
class big_int
|
||||||
@@ -42,9 +42,9 @@ struct integer
|
|||||||
typedef mpl::list<char,short,int,long> builtins_;
|
typedef mpl::list<char,short,int,long> builtins_;
|
||||||
typedef typename mpl::base< typename mpl::lower_bound<
|
typedef typename mpl::base< typename mpl::lower_bound<
|
||||||
mpl::transform_view< builtins_
|
mpl::transform_view< builtins_
|
||||||
, mpl::multiplies< mpl::sizeof_<_1>, mpl::int_c<8> >
|
, mpl::multiplies< mpl::sizeof_<_1>, mpl::int_<8> >
|
||||||
>
|
>
|
||||||
, mpl::int_c<bit_size>
|
, mpl::int_<bit_size>
|
||||||
>::type >::type iter_;
|
>::type >::type iter_;
|
||||||
|
|
||||||
typedef typename mpl::end<builtins_>::type last_;
|
typedef typename mpl::end<builtins_>::type last_;
|
||||||
|
@@ -16,11 +16,11 @@
|
|||||||
|
|
||||||
#include "boost/mpl/v2_1.hpp"
|
#include "boost/mpl/v2_1.hpp"
|
||||||
|
|
||||||
#include "boost/mpl/logical/not.hpp"
|
#include "boost/mpl/not.hpp"
|
||||||
#include "boost/mpl/logical/or.hpp"
|
#include "boost/mpl/or.hpp"
|
||||||
#include "boost/mpl/comparison/less.hpp"
|
#include "boost/mpl/less.hpp"
|
||||||
#include "boost/mpl/comparison/equal_to.hpp"
|
#include "boost/mpl/equal_to.hpp"
|
||||||
#include "boost/mpl/arithmetic/multiplies.hpp"
|
#include "boost/mpl/multiplies.hpp"
|
||||||
#include "boost/mpl/prior.hpp"
|
#include "boost/mpl/prior.hpp"
|
||||||
#include "boost/mpl/find_if.hpp"
|
#include "boost/mpl/find_if.hpp"
|
||||||
#include "boost/mpl/count_if.hpp"
|
#include "boost/mpl/count_if.hpp"
|
||||||
@@ -30,7 +30,7 @@
|
|||||||
#include "boost/static_assert.hpp"
|
#include "boost/static_assert.hpp"
|
||||||
|
|
||||||
namespace mpl = boost::mpl;
|
namespace mpl = boost::mpl;
|
||||||
using namespace mpl::placeholder;
|
using namespace mpl::placeholders;
|
||||||
using namespace mpl::v2_1;
|
using namespace mpl::v2_1;
|
||||||
|
|
||||||
|
|
||||||
|
@@ -17,8 +17,8 @@
|
|||||||
#ifndef BOOST_MPL_ADVANCE_HPP_INCLUDED
|
#ifndef BOOST_MPL_ADVANCE_HPP_INCLUDED
|
||||||
#define BOOST_MPL_ADVANCE_HPP_INCLUDED
|
#define BOOST_MPL_ADVANCE_HPP_INCLUDED
|
||||||
|
|
||||||
#include "boost/mpl/arithmetic/negate.hpp"
|
#include "boost/mpl/negate.hpp"
|
||||||
#include "boost/mpl/comparison/less.hpp"
|
#include "boost/mpl/less.hpp"
|
||||||
#include "boost/mpl/integral_c.hpp"
|
#include "boost/mpl/integral_c.hpp"
|
||||||
#include "boost/mpl/if.hpp"
|
#include "boost/mpl/if.hpp"
|
||||||
#include "boost/mpl/iterator_tag.hpp"
|
#include "boost/mpl/iterator_tag.hpp"
|
||||||
|
42
include/boost/mpl/and.hpp
Normal file
42
include/boost/mpl/and.hpp
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
|
||||||
|
#ifndef BOOST_MPL_AND_HPP_INCLUDED
|
||||||
|
#define BOOST_MPL_AND_HPP_INCLUDED
|
||||||
|
|
||||||
|
// + file: boost/mpl/and.hpp
|
||||||
|
// + last modified: 25/feb/03
|
||||||
|
|
||||||
|
// Copyright (c) 2000-03
|
||||||
|
// Aleksey Gurtovoy
|
||||||
|
//
|
||||||
|
// Permission to use, copy, modify, distribute and sell this software
|
||||||
|
// and its documentation for any purpose is hereby granted without fee,
|
||||||
|
// provided that the above copyright notice appears in all copies and
|
||||||
|
// that both the copyright notice and this permission notice appear in
|
||||||
|
// supporting documentation. No representations are made about the
|
||||||
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
|
// without express or implied warranty.
|
||||||
|
//
|
||||||
|
// See http://www.boost.org/libs/mpl for documentation.
|
||||||
|
|
||||||
|
#include "boost/mpl/aux_/config/use_preprocessed.hpp"
|
||||||
|
|
||||||
|
#if !defined(BOOST_MPL_NO_PREPROCESSED_HEADERS) \
|
||||||
|
&& !defined(BOOST_MPL_PREPROCESSING_MODE)
|
||||||
|
|
||||||
|
# include "boost/mpl/bool.hpp"
|
||||||
|
# include "boost/mpl/aux_/nested_type_wknd.hpp"
|
||||||
|
# include "boost/mpl/aux_/void_spec.hpp"
|
||||||
|
# include "boost/mpl/aux_/lambda_support.hpp"
|
||||||
|
|
||||||
|
# define BOOST_MPL_PREPROCESSED_HEADER and.hpp
|
||||||
|
# include "boost/mpl/aux_/include_preprocessed.hpp"
|
||||||
|
|
||||||
|
#else
|
||||||
|
|
||||||
|
# define AUX_LOGICAL_OP_NAME and_
|
||||||
|
# define AUX_LOGICAL_OP_VALUE1 false
|
||||||
|
# define AUX_LOGICAL_OP_VALUE2 true
|
||||||
|
# include "boost/mpl/aux_/logical_op.hpp"
|
||||||
|
|
||||||
|
#endif // BOOST_MPL_USE_PREPROCESSED_HEADERS
|
||||||
|
#endif // BOOST_MPL_AND_HPP_INCLUDED
|
@@ -1,9 +1,11 @@
|
|||||||
//-----------------------------------------------------------------------------
|
|
||||||
// boost mpl/arithmetic.hpp header file
|
#ifndef BOOST_MPL_ARITHMETIC_HPP_INCLUDED
|
||||||
// See http://www.boost.org for updates, documentation, and revision history.
|
#define BOOST_MPL_ARITHMETIC_HPP_INCLUDED
|
||||||
//-----------------------------------------------------------------------------
|
|
||||||
//
|
// + file: boost/mpl/arithmetic.hpp
|
||||||
// Copyright (c) 2000-02
|
// + last modified: 25/feb/03
|
||||||
|
|
||||||
|
// Copyright (c) 2000-03
|
||||||
// Aleksey Gurtovoy
|
// Aleksey Gurtovoy
|
||||||
//
|
//
|
||||||
// Permission to use, copy, modify, distribute and sell this software
|
// Permission to use, copy, modify, distribute and sell this software
|
||||||
@@ -13,15 +15,14 @@
|
|||||||
// supporting documentation. No representations are made about the
|
// supporting documentation. No representations are made about the
|
||||||
// suitability of this software for any purpose. It is provided "as is"
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
// without express or implied warranty.
|
// without express or implied warranty.
|
||||||
|
//
|
||||||
|
// See http://www.boost.org/libs/mpl for documentation.
|
||||||
|
|
||||||
#ifndef BOOST_MPL_ARITHMETIC_HPP_INCLUDED
|
#include "boost/mpl/plus.hpp"
|
||||||
#define BOOST_MPL_ARITHMETIC_HPP_INCLUDED
|
#include "boost/mpl/minus.hpp"
|
||||||
|
#include "boost/mpl/multiplies.hpp"
|
||||||
#include "boost/mpl/arithmetic/plus.hpp"
|
#include "boost/mpl/divides.hpp"
|
||||||
#include "boost/mpl/arithmetic/minus.hpp"
|
#include "boost/mpl/modulus.hpp"
|
||||||
#include "boost/mpl/arithmetic/multiplies.hpp"
|
#include "boost/mpl/negate.hpp"
|
||||||
#include "boost/mpl/arithmetic/divides.hpp"
|
|
||||||
#include "boost/mpl/arithmetic/modulus.hpp"
|
|
||||||
#include "boost/mpl/arithmetic/negate.hpp"
|
|
||||||
|
|
||||||
#endif // BOOST_MPL_ARITHMETIC_HPP_INCLUDED
|
#endif // BOOST_MPL_ARITHMETIC_HPP_INCLUDED
|
||||||
|
@@ -22,7 +22,7 @@
|
|||||||
#if defined(__BORLANDC__) && (__BORLANDC__ <= 0x561 || !defined(BOOST_STRICT_CONFIG)) \
|
#if defined(__BORLANDC__) && (__BORLANDC__ <= 0x561 || !defined(BOOST_STRICT_CONFIG)) \
|
||||||
|| defined(BOOST_MSVC) && BOOST_MSVC < 1300
|
|| defined(BOOST_MSVC) && BOOST_MSVC < 1300
|
||||||
|
|
||||||
# include "boost/mpl/bool_c.hpp"
|
# include "boost/mpl/bool.hpp"
|
||||||
|
|
||||||
namespace boost { namespace mpl { namespace aux {
|
namespace boost { namespace mpl { namespace aux {
|
||||||
|
|
||||||
@@ -34,7 +34,7 @@ struct bool_value_wknd
|
|||||||
|
|
||||||
template<>
|
template<>
|
||||||
struct bool_value_wknd<int>
|
struct bool_value_wknd<int>
|
||||||
: false_c
|
: false_
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@@ -38,6 +38,8 @@
|
|||||||
|
|
||||||
#if defined(BOOST_MSVC) && BOOST_MSVC < 1300
|
#if defined(BOOST_MSVC) && BOOST_MSVC < 1300
|
||||||
|
|
||||||
|
#include "boost/preprocessor/cat.hpp"
|
||||||
|
|
||||||
#if !defined(BOOST_MPL_PREPROCESSING_MODE)
|
#if !defined(BOOST_MPL_PREPROCESSING_MODE)
|
||||||
namespace boost { namespace mpl {
|
namespace boost { namespace mpl {
|
||||||
typedef int nttp_int;
|
typedef int nttp_int;
|
||||||
@@ -45,7 +47,7 @@ typedef long nttp_long;
|
|||||||
}}
|
}}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
# define BOOST_MPL_AUX_NTTP_DECL(T, x) nttp_##T x /**/
|
# define BOOST_MPL_AUX_NTTP_DECL(T, x) BOOST_PP_CAT(nttp_,T) x /**/
|
||||||
|
|
||||||
#else
|
#else
|
||||||
# define BOOST_MPL_AUX_NTTP_DECL(T, x) T x /**/
|
# define BOOST_MPL_AUX_NTTP_DECL(T, x) T x /**/
|
||||||
|
@@ -26,7 +26,7 @@
|
|||||||
# include "boost/mpl/bind.hpp"
|
# include "boost/mpl/bind.hpp"
|
||||||
# include "boost/mpl/protect.hpp"
|
# include "boost/mpl/protect.hpp"
|
||||||
# include "boost/mpl/quote.hpp"
|
# include "boost/mpl/quote.hpp"
|
||||||
# include "boost/mpl/bool_c.hpp"
|
# include "boost/mpl/bool.hpp"
|
||||||
# include "boost/mpl/aux_/template_arity.hpp"
|
# include "boost/mpl/aux_/template_arity.hpp"
|
||||||
# include "boost/mpl/aux_/config/ttp.hpp"
|
# include "boost/mpl/aux_/config/ttp.hpp"
|
||||||
#endif
|
#endif
|
||||||
@@ -85,7 +85,7 @@ template<
|
|||||||
>
|
>
|
||||||
struct lambda_impl
|
struct lambda_impl
|
||||||
{
|
{
|
||||||
BOOST_MPL_AUX_IS_LAMBDA_EXPR(false_c)
|
BOOST_MPL_AUX_IS_LAMBDA_EXPR(false_)
|
||||||
typedef T type;
|
typedef T type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -107,13 +107,13 @@ template<
|
|||||||
BOOST_MPL_PP_DEFAULT_PARAMS(n,bool C,false)
|
BOOST_MPL_PP_DEFAULT_PARAMS(n,bool C,false)
|
||||||
>
|
>
|
||||||
struct lambda_or
|
struct lambda_or
|
||||||
: true_c
|
: true_
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
|
|
||||||
template<>
|
template<>
|
||||||
struct lambda_or< BOOST_MPL_PP_ENUM(n,false) >
|
struct lambda_or< BOOST_MPL_PP_ENUM(n,false) >
|
||||||
: false_c
|
: false_
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -123,7 +123,7 @@ struct lambda_or< BOOST_MPL_PP_ENUM(n,false) >
|
|||||||
template< int N, bool Protect >
|
template< int N, bool Protect >
|
||||||
struct lambda_impl< arg<N>, Protect AUX_ARITY_PARAM(-1) >
|
struct lambda_impl< arg<N>, Protect AUX_ARITY_PARAM(-1) >
|
||||||
{
|
{
|
||||||
BOOST_MPL_AUX_IS_LAMBDA_EXPR(true_c)
|
BOOST_MPL_AUX_IS_LAMBDA_EXPR(true_)
|
||||||
typedef arg<N> type;
|
typedef arg<N> type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -137,7 +137,7 @@ struct lambda_impl< arg<N>, Protect AUX_ARITY_PARAM(-1) >
|
|||||||
template< typename T, bool Protect >
|
template< typename T, bool Protect >
|
||||||
struct lambda_impl< protect<T>, Protect AUX_ARITY_PARAM(1) >
|
struct lambda_impl< protect<T>, Protect AUX_ARITY_PARAM(1) >
|
||||||
{
|
{
|
||||||
BOOST_MPL_AUX_IS_LAMBDA_EXPR(false_c)
|
BOOST_MPL_AUX_IS_LAMBDA_EXPR(false_)
|
||||||
typedef protect<T> type;
|
typedef protect<T> type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -151,7 +151,7 @@ struct lambda_impl<
|
|||||||
, Protect AUX_ARITY_PARAM(BOOST_PP_INC(BOOST_MPL_METAFUNCTION_MAX_ARITY))
|
, Protect AUX_ARITY_PARAM(BOOST_PP_INC(BOOST_MPL_METAFUNCTION_MAX_ARITY))
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
BOOST_MPL_AUX_IS_LAMBDA_EXPR(false_c)
|
BOOST_MPL_AUX_IS_LAMBDA_EXPR(false_)
|
||||||
typedef bind<F, AUX_LAMBDA_BIND_PARAMS(T)> type;
|
typedef bind<F, AUX_LAMBDA_BIND_PARAMS(T)> type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -161,7 +161,7 @@ template<
|
|||||||
>
|
>
|
||||||
struct lambda_impl< bind1st<F,T>, Protect AUX_ARITY_PARAM(2) >
|
struct lambda_impl< bind1st<F,T>, Protect AUX_ARITY_PARAM(2) >
|
||||||
{
|
{
|
||||||
BOOST_MPL_AUX_IS_LAMBDA_EXPR(false_c)
|
BOOST_MPL_AUX_IS_LAMBDA_EXPR(false_)
|
||||||
typedef bind1st<F,T> type;
|
typedef bind1st<F,T> type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -171,7 +171,7 @@ template<
|
|||||||
>
|
>
|
||||||
struct lambda_impl< bind2nd<F,T>, Protect AUX_ARITY_PARAM(2) >
|
struct lambda_impl< bind2nd<F,T>, Protect AUX_ARITY_PARAM(2) >
|
||||||
{
|
{
|
||||||
BOOST_MPL_AUX_IS_LAMBDA_EXPR(false_c)
|
BOOST_MPL_AUX_IS_LAMBDA_EXPR(false_)
|
||||||
typedef bind2nd<F,T> type;
|
typedef bind2nd<F,T> type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -318,7 +318,7 @@ struct lambda_impl<
|
|||||||
, Protect AUX_ARITY_PARAM(BOOST_PP_INC(i))
|
, Protect AUX_ARITY_PARAM(BOOST_PP_INC(i))
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
BOOST_MPL_AUX_IS_LAMBDA_EXPR(false_c)
|
BOOST_MPL_AUX_IS_LAMBDA_EXPR(false_)
|
||||||
typedef BOOST_PP_CAT(bind,i)<
|
typedef BOOST_PP_CAT(bind,i)<
|
||||||
F
|
F
|
||||||
AUX_LAMBDA_BIND_N_PARAMS(i, T)
|
AUX_LAMBDA_BIND_N_PARAMS(i, T)
|
||||||
|
@@ -19,7 +19,7 @@
|
|||||||
|
|
||||||
#include "boost/mpl/aux_/has_xxx.hpp"
|
#include "boost/mpl/aux_/has_xxx.hpp"
|
||||||
#include "boost/mpl/if.hpp"
|
#include "boost/mpl/if.hpp"
|
||||||
#include "boost/mpl/bool_c.hpp"
|
#include "boost/mpl/bool.hpp"
|
||||||
#include "boost/type_traits/is_class.hpp"
|
#include "boost/type_traits/is_class.hpp"
|
||||||
|
|
||||||
namespace boost { namespace mpl { namespace aux {
|
namespace boost { namespace mpl { namespace aux {
|
||||||
@@ -31,7 +31,7 @@ struct has_rebind
|
|||||||
: if_c<
|
: if_c<
|
||||||
::boost::is_class<T>::value
|
::boost::is_class<T>::value
|
||||||
, has_rebind_impl<T>
|
, has_rebind_impl<T>
|
||||||
, bool_c<false>
|
, bool_<false>
|
||||||
>::type
|
>::type
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
|
@@ -55,7 +55,7 @@ struct trait \
|
|||||||
# else
|
# else
|
||||||
|
|
||||||
#include "boost/mpl/if.hpp"
|
#include "boost/mpl/if.hpp"
|
||||||
#include "boost/mpl/bool_c.hpp"
|
#include "boost/mpl/bool.hpp"
|
||||||
#include "boost/preprocessor/cat.hpp"
|
#include "boost/preprocessor/cat.hpp"
|
||||||
|
|
||||||
// agurt, 11/sep/02: MSVC version, based on a USENET newsgroup's posting by
|
// agurt, 11/sep/02: MSVC version, based on a USENET newsgroup's posting by
|
||||||
@@ -104,7 +104,7 @@ struct BOOST_PP_CAT(trait,_impl) : T \
|
|||||||
template< typename T > struct trait \
|
template< typename T > struct trait \
|
||||||
: boost::mpl::if_c< \
|
: boost::mpl::if_c< \
|
||||||
boost::mpl::aux::msvc_is_incomplete<T>::value \
|
boost::mpl::aux::msvc_is_incomplete<T>::value \
|
||||||
, boost::mpl::bool_c<false> \
|
, boost::mpl::bool_<false> \
|
||||||
, BOOST_PP_CAT(trait,_impl)<T> \
|
, BOOST_PP_CAT(trait,_impl)<T> \
|
||||||
>::type \
|
>::type \
|
||||||
{ \
|
{ \
|
||||||
|
74
include/boost/mpl/aux_/integral_wrapper.hpp
Normal file
74
include/boost/mpl/aux_/integral_wrapper.hpp
Normal file
@@ -0,0 +1,74 @@
|
|||||||
|
|
||||||
|
// + file: boost/mpl/aux_/intergal_wrapper.hpp
|
||||||
|
// + last modified: 27/jan/03
|
||||||
|
|
||||||
|
// Copyright (c) 2000-03
|
||||||
|
// Aleksey Gurtovoy
|
||||||
|
//
|
||||||
|
// Permission to use, copy, modify, distribute and sell this software
|
||||||
|
// and its documentation for any purpose is hereby granted without fee,
|
||||||
|
// provided that the above copyright notice appears in all copies and
|
||||||
|
// that both the copyright notice and this permission notice appear in
|
||||||
|
// supporting documentation. No representations are made about the
|
||||||
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
|
// without express or implied warranty.
|
||||||
|
//
|
||||||
|
// See http://www.boost.org/libs/mpl for documentation.
|
||||||
|
|
||||||
|
// no include guards, the header is intended for multiple inclusion!
|
||||||
|
|
||||||
|
#include "boost/mpl/aux_/ice_cast.hpp"
|
||||||
|
#include "boost/mpl/aux_/config/nttp.hpp"
|
||||||
|
#include "boost/mpl/aux_/config/static_constant.hpp"
|
||||||
|
#include "boost/mpl/aux_/config/workaround.hpp"
|
||||||
|
|
||||||
|
#include "boost/preprocessor/cat.hpp"
|
||||||
|
|
||||||
|
#if !defined(AUX_WRAPPER_NAME)
|
||||||
|
# define AUX_WRAPPER_NAME BOOST_PP_CAT(AUX_WRAPPER_VALUE_TYPE,_)
|
||||||
|
# define AUX_WRAPPER_PARAMS(N) BOOST_MPL_AUX_NTTP_DECL(AUX_WRAPPER_VALUE_TYPE, N)
|
||||||
|
# define AUX_WRAPPER_INST(value) AUX_WRAPPER_NAME< value >
|
||||||
|
#endif
|
||||||
|
|
||||||
|
namespace boost { namespace mpl {
|
||||||
|
|
||||||
|
template< AUX_WRAPPER_PARAMS(N) >
|
||||||
|
struct AUX_WRAPPER_NAME
|
||||||
|
{
|
||||||
|
BOOST_STATIC_CONSTANT(AUX_WRAPPER_VALUE_TYPE, value = N);
|
||||||
|
typedef AUX_WRAPPER_NAME type;
|
||||||
|
typedef AUX_WRAPPER_VALUE_TYPE value_type;
|
||||||
|
|
||||||
|
// have to #ifdef here: some compilers don't like the 'N + 1' form (MSVC),
|
||||||
|
// while some other don't like 'value + 1' (Borland), and some don't like
|
||||||
|
// either
|
||||||
|
#if BOOST_WORKAROUND(__EDG_VERSION__, <= 243)
|
||||||
|
private:
|
||||||
|
BOOST_STATIC_CONSTANT(AUX_WRAPPER_VALUE_TYPE, next_value = BOOST_MPL_AUX_ICE_CAST(AUX_WRAPPER_VALUE_TYPE, (N + 1)));
|
||||||
|
BOOST_STATIC_CONSTANT(AUX_WRAPPER_VALUE_TYPE, prior_value = BOOST_MPL_AUX_ICE_CAST(AUX_WRAPPER_VALUE_TYPE, (N - 1)));
|
||||||
|
public:
|
||||||
|
typedef AUX_WRAPPER_INST(next_value) next;
|
||||||
|
typedef AUX_WRAPPER_INST(prior_value) prior;
|
||||||
|
#elif BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x561)) \
|
||||||
|
|| BOOST_WORKAROUND(__IBMCPP__, BOOST_TESTED_AT(502)) \
|
||||||
|
|| BOOST_WORKAROUND(__HP_aCC, BOOST_TESTED_AT(53800))
|
||||||
|
typedef AUX_WRAPPER_INST( BOOST_MPL_AUX_ICE_CAST(AUX_WRAPPER_VALUE_TYPE, (N + 1)) ) next;
|
||||||
|
typedef AUX_WRAPPER_INST( BOOST_MPL_AUX_ICE_CAST(AUX_WRAPPER_VALUE_TYPE, (N - 1)) ) prior;
|
||||||
|
#else
|
||||||
|
typedef AUX_WRAPPER_INST( BOOST_MPL_AUX_ICE_CAST(AUX_WRAPPER_VALUE_TYPE, (value + 1)) ) next;
|
||||||
|
typedef AUX_WRAPPER_INST( BOOST_MPL_AUX_ICE_CAST(AUX_WRAPPER_VALUE_TYPE, (value - 1)) ) prior;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// enables uniform function call syntax for families of overloaded
|
||||||
|
// functions that return objects of both arithmetic ('int', 'long',
|
||||||
|
// 'double', etc.) and wrapped integral types (for an example, see
|
||||||
|
// "mpl/example/power.cpp")
|
||||||
|
operator AUX_WRAPPER_VALUE_TYPE() const { return this->value; }
|
||||||
|
};
|
||||||
|
|
||||||
|
}} // namespace boost::mpl
|
||||||
|
|
||||||
|
#undef AUX_WRAPPER_NAME
|
||||||
|
#undef AUX_WRAPPER_PARAMS
|
||||||
|
#undef AUX_WRAPPER_INST
|
||||||
|
#undef AUX_WRAPPER_VALUE_TYPE
|
@@ -25,7 +25,7 @@
|
|||||||
# include "boost/mpl/lambda_fwd.hpp"
|
# include "boost/mpl/lambda_fwd.hpp"
|
||||||
# include "boost/mpl/bind.hpp"
|
# include "boost/mpl/bind.hpp"
|
||||||
# include "boost/mpl/protect.hpp"
|
# include "boost/mpl/protect.hpp"
|
||||||
# include "boost/mpl/bool_c.hpp"
|
# include "boost/mpl/bool.hpp"
|
||||||
# include "boost/mpl/aux_/template_arity.hpp"
|
# include "boost/mpl/aux_/template_arity.hpp"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -81,7 +81,7 @@ struct lambda
|
|||||||
#if !defined(BOOST_MSVC) || BOOST_MSVC > 1200
|
#if !defined(BOOST_MSVC) || BOOST_MSVC > 1200
|
||||||
, Protect
|
, Protect
|
||||||
#else
|
#else
|
||||||
, bool_c<Protect>::value
|
, bool_<Protect>::value
|
||||||
#endif
|
#endif
|
||||||
>::template result_<T>
|
>::template result_<T>
|
||||||
{
|
{
|
||||||
|
169
include/boost/mpl/aux_/logical_op.hpp
Normal file
169
include/boost/mpl/aux_/logical_op.hpp
Normal file
@@ -0,0 +1,169 @@
|
|||||||
|
|
||||||
|
// + file: boost/mpl/aux_/logical_op.hpp
|
||||||
|
// + last modified: 25/feb/03
|
||||||
|
|
||||||
|
// Copyright (c) 2000-03
|
||||||
|
// Aleksey Gurtovoy
|
||||||
|
//
|
||||||
|
// Permission to use, copy, modify, distribute and sell this software
|
||||||
|
// and its documentation for any purpose is hereby granted without fee,
|
||||||
|
// provided that the above copyright notice appears in all copies and
|
||||||
|
// that both the copyright notice and this permission notice appear in
|
||||||
|
// supporting documentation. No representations are made about the
|
||||||
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
|
// without express or implied warranty.
|
||||||
|
//
|
||||||
|
// See http://www.boost.org/libs/mpl for documentation.
|
||||||
|
|
||||||
|
// no include guards, the header is intended for multiple inclusion!
|
||||||
|
|
||||||
|
#if !defined(BOOST_MPL_PREPROCESSING_MODE)
|
||||||
|
# include "boost/mpl/bool.hpp"
|
||||||
|
# include "boost/mpl/aux_/nested_type_wknd.hpp"
|
||||||
|
# include "boost/mpl/aux_/void_spec.hpp"
|
||||||
|
# include "boost/mpl/aux_/lambda_support.hpp"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include "boost/mpl/limits/arity.hpp"
|
||||||
|
#include "boost/mpl/aux_/preprocessor/params.hpp"
|
||||||
|
#include "boost/mpl/aux_/preprocessor/ext_params.hpp"
|
||||||
|
#include "boost/mpl/aux_/preprocessor/def_params_tail.hpp"
|
||||||
|
#include "boost/mpl/aux_/preprocessor/enum.hpp"
|
||||||
|
#include "boost/mpl/aux_/preprocessor/sub.hpp"
|
||||||
|
#include "boost/mpl/aux_/config/workaround.hpp"
|
||||||
|
|
||||||
|
#include "boost/preprocessor/dec.hpp"
|
||||||
|
#include "boost/preprocessor/inc.hpp"
|
||||||
|
#include "boost/preprocessor/cat.hpp"
|
||||||
|
|
||||||
|
namespace boost { namespace mpl {
|
||||||
|
|
||||||
|
// local macros, #undef-ined at the end of the header
|
||||||
|
# define AUX_LOGICAL_OP_PARAMS(param, sub) \
|
||||||
|
BOOST_MPL_PP_PARAMS( \
|
||||||
|
BOOST_MPL_PP_SUB(BOOST_MPL_METAFUNCTION_MAX_ARITY, sub) \
|
||||||
|
, param \
|
||||||
|
) \
|
||||||
|
/**/
|
||||||
|
|
||||||
|
# define AUX_LOGICAL_OP_SHIFTED_PARAMS(param, sub) \
|
||||||
|
BOOST_MPL_PP_EXT_PARAMS( \
|
||||||
|
2, BOOST_MPL_PP_SUB(BOOST_PP_INC(BOOST_MPL_METAFUNCTION_MAX_ARITY), sub) \
|
||||||
|
, param \
|
||||||
|
) \
|
||||||
|
/**/
|
||||||
|
|
||||||
|
# define AUX_LOGICAL_OP_SPEC_PARAMS(param) \
|
||||||
|
BOOST_MPL_PP_ENUM( \
|
||||||
|
BOOST_PP_DEC(BOOST_MPL_METAFUNCTION_MAX_ARITY) \
|
||||||
|
, param \
|
||||||
|
) \
|
||||||
|
/**/
|
||||||
|
|
||||||
|
namespace aux {
|
||||||
|
|
||||||
|
#if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION)
|
||||||
|
|
||||||
|
template< bool C_, AUX_LOGICAL_OP_PARAMS(typename T, 1) >
|
||||||
|
struct BOOST_PP_CAT(AUX_LOGICAL_OP_NAME,impl)
|
||||||
|
: BOOST_PP_CAT(AUX_LOGICAL_OP_VALUE1,_)
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
template< AUX_LOGICAL_OP_PARAMS(typename T, 1) >
|
||||||
|
struct BOOST_PP_CAT(AUX_LOGICAL_OP_NAME,impl)< AUX_LOGICAL_OP_VALUE2,AUX_LOGICAL_OP_PARAMS(T, 1) >
|
||||||
|
: BOOST_PP_CAT(AUX_LOGICAL_OP_NAME,impl)<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
, AUX_LOGICAL_OP_SHIFTED_PARAMS(T, 1)
|
||||||
|
, BOOST_PP_CAT(AUX_LOGICAL_OP_VALUE2,_)
|
||||||
|
>
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
template<>
|
||||||
|
struct BOOST_PP_CAT(AUX_LOGICAL_OP_NAME,impl)<
|
||||||
|
AUX_LOGICAL_OP_VALUE2
|
||||||
|
, AUX_LOGICAL_OP_SPEC_PARAMS(BOOST_PP_CAT(AUX_LOGICAL_OP_VALUE2,_))
|
||||||
|
>
|
||||||
|
: BOOST_PP_CAT(AUX_LOGICAL_OP_VALUE2,_)
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
#else
|
||||||
|
|
||||||
|
template< bool C_ > struct BOOST_PP_CAT(AUX_LOGICAL_OP_NAME,impl)
|
||||||
|
{
|
||||||
|
template< AUX_LOGICAL_OP_PARAMS(typename T, 1) > struct result_
|
||||||
|
: BOOST_PP_CAT(AUX_LOGICAL_OP_VALUE1,_)
|
||||||
|
{
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
template<> struct BOOST_PP_CAT(AUX_LOGICAL_OP_NAME,impl)<AUX_LOGICAL_OP_VALUE2>
|
||||||
|
{
|
||||||
|
template< AUX_LOGICAL_OP_PARAMS(typename T, 1) > struct result_
|
||||||
|
: BOOST_PP_CAT(AUX_LOGICAL_OP_NAME,impl)<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
>::template result_< AUX_LOGICAL_OP_SHIFTED_PARAMS(T,1),BOOST_PP_CAT(AUX_LOGICAL_OP_VALUE2,_) >
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
#if BOOST_WORKAROUND(BOOST_MSVC, == 1300)
|
||||||
|
template<> struct result_<AUX_LOGICAL_OP_SPEC_PARAMS(BOOST_PP_CAT(AUX_LOGICAL_OP_VALUE2,_))>
|
||||||
|
: BOOST_PP_CAT(AUX_LOGICAL_OP_VALUE2,_)
|
||||||
|
{
|
||||||
|
};
|
||||||
|
};
|
||||||
|
#else
|
||||||
|
};
|
||||||
|
|
||||||
|
template<>
|
||||||
|
struct BOOST_PP_CAT(AUX_LOGICAL_OP_NAME,impl)<AUX_LOGICAL_OP_VALUE2>
|
||||||
|
::result_< AUX_LOGICAL_OP_SPEC_PARAMS(BOOST_PP_CAT(AUX_LOGICAL_OP_VALUE2,_)) >
|
||||||
|
: BOOST_PP_CAT(AUX_LOGICAL_OP_VALUE2,_)
|
||||||
|
{
|
||||||
|
};
|
||||||
|
#endif // BOOST_MSVC == 1300
|
||||||
|
|
||||||
|
#endif // BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
|
||||||
|
|
||||||
|
} // namespace aux
|
||||||
|
|
||||||
|
template<
|
||||||
|
typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T1)
|
||||||
|
, typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T2)
|
||||||
|
BOOST_MPL_PP_DEF_PARAMS_TAIL(2, typename T, BOOST_PP_CAT(AUX_LOGICAL_OP_VALUE2,_))
|
||||||
|
>
|
||||||
|
struct AUX_LOGICAL_OP_NAME
|
||||||
|
#if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION)
|
||||||
|
: aux::BOOST_PP_CAT(AUX_LOGICAL_OP_NAME,impl)<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
, AUX_LOGICAL_OP_SHIFTED_PARAMS(T,0)
|
||||||
|
>
|
||||||
|
#else
|
||||||
|
: aux::BOOST_PP_CAT(AUX_LOGICAL_OP_NAME,impl)<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
>::template result_< AUX_LOGICAL_OP_SHIFTED_PARAMS(T,0) >
|
||||||
|
#endif
|
||||||
|
{
|
||||||
|
BOOST_MPL_AUX_LAMBDA_SUPPORT(
|
||||||
|
BOOST_MPL_METAFUNCTION_MAX_ARITY
|
||||||
|
, AUX_LOGICAL_OP_NAME
|
||||||
|
, (AUX_LOGICAL_OP_PARAMS(T, 0))
|
||||||
|
)
|
||||||
|
};
|
||||||
|
|
||||||
|
BOOST_MPL_AUX_VOID_SPEC_EXT(
|
||||||
|
2
|
||||||
|
, BOOST_MPL_METAFUNCTION_MAX_ARITY
|
||||||
|
, AUX_LOGICAL_OP_NAME
|
||||||
|
)
|
||||||
|
|
||||||
|
}} // namespace boost::mpl
|
||||||
|
|
||||||
|
#undef AUX_LOGICAL_OP_SPEC_PARAMS
|
||||||
|
#undef AUX_LOGICAL_OP_SHIFTED_PARAMS
|
||||||
|
#undef AUX_LOGICAL_OP_PARAMS
|
||||||
|
#undef AUX_LOGICAL_OP_NAME
|
||||||
|
#undef AUX_LOGICAL_OP_VALUE1
|
||||||
|
#undef AUX_LOGICAL_OP_VALUE2
|
62
include/boost/mpl/aux_/preprocessed/bcc/and.hpp
Normal file
62
include/boost/mpl/aux_/preprocessed/bcc/and.hpp
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
// preprocessed version of 'boost/mpl/aux_/config/use_preprocessed.hpp' header
|
||||||
|
// see the original for copyright information
|
||||||
|
|
||||||
|
namespace boost { namespace mpl {
|
||||||
|
|
||||||
|
namespace aux {
|
||||||
|
|
||||||
|
template< bool C_, typename T1, typename T2, typename T3, typename T4 >
|
||||||
|
struct and_impl
|
||||||
|
: false_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
template< typename T1, typename T2, typename T3, typename T4 >
|
||||||
|
struct and_impl< true,T1,T2,T3,T4 >
|
||||||
|
: and_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
, T2, T3, T4
|
||||||
|
, true_
|
||||||
|
>
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
template<>
|
||||||
|
struct and_impl<
|
||||||
|
true
|
||||||
|
, true_, true_, true_, true_
|
||||||
|
>
|
||||||
|
: true_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace aux
|
||||||
|
|
||||||
|
template<
|
||||||
|
typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T1)
|
||||||
|
, typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T2)
|
||||||
|
, typename T3 = true_, typename T4 = true_, typename T5 = true_
|
||||||
|
>
|
||||||
|
struct and_
|
||||||
|
|
||||||
|
: aux::and_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
, T2, T3, T4, T5
|
||||||
|
>
|
||||||
|
|
||||||
|
{
|
||||||
|
BOOST_MPL_AUX_LAMBDA_SUPPORT(
|
||||||
|
5
|
||||||
|
, and_
|
||||||
|
, (T1, T2, T3, T4, T5)
|
||||||
|
)
|
||||||
|
};
|
||||||
|
|
||||||
|
BOOST_MPL_AUX_VOID_SPEC_EXT(
|
||||||
|
2
|
||||||
|
, 5
|
||||||
|
, and_
|
||||||
|
)
|
||||||
|
|
||||||
|
}} // namespace boost::mpl
|
||||||
|
|
@@ -11,7 +11,7 @@ template<
|
|||||||
>
|
>
|
||||||
struct lambda_impl
|
struct lambda_impl
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef T type;
|
typedef T type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -31,13 +31,13 @@ template<
|
|||||||
, bool C5 = false
|
, bool C5 = false
|
||||||
>
|
>
|
||||||
struct lambda_or
|
struct lambda_or
|
||||||
: true_c
|
: true_
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
|
|
||||||
template<>
|
template<>
|
||||||
struct lambda_or< false,false,false,false,false >
|
struct lambda_or< false,false,false,false,false >
|
||||||
: false_c
|
: false_
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -46,7 +46,7 @@ struct lambda_or< false,false,false,false,false >
|
|||||||
template< int N, bool Protect >
|
template< int N, bool Protect >
|
||||||
struct lambda_impl< arg<N>,Protect,-1 >
|
struct lambda_impl< arg<N>,Protect,-1 >
|
||||||
{
|
{
|
||||||
typedef true_c is_le;
|
typedef true_ is_le;
|
||||||
typedef arg<N> type;
|
typedef arg<N> type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -59,7 +59,7 @@ struct lambda_impl<
|
|||||||
, Protect, 1
|
, Protect, 1
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind0<
|
typedef bind0<
|
||||||
F
|
F
|
||||||
> type;
|
> type;
|
||||||
@@ -144,7 +144,7 @@ struct lambda_impl<
|
|||||||
, Protect, 2
|
, Protect, 2
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind1<
|
typedef bind1<
|
||||||
F
|
F
|
||||||
, T1
|
, T1
|
||||||
@@ -232,7 +232,7 @@ struct lambda_impl<
|
|||||||
, Protect, 3
|
, Protect, 3
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind2<
|
typedef bind2<
|
||||||
F
|
F
|
||||||
, T1, T2
|
, T1, T2
|
||||||
@@ -321,7 +321,7 @@ struct lambda_impl<
|
|||||||
, Protect, 4
|
, Protect, 4
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind3<
|
typedef bind3<
|
||||||
F
|
F
|
||||||
, T1, T2, T3
|
, T1, T2, T3
|
||||||
@@ -415,7 +415,7 @@ struct lambda_impl<
|
|||||||
, Protect, 5
|
, Protect, 5
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind4<
|
typedef bind4<
|
||||||
F
|
F
|
||||||
, T1, T2, T3, T4
|
, T1, T2, T3, T4
|
||||||
@@ -527,7 +527,7 @@ struct lambda_impl<
|
|||||||
, Protect, 6
|
, Protect, 6
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind5<
|
typedef bind5<
|
||||||
F
|
F
|
||||||
, T1, T2, T3, T4, T5
|
, T1, T2, T3, T4, T5
|
||||||
@@ -538,7 +538,7 @@ struct lambda_impl<
|
|||||||
template< typename T, bool Protect >
|
template< typename T, bool Protect >
|
||||||
struct lambda_impl< protect<T>,Protect,1 >
|
struct lambda_impl< protect<T>,Protect,1 >
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef protect<T> type;
|
typedef protect<T> type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -553,7 +553,7 @@ struct lambda_impl<
|
|||||||
, Protect, 6
|
, Protect, 6
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind< F,T1,T2,T3,T4,T5 > type;
|
typedef bind< F,T1,T2,T3,T4,T5 > type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -563,7 +563,7 @@ template<
|
|||||||
>
|
>
|
||||||
struct lambda_impl< bind1st<F,T>,Protect,2 >
|
struct lambda_impl< bind1st<F,T>,Protect,2 >
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind1st< F,T > type;
|
typedef bind1st< F,T > type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -573,7 +573,7 @@ template<
|
|||||||
>
|
>
|
||||||
struct lambda_impl< bind2nd<F,T>,Protect,2 >
|
struct lambda_impl< bind2nd<F,T>,Protect,2 >
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind2nd< F,T > type;
|
typedef bind2nd< F,T > type;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
62
include/boost/mpl/aux_/preprocessed/bcc/or.hpp
Normal file
62
include/boost/mpl/aux_/preprocessed/bcc/or.hpp
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
// preprocessed version of 'boost/mpl/aux_/config/use_preprocessed.hpp' header
|
||||||
|
// see the original for copyright information
|
||||||
|
|
||||||
|
namespace boost { namespace mpl {
|
||||||
|
|
||||||
|
namespace aux {
|
||||||
|
|
||||||
|
template< bool C_, typename T1, typename T2, typename T3, typename T4 >
|
||||||
|
struct or_impl
|
||||||
|
: true_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
template< typename T1, typename T2, typename T3, typename T4 >
|
||||||
|
struct or_impl< false,T1,T2,T3,T4 >
|
||||||
|
: or_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
, T2, T3, T4
|
||||||
|
, false_
|
||||||
|
>
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
template<>
|
||||||
|
struct or_impl<
|
||||||
|
false
|
||||||
|
, false_, false_, false_, false_
|
||||||
|
>
|
||||||
|
: false_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace aux
|
||||||
|
|
||||||
|
template<
|
||||||
|
typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T1)
|
||||||
|
, typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T2)
|
||||||
|
, typename T3 = false_, typename T4 = false_, typename T5 = false_
|
||||||
|
>
|
||||||
|
struct or_
|
||||||
|
|
||||||
|
: aux::or_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
, T2, T3, T4, T5
|
||||||
|
>
|
||||||
|
|
||||||
|
{
|
||||||
|
BOOST_MPL_AUX_LAMBDA_SUPPORT(
|
||||||
|
5
|
||||||
|
, or_
|
||||||
|
, (T1, T2, T3, T4, T5)
|
||||||
|
)
|
||||||
|
};
|
||||||
|
|
||||||
|
BOOST_MPL_AUX_VOID_SPEC_EXT(
|
||||||
|
2
|
||||||
|
, 5
|
||||||
|
, or_
|
||||||
|
)
|
||||||
|
|
||||||
|
}} // namespace boost::mpl
|
||||||
|
|
@@ -1,4 +1,4 @@
|
|||||||
// preprocessed version of 'boost/mpl/placeholder.hpp' header
|
// preprocessed version of 'boost/mpl/aux_/config/use_preprocessed.hpp' header
|
||||||
// see the original for copyright information
|
// see the original for copyright information
|
||||||
|
|
||||||
namespace boost {
|
namespace boost {
|
||||||
@@ -6,7 +6,7 @@ namespace mpl {
|
|||||||
|
|
||||||
typedef arg< -1 > _;
|
typedef arg< -1 > _;
|
||||||
|
|
||||||
namespace placeholder {
|
namespace placeholders {
|
||||||
using boost::mpl::_;
|
using boost::mpl::_;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -15,37 +15,37 @@ using boost::mpl::_;
|
|||||||
|
|
||||||
typedef arg<1> _1;
|
typedef arg<1> _1;
|
||||||
|
|
||||||
namespace placeholder {
|
namespace placeholders {
|
||||||
using boost::mpl::_1;
|
using boost::mpl::_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef arg<2> _2;
|
typedef arg<2> _2;
|
||||||
|
|
||||||
namespace placeholder {
|
namespace placeholders {
|
||||||
using boost::mpl::_2;
|
using boost::mpl::_2;
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef arg<3> _3;
|
typedef arg<3> _3;
|
||||||
|
|
||||||
namespace placeholder {
|
namespace placeholders {
|
||||||
using boost::mpl::_3;
|
using boost::mpl::_3;
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef arg<4> _4;
|
typedef arg<4> _4;
|
||||||
|
|
||||||
namespace placeholder {
|
namespace placeholders {
|
||||||
using boost::mpl::_4;
|
using boost::mpl::_4;
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef arg<5> _5;
|
typedef arg<5> _5;
|
||||||
|
|
||||||
namespace placeholder {
|
namespace placeholders {
|
||||||
using boost::mpl::_5;
|
using boost::mpl::_5;
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef arg<6> _6;
|
typedef arg<6> _6;
|
||||||
|
|
||||||
namespace placeholder {
|
namespace placeholders {
|
||||||
using boost::mpl::_6;
|
using boost::mpl::_6;
|
||||||
}
|
}
|
||||||
|
|
62
include/boost/mpl/aux_/preprocessed/bcc551/and.hpp
Normal file
62
include/boost/mpl/aux_/preprocessed/bcc551/and.hpp
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
// preprocessed version of 'boost/mpl/aux_/config/use_preprocessed.hpp' header
|
||||||
|
// see the original for copyright information
|
||||||
|
|
||||||
|
namespace boost { namespace mpl {
|
||||||
|
|
||||||
|
namespace aux {
|
||||||
|
|
||||||
|
template< bool C_, typename T1, typename T2, typename T3, typename T4 >
|
||||||
|
struct and_impl
|
||||||
|
: false_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
template< typename T1, typename T2, typename T3, typename T4 >
|
||||||
|
struct and_impl< true,T1,T2,T3,T4 >
|
||||||
|
: and_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
, T2, T3, T4
|
||||||
|
, true_
|
||||||
|
>
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
template<>
|
||||||
|
struct and_impl<
|
||||||
|
true
|
||||||
|
, true_, true_, true_, true_
|
||||||
|
>
|
||||||
|
: true_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace aux
|
||||||
|
|
||||||
|
template<
|
||||||
|
typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T1)
|
||||||
|
, typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T2)
|
||||||
|
, typename T3 = true_, typename T4 = true_, typename T5 = true_
|
||||||
|
>
|
||||||
|
struct and_
|
||||||
|
|
||||||
|
: aux::and_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
, T2, T3, T4, T5
|
||||||
|
>
|
||||||
|
|
||||||
|
{
|
||||||
|
BOOST_MPL_AUX_LAMBDA_SUPPORT(
|
||||||
|
5
|
||||||
|
, and_
|
||||||
|
, (T1, T2, T3, T4, T5)
|
||||||
|
)
|
||||||
|
};
|
||||||
|
|
||||||
|
BOOST_MPL_AUX_VOID_SPEC_EXT(
|
||||||
|
2
|
||||||
|
, 5
|
||||||
|
, and_
|
||||||
|
)
|
||||||
|
|
||||||
|
}} // namespace boost::mpl
|
||||||
|
|
@@ -11,7 +11,7 @@ template<
|
|||||||
>
|
>
|
||||||
struct lambda_impl
|
struct lambda_impl
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef T type;
|
typedef T type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -31,13 +31,13 @@ template<
|
|||||||
, bool C5 = false
|
, bool C5 = false
|
||||||
>
|
>
|
||||||
struct lambda_or
|
struct lambda_or
|
||||||
: true_c
|
: true_
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
|
|
||||||
template<>
|
template<>
|
||||||
struct lambda_or< false,false,false,false,false >
|
struct lambda_or< false,false,false,false,false >
|
||||||
: false_c
|
: false_
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -46,7 +46,7 @@ struct lambda_or< false,false,false,false,false >
|
|||||||
template< int N, bool Protect >
|
template< int N, bool Protect >
|
||||||
struct lambda_impl< arg<N>,Protect,-1 >
|
struct lambda_impl< arg<N>,Protect,-1 >
|
||||||
{
|
{
|
||||||
typedef true_c is_le;
|
typedef true_ is_le;
|
||||||
typedef arg<N> type;
|
typedef arg<N> type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -59,7 +59,7 @@ struct lambda_impl<
|
|||||||
, Protect, 1
|
, Protect, 1
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind0<
|
typedef bind0<
|
||||||
F
|
F
|
||||||
> type;
|
> type;
|
||||||
@@ -144,7 +144,7 @@ struct lambda_impl<
|
|||||||
, Protect, 2
|
, Protect, 2
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind1<
|
typedef bind1<
|
||||||
F
|
F
|
||||||
, T1
|
, T1
|
||||||
@@ -232,7 +232,7 @@ struct lambda_impl<
|
|||||||
, Protect, 3
|
, Protect, 3
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind2<
|
typedef bind2<
|
||||||
F
|
F
|
||||||
, T1, T2
|
, T1, T2
|
||||||
@@ -321,7 +321,7 @@ struct lambda_impl<
|
|||||||
, Protect, 4
|
, Protect, 4
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind3<
|
typedef bind3<
|
||||||
F
|
F
|
||||||
, T1, T2, T3
|
, T1, T2, T3
|
||||||
@@ -415,7 +415,7 @@ struct lambda_impl<
|
|||||||
, Protect, 5
|
, Protect, 5
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind4<
|
typedef bind4<
|
||||||
F
|
F
|
||||||
, T1, T2, T3, T4
|
, T1, T2, T3, T4
|
||||||
@@ -527,7 +527,7 @@ struct lambda_impl<
|
|||||||
, Protect, 6
|
, Protect, 6
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind5<
|
typedef bind5<
|
||||||
F
|
F
|
||||||
, T1, T2, T3, T4, T5
|
, T1, T2, T3, T4, T5
|
||||||
@@ -538,7 +538,7 @@ struct lambda_impl<
|
|||||||
template< typename T, bool Protect >
|
template< typename T, bool Protect >
|
||||||
struct lambda_impl< protect<T>,Protect,1 >
|
struct lambda_impl< protect<T>,Protect,1 >
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef protect<T> type;
|
typedef protect<T> type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -553,7 +553,7 @@ struct lambda_impl<
|
|||||||
, Protect, 6
|
, Protect, 6
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind< F,T1,T2,T3,T4,T5 > type;
|
typedef bind< F,T1,T2,T3,T4,T5 > type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -563,7 +563,7 @@ template<
|
|||||||
>
|
>
|
||||||
struct lambda_impl< bind1st<F,T>,Protect,2 >
|
struct lambda_impl< bind1st<F,T>,Protect,2 >
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind1st< F,T > type;
|
typedef bind1st< F,T > type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -573,7 +573,7 @@ template<
|
|||||||
>
|
>
|
||||||
struct lambda_impl< bind2nd<F,T>,Protect,2 >
|
struct lambda_impl< bind2nd<F,T>,Protect,2 >
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind2nd< F,T > type;
|
typedef bind2nd< F,T > type;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
62
include/boost/mpl/aux_/preprocessed/bcc551/or.hpp
Normal file
62
include/boost/mpl/aux_/preprocessed/bcc551/or.hpp
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
// preprocessed version of 'boost/mpl/aux_/config/use_preprocessed.hpp' header
|
||||||
|
// see the original for copyright information
|
||||||
|
|
||||||
|
namespace boost { namespace mpl {
|
||||||
|
|
||||||
|
namespace aux {
|
||||||
|
|
||||||
|
template< bool C_, typename T1, typename T2, typename T3, typename T4 >
|
||||||
|
struct or_impl
|
||||||
|
: true_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
template< typename T1, typename T2, typename T3, typename T4 >
|
||||||
|
struct or_impl< false,T1,T2,T3,T4 >
|
||||||
|
: or_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
, T2, T3, T4
|
||||||
|
, false_
|
||||||
|
>
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
template<>
|
||||||
|
struct or_impl<
|
||||||
|
false
|
||||||
|
, false_, false_, false_, false_
|
||||||
|
>
|
||||||
|
: false_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace aux
|
||||||
|
|
||||||
|
template<
|
||||||
|
typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T1)
|
||||||
|
, typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T2)
|
||||||
|
, typename T3 = false_, typename T4 = false_, typename T5 = false_
|
||||||
|
>
|
||||||
|
struct or_
|
||||||
|
|
||||||
|
: aux::or_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
, T2, T3, T4, T5
|
||||||
|
>
|
||||||
|
|
||||||
|
{
|
||||||
|
BOOST_MPL_AUX_LAMBDA_SUPPORT(
|
||||||
|
5
|
||||||
|
, or_
|
||||||
|
, (T1, T2, T3, T4, T5)
|
||||||
|
)
|
||||||
|
};
|
||||||
|
|
||||||
|
BOOST_MPL_AUX_VOID_SPEC_EXT(
|
||||||
|
2
|
||||||
|
, 5
|
||||||
|
, or_
|
||||||
|
)
|
||||||
|
|
||||||
|
}} // namespace boost::mpl
|
||||||
|
|
@@ -1,4 +1,4 @@
|
|||||||
// preprocessed version of 'boost/mpl/placeholder.hpp' header
|
// preprocessed version of 'boost/mpl/aux_/config/use_preprocessed.hpp' header
|
||||||
// see the original for copyright information
|
// see the original for copyright information
|
||||||
|
|
||||||
namespace boost {
|
namespace boost {
|
||||||
@@ -6,7 +6,7 @@ namespace mpl {
|
|||||||
|
|
||||||
typedef arg< -1 > _;
|
typedef arg< -1 > _;
|
||||||
|
|
||||||
namespace placeholder {
|
namespace placeholders {
|
||||||
using boost::mpl::_;
|
using boost::mpl::_;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -15,37 +15,37 @@ using boost::mpl::_;
|
|||||||
|
|
||||||
typedef arg<1> _1;
|
typedef arg<1> _1;
|
||||||
|
|
||||||
namespace placeholder {
|
namespace placeholders {
|
||||||
using boost::mpl::_1;
|
using boost::mpl::_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef arg<2> _2;
|
typedef arg<2> _2;
|
||||||
|
|
||||||
namespace placeholder {
|
namespace placeholders {
|
||||||
using boost::mpl::_2;
|
using boost::mpl::_2;
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef arg<3> _3;
|
typedef arg<3> _3;
|
||||||
|
|
||||||
namespace placeholder {
|
namespace placeholders {
|
||||||
using boost::mpl::_3;
|
using boost::mpl::_3;
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef arg<4> _4;
|
typedef arg<4> _4;
|
||||||
|
|
||||||
namespace placeholder {
|
namespace placeholders {
|
||||||
using boost::mpl::_4;
|
using boost::mpl::_4;
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef arg<5> _5;
|
typedef arg<5> _5;
|
||||||
|
|
||||||
namespace placeholder {
|
namespace placeholders {
|
||||||
using boost::mpl::_5;
|
using boost::mpl::_5;
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef arg<6> _6;
|
typedef arg<6> _6;
|
||||||
|
|
||||||
namespace placeholder {
|
namespace placeholders {
|
||||||
using boost::mpl::_6;
|
using boost::mpl::_6;
|
||||||
}
|
}
|
||||||
|
|
62
include/boost/mpl/aux_/preprocessed/gcc/and.hpp
Normal file
62
include/boost/mpl/aux_/preprocessed/gcc/and.hpp
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
// preprocessed version of 'boost/mpl/aux_/config/use_preprocessed.hpp' header
|
||||||
|
// see the original for copyright information
|
||||||
|
|
||||||
|
namespace boost { namespace mpl {
|
||||||
|
|
||||||
|
namespace aux {
|
||||||
|
|
||||||
|
template< bool C_, typename T1, typename T2, typename T3, typename T4 >
|
||||||
|
struct and_impl
|
||||||
|
: false_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
template< typename T1, typename T2, typename T3, typename T4 >
|
||||||
|
struct and_impl< true,T1,T2,T3,T4 >
|
||||||
|
: and_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
, T2, T3, T4
|
||||||
|
, true_
|
||||||
|
>
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
template<>
|
||||||
|
struct and_impl<
|
||||||
|
true
|
||||||
|
, true_, true_, true_, true_
|
||||||
|
>
|
||||||
|
: true_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace aux
|
||||||
|
|
||||||
|
template<
|
||||||
|
typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T1)
|
||||||
|
, typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T2)
|
||||||
|
, typename T3 = true_, typename T4 = true_, typename T5 = true_
|
||||||
|
>
|
||||||
|
struct and_
|
||||||
|
|
||||||
|
: aux::and_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
, T2, T3, T4, T5
|
||||||
|
>
|
||||||
|
|
||||||
|
{
|
||||||
|
BOOST_MPL_AUX_LAMBDA_SUPPORT(
|
||||||
|
5
|
||||||
|
, and_
|
||||||
|
, (T1, T2, T3, T4, T5)
|
||||||
|
)
|
||||||
|
};
|
||||||
|
|
||||||
|
BOOST_MPL_AUX_VOID_SPEC_EXT(
|
||||||
|
2
|
||||||
|
, 5
|
||||||
|
, and_
|
||||||
|
)
|
||||||
|
|
||||||
|
}} // namespace boost::mpl
|
||||||
|
|
@@ -11,7 +11,7 @@ template<
|
|||||||
>
|
>
|
||||||
struct lambda_impl
|
struct lambda_impl
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef T type;
|
typedef T type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -31,13 +31,13 @@ template<
|
|||||||
, bool C5 = false
|
, bool C5 = false
|
||||||
>
|
>
|
||||||
struct lambda_or
|
struct lambda_or
|
||||||
: true_c
|
: true_
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
|
|
||||||
template<>
|
template<>
|
||||||
struct lambda_or< false,false,false,false,false >
|
struct lambda_or< false,false,false,false,false >
|
||||||
: false_c
|
: false_
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -46,7 +46,7 @@ struct lambda_or< false,false,false,false,false >
|
|||||||
template< int N, bool Protect >
|
template< int N, bool Protect >
|
||||||
struct lambda_impl< arg<N>,Protect,-1 >
|
struct lambda_impl< arg<N>,Protect,-1 >
|
||||||
{
|
{
|
||||||
typedef true_c is_le;
|
typedef true_ is_le;
|
||||||
typedef arg<N> type;
|
typedef arg<N> type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -59,7 +59,7 @@ struct lambda_impl<
|
|||||||
, Protect, 1
|
, Protect, 1
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind0<
|
typedef bind0<
|
||||||
F
|
F
|
||||||
> type;
|
> type;
|
||||||
@@ -144,7 +144,7 @@ struct lambda_impl<
|
|||||||
, Protect, 2
|
, Protect, 2
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind1<
|
typedef bind1<
|
||||||
F
|
F
|
||||||
, T1
|
, T1
|
||||||
@@ -232,7 +232,7 @@ struct lambda_impl<
|
|||||||
, Protect, 3
|
, Protect, 3
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind2<
|
typedef bind2<
|
||||||
F
|
F
|
||||||
, T1, T2
|
, T1, T2
|
||||||
@@ -321,7 +321,7 @@ struct lambda_impl<
|
|||||||
, Protect, 4
|
, Protect, 4
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind3<
|
typedef bind3<
|
||||||
F
|
F
|
||||||
, T1, T2, T3
|
, T1, T2, T3
|
||||||
@@ -415,7 +415,7 @@ struct lambda_impl<
|
|||||||
, Protect, 5
|
, Protect, 5
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind4<
|
typedef bind4<
|
||||||
F
|
F
|
||||||
, T1, T2, T3, T4
|
, T1, T2, T3, T4
|
||||||
@@ -527,7 +527,7 @@ struct lambda_impl<
|
|||||||
, Protect, 6
|
, Protect, 6
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind5<
|
typedef bind5<
|
||||||
F
|
F
|
||||||
, T1, T2, T3, T4, T5
|
, T1, T2, T3, T4, T5
|
||||||
@@ -538,7 +538,7 @@ struct lambda_impl<
|
|||||||
template< typename T, bool Protect >
|
template< typename T, bool Protect >
|
||||||
struct lambda_impl< protect<T>,Protect,1 >
|
struct lambda_impl< protect<T>,Protect,1 >
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef protect<T> type;
|
typedef protect<T> type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -553,7 +553,7 @@ struct lambda_impl<
|
|||||||
, Protect, 6
|
, Protect, 6
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind< F,T1,T2,T3,T4,T5 > type;
|
typedef bind< F,T1,T2,T3,T4,T5 > type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -563,7 +563,7 @@ template<
|
|||||||
>
|
>
|
||||||
struct lambda_impl< bind1st<F,T>,Protect,2 >
|
struct lambda_impl< bind1st<F,T>,Protect,2 >
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind1st< F,T > type;
|
typedef bind1st< F,T > type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -573,7 +573,7 @@ template<
|
|||||||
>
|
>
|
||||||
struct lambda_impl< bind2nd<F,T>,Protect,2 >
|
struct lambda_impl< bind2nd<F,T>,Protect,2 >
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind2nd< F,T > type;
|
typedef bind2nd< F,T > type;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
62
include/boost/mpl/aux_/preprocessed/gcc/or.hpp
Normal file
62
include/boost/mpl/aux_/preprocessed/gcc/or.hpp
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
// preprocessed version of 'boost/mpl/aux_/config/use_preprocessed.hpp' header
|
||||||
|
// see the original for copyright information
|
||||||
|
|
||||||
|
namespace boost { namespace mpl {
|
||||||
|
|
||||||
|
namespace aux {
|
||||||
|
|
||||||
|
template< bool C_, typename T1, typename T2, typename T3, typename T4 >
|
||||||
|
struct or_impl
|
||||||
|
: true_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
template< typename T1, typename T2, typename T3, typename T4 >
|
||||||
|
struct or_impl< false,T1,T2,T3,T4 >
|
||||||
|
: or_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
, T2, T3, T4
|
||||||
|
, false_
|
||||||
|
>
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
template<>
|
||||||
|
struct or_impl<
|
||||||
|
false
|
||||||
|
, false_, false_, false_, false_
|
||||||
|
>
|
||||||
|
: false_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace aux
|
||||||
|
|
||||||
|
template<
|
||||||
|
typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T1)
|
||||||
|
, typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T2)
|
||||||
|
, typename T3 = false_, typename T4 = false_, typename T5 = false_
|
||||||
|
>
|
||||||
|
struct or_
|
||||||
|
|
||||||
|
: aux::or_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
, T2, T3, T4, T5
|
||||||
|
>
|
||||||
|
|
||||||
|
{
|
||||||
|
BOOST_MPL_AUX_LAMBDA_SUPPORT(
|
||||||
|
5
|
||||||
|
, or_
|
||||||
|
, (T1, T2, T3, T4, T5)
|
||||||
|
)
|
||||||
|
};
|
||||||
|
|
||||||
|
BOOST_MPL_AUX_VOID_SPEC_EXT(
|
||||||
|
2
|
||||||
|
, 5
|
||||||
|
, or_
|
||||||
|
)
|
||||||
|
|
||||||
|
}} // namespace boost::mpl
|
||||||
|
|
@@ -1,4 +1,4 @@
|
|||||||
// preprocessed version of 'boost/mpl/placeholder.hpp' header
|
// preprocessed version of 'boost/mpl/aux_/config/use_preprocessed.hpp' header
|
||||||
// see the original for copyright information
|
// see the original for copyright information
|
||||||
|
|
||||||
namespace boost {
|
namespace boost {
|
||||||
@@ -6,7 +6,7 @@ namespace mpl {
|
|||||||
|
|
||||||
typedef arg< -1 > _;
|
typedef arg< -1 > _;
|
||||||
|
|
||||||
namespace placeholder {
|
namespace placeholders {
|
||||||
using boost::mpl::_;
|
using boost::mpl::_;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -15,37 +15,37 @@ using boost::mpl::_;
|
|||||||
|
|
||||||
typedef arg<1> _1;
|
typedef arg<1> _1;
|
||||||
|
|
||||||
namespace placeholder {
|
namespace placeholders {
|
||||||
using boost::mpl::_1;
|
using boost::mpl::_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef arg<2> _2;
|
typedef arg<2> _2;
|
||||||
|
|
||||||
namespace placeholder {
|
namespace placeholders {
|
||||||
using boost::mpl::_2;
|
using boost::mpl::_2;
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef arg<3> _3;
|
typedef arg<3> _3;
|
||||||
|
|
||||||
namespace placeholder {
|
namespace placeholders {
|
||||||
using boost::mpl::_3;
|
using boost::mpl::_3;
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef arg<4> _4;
|
typedef arg<4> _4;
|
||||||
|
|
||||||
namespace placeholder {
|
namespace placeholders {
|
||||||
using boost::mpl::_4;
|
using boost::mpl::_4;
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef arg<5> _5;
|
typedef arg<5> _5;
|
||||||
|
|
||||||
namespace placeholder {
|
namespace placeholders {
|
||||||
using boost::mpl::_5;
|
using boost::mpl::_5;
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef arg<6> _6;
|
typedef arg<6> _6;
|
||||||
|
|
||||||
namespace placeholder {
|
namespace placeholders {
|
||||||
using boost::mpl::_6;
|
using boost::mpl::_6;
|
||||||
}
|
}
|
||||||
|
|
68
include/boost/mpl/aux_/preprocessed/msvc60/and.hpp
Normal file
68
include/boost/mpl/aux_/preprocessed/msvc60/and.hpp
Normal file
@@ -0,0 +1,68 @@
|
|||||||
|
// preprocessed version of 'boost/mpl/aux_/config/use_preprocessed.hpp' header
|
||||||
|
// see the original for copyright information
|
||||||
|
|
||||||
|
namespace boost { namespace mpl {
|
||||||
|
|
||||||
|
namespace aux {
|
||||||
|
|
||||||
|
template< bool C_ > struct and_impl
|
||||||
|
{
|
||||||
|
template<
|
||||||
|
typename T1, typename T2, typename T3, typename T4
|
||||||
|
>
|
||||||
|
struct result_
|
||||||
|
: false_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
template<> struct and_impl<true>
|
||||||
|
{
|
||||||
|
template<
|
||||||
|
typename T1, typename T2, typename T3, typename T4
|
||||||
|
>
|
||||||
|
struct result_
|
||||||
|
: and_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
>::template result_< T2,T3,T4,true_ >
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
template<>
|
||||||
|
struct and_impl<true>
|
||||||
|
::result_< true_,true_,true_,true_ >
|
||||||
|
: true_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace aux
|
||||||
|
|
||||||
|
template<
|
||||||
|
typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T1)
|
||||||
|
, typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T2)
|
||||||
|
, typename T3 = true_, typename T4 = true_, typename T5 = true_
|
||||||
|
>
|
||||||
|
struct and_
|
||||||
|
|
||||||
|
: aux::and_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
>::template result_< T2,T3,T4,T5 >
|
||||||
|
|
||||||
|
{
|
||||||
|
BOOST_MPL_AUX_LAMBDA_SUPPORT(
|
||||||
|
5
|
||||||
|
, and_
|
||||||
|
, (T1, T2, T3, T4, T5)
|
||||||
|
)
|
||||||
|
};
|
||||||
|
|
||||||
|
BOOST_MPL_AUX_VOID_SPEC_EXT(
|
||||||
|
2
|
||||||
|
, 5
|
||||||
|
, and_
|
||||||
|
)
|
||||||
|
|
||||||
|
}} // namespace boost::mpl
|
||||||
|
|
@@ -11,7 +11,7 @@ template<
|
|||||||
>
|
>
|
||||||
struct lambda_impl
|
struct lambda_impl
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef T type;
|
typedef T type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -31,13 +31,13 @@ template<
|
|||||||
, bool C5 = false
|
, bool C5 = false
|
||||||
>
|
>
|
||||||
struct lambda_or
|
struct lambda_or
|
||||||
: true_c
|
: true_
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
|
|
||||||
template<>
|
template<>
|
||||||
struct lambda_or< false,false,false,false,false >
|
struct lambda_or< false,false,false,false,false >
|
||||||
: false_c
|
: false_
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -46,7 +46,7 @@ struct lambda_or< false,false,false,false,false >
|
|||||||
template< int N, bool Protect >
|
template< int N, bool Protect >
|
||||||
struct lambda_impl< arg<N>,Protect >
|
struct lambda_impl< arg<N>,Protect >
|
||||||
{
|
{
|
||||||
typedef true_c is_le;
|
typedef true_ is_le;
|
||||||
typedef arg<N> type;
|
typedef arg<N> type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -59,7 +59,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind0<
|
typedef bind0<
|
||||||
F
|
F
|
||||||
> type;
|
> type;
|
||||||
@@ -144,7 +144,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind1<
|
typedef bind1<
|
||||||
F
|
F
|
||||||
, T1
|
, T1
|
||||||
@@ -232,7 +232,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind2<
|
typedef bind2<
|
||||||
F
|
F
|
||||||
, T1, T2
|
, T1, T2
|
||||||
@@ -321,7 +321,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind3<
|
typedef bind3<
|
||||||
F
|
F
|
||||||
, T1, T2, T3
|
, T1, T2, T3
|
||||||
@@ -415,7 +415,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind4<
|
typedef bind4<
|
||||||
F
|
F
|
||||||
, T1, T2, T3, T4
|
, T1, T2, T3, T4
|
||||||
@@ -527,7 +527,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind5<
|
typedef bind5<
|
||||||
F
|
F
|
||||||
, T1, T2, T3, T4, T5
|
, T1, T2, T3, T4, T5
|
||||||
@@ -538,7 +538,7 @@ struct lambda_impl<
|
|||||||
template< typename T, bool Protect >
|
template< typename T, bool Protect >
|
||||||
struct lambda_impl< protect<T>,Protect >
|
struct lambda_impl< protect<T>,Protect >
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef protect<T> type;
|
typedef protect<T> type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -553,7 +553,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind< F,T1,T2,T3,T4,T5 > type;
|
typedef bind< F,T1,T2,T3,T4,T5 > type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -563,7 +563,7 @@ template<
|
|||||||
>
|
>
|
||||||
struct lambda_impl< bind1st<F,T>,Protect >
|
struct lambda_impl< bind1st<F,T>,Protect >
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind1st< F,T > type;
|
typedef bind1st< F,T > type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -573,7 +573,7 @@ template<
|
|||||||
>
|
>
|
||||||
struct lambda_impl< bind2nd<F,T>,Protect >
|
struct lambda_impl< bind2nd<F,T>,Protect >
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind2nd< F,T > type;
|
typedef bind2nd< F,T > type;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@@ -149,7 +149,7 @@ struct lambda
|
|||||||
: aux::lambda_impl<
|
: aux::lambda_impl<
|
||||||
::boost::mpl::aux::template_arity<T>::value
|
::boost::mpl::aux::template_arity<T>::value
|
||||||
|
|
||||||
, bool_c<Protect>::value
|
, bool_<Protect>::value
|
||||||
|
|
||||||
>::template result_<T>
|
>::template result_<T>
|
||||||
{
|
{
|
||||||
|
68
include/boost/mpl/aux_/preprocessed/msvc60/or.hpp
Normal file
68
include/boost/mpl/aux_/preprocessed/msvc60/or.hpp
Normal file
@@ -0,0 +1,68 @@
|
|||||||
|
// preprocessed version of 'boost/mpl/aux_/config/use_preprocessed.hpp' header
|
||||||
|
// see the original for copyright information
|
||||||
|
|
||||||
|
namespace boost { namespace mpl {
|
||||||
|
|
||||||
|
namespace aux {
|
||||||
|
|
||||||
|
template< bool C_ > struct or_impl
|
||||||
|
{
|
||||||
|
template<
|
||||||
|
typename T1, typename T2, typename T3, typename T4
|
||||||
|
>
|
||||||
|
struct result_
|
||||||
|
: true_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
template<> struct or_impl<false>
|
||||||
|
{
|
||||||
|
template<
|
||||||
|
typename T1, typename T2, typename T3, typename T4
|
||||||
|
>
|
||||||
|
struct result_
|
||||||
|
: or_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
>::template result_< T2,T3,T4,false_ >
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
template<>
|
||||||
|
struct or_impl<false>
|
||||||
|
::result_< false_,false_,false_,false_ >
|
||||||
|
: false_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace aux
|
||||||
|
|
||||||
|
template<
|
||||||
|
typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T1)
|
||||||
|
, typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T2)
|
||||||
|
, typename T3 = false_, typename T4 = false_, typename T5 = false_
|
||||||
|
>
|
||||||
|
struct or_
|
||||||
|
|
||||||
|
: aux::or_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
>::template result_< T2,T3,T4,T5 >
|
||||||
|
|
||||||
|
{
|
||||||
|
BOOST_MPL_AUX_LAMBDA_SUPPORT(
|
||||||
|
5
|
||||||
|
, or_
|
||||||
|
, (T1, T2, T3, T4, T5)
|
||||||
|
)
|
||||||
|
};
|
||||||
|
|
||||||
|
BOOST_MPL_AUX_VOID_SPEC_EXT(
|
||||||
|
2
|
||||||
|
, 5
|
||||||
|
, or_
|
||||||
|
)
|
||||||
|
|
||||||
|
}} // namespace boost::mpl
|
||||||
|
|
@@ -1,4 +1,4 @@
|
|||||||
// preprocessed version of 'boost/mpl/placeholder.hpp' header
|
// preprocessed version of 'boost/mpl/aux_/config/use_preprocessed.hpp' header
|
||||||
// see the original for copyright information
|
// see the original for copyright information
|
||||||
|
|
||||||
namespace boost {
|
namespace boost {
|
||||||
@@ -6,7 +6,7 @@ namespace mpl {
|
|||||||
|
|
||||||
typedef arg< -1 > _;
|
typedef arg< -1 > _;
|
||||||
|
|
||||||
namespace placeholder {
|
namespace placeholders {
|
||||||
using boost::mpl::_;
|
using boost::mpl::_;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -15,37 +15,37 @@ using boost::mpl::_;
|
|||||||
|
|
||||||
typedef arg<1> _1;
|
typedef arg<1> _1;
|
||||||
|
|
||||||
namespace placeholder {
|
namespace placeholders {
|
||||||
using boost::mpl::_1;
|
using boost::mpl::_1;
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef arg<2> _2;
|
typedef arg<2> _2;
|
||||||
|
|
||||||
namespace placeholder {
|
namespace placeholders {
|
||||||
using boost::mpl::_2;
|
using boost::mpl::_2;
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef arg<3> _3;
|
typedef arg<3> _3;
|
||||||
|
|
||||||
namespace placeholder {
|
namespace placeholders {
|
||||||
using boost::mpl::_3;
|
using boost::mpl::_3;
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef arg<4> _4;
|
typedef arg<4> _4;
|
||||||
|
|
||||||
namespace placeholder {
|
namespace placeholders {
|
||||||
using boost::mpl::_4;
|
using boost::mpl::_4;
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef arg<5> _5;
|
typedef arg<5> _5;
|
||||||
|
|
||||||
namespace placeholder {
|
namespace placeholders {
|
||||||
using boost::mpl::_5;
|
using boost::mpl::_5;
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef arg<6> _6;
|
typedef arg<6> _6;
|
||||||
|
|
||||||
namespace placeholder {
|
namespace placeholders {
|
||||||
using boost::mpl::_6;
|
using boost::mpl::_6;
|
||||||
}
|
}
|
||||||
|
|
65
include/boost/mpl/aux_/preprocessed/msvc70/and.hpp
Normal file
65
include/boost/mpl/aux_/preprocessed/msvc70/and.hpp
Normal file
@@ -0,0 +1,65 @@
|
|||||||
|
// preprocessed version of 'boost/mpl/aux_/config/use_preprocessed.hpp' header
|
||||||
|
// see the original for copyright information
|
||||||
|
|
||||||
|
namespace boost { namespace mpl {
|
||||||
|
|
||||||
|
namespace aux {
|
||||||
|
|
||||||
|
template< bool C_ > struct and_impl
|
||||||
|
{
|
||||||
|
template<
|
||||||
|
typename T1, typename T2, typename T3, typename T4
|
||||||
|
>
|
||||||
|
struct result_
|
||||||
|
: false_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
template<> struct and_impl<true>
|
||||||
|
{
|
||||||
|
template<
|
||||||
|
typename T1, typename T2, typename T3, typename T4
|
||||||
|
>
|
||||||
|
struct result_
|
||||||
|
: and_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
>::template result_< T2,T3,T4,true_ >
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
template<> struct result_<true_, true_, true_, true_>
|
||||||
|
: true_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace aux
|
||||||
|
|
||||||
|
template<
|
||||||
|
typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T1)
|
||||||
|
, typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T2)
|
||||||
|
, typename T3 = true_, typename T4 = true_, typename T5 = true_
|
||||||
|
>
|
||||||
|
struct and_
|
||||||
|
|
||||||
|
: aux::and_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
>::template result_< T2,T3,T4,T5 >
|
||||||
|
|
||||||
|
{
|
||||||
|
BOOST_MPL_AUX_LAMBDA_SUPPORT(
|
||||||
|
5
|
||||||
|
, and_
|
||||||
|
, (T1, T2, T3, T4, T5)
|
||||||
|
)
|
||||||
|
};
|
||||||
|
|
||||||
|
BOOST_MPL_AUX_VOID_SPEC_EXT(
|
||||||
|
2
|
||||||
|
, 5
|
||||||
|
, and_
|
||||||
|
)
|
||||||
|
|
||||||
|
}} // namespace boost::mpl
|
||||||
|
|
@@ -11,7 +11,7 @@ template<
|
|||||||
>
|
>
|
||||||
struct lambda_impl
|
struct lambda_impl
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef T type;
|
typedef T type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -31,13 +31,13 @@ template<
|
|||||||
, bool C5 = false
|
, bool C5 = false
|
||||||
>
|
>
|
||||||
struct lambda_or
|
struct lambda_or
|
||||||
: true_c
|
: true_
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
|
|
||||||
template<>
|
template<>
|
||||||
struct lambda_or< false,false,false,false,false >
|
struct lambda_or< false,false,false,false,false >
|
||||||
: false_c
|
: false_
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -46,7 +46,7 @@ struct lambda_or< false,false,false,false,false >
|
|||||||
template< int N, bool Protect >
|
template< int N, bool Protect >
|
||||||
struct lambda_impl< arg<N>,Protect >
|
struct lambda_impl< arg<N>,Protect >
|
||||||
{
|
{
|
||||||
typedef true_c is_le;
|
typedef true_ is_le;
|
||||||
typedef arg<N> type;
|
typedef arg<N> type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -59,7 +59,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind0<
|
typedef bind0<
|
||||||
F
|
F
|
||||||
> type;
|
> type;
|
||||||
@@ -144,7 +144,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind1<
|
typedef bind1<
|
||||||
F
|
F
|
||||||
, T1
|
, T1
|
||||||
@@ -232,7 +232,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind2<
|
typedef bind2<
|
||||||
F
|
F
|
||||||
, T1, T2
|
, T1, T2
|
||||||
@@ -321,7 +321,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind3<
|
typedef bind3<
|
||||||
F
|
F
|
||||||
, T1, T2, T3
|
, T1, T2, T3
|
||||||
@@ -415,7 +415,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind4<
|
typedef bind4<
|
||||||
F
|
F
|
||||||
, T1, T2, T3, T4
|
, T1, T2, T3, T4
|
||||||
@@ -527,7 +527,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind5<
|
typedef bind5<
|
||||||
F
|
F
|
||||||
, T1, T2, T3, T4, T5
|
, T1, T2, T3, T4, T5
|
||||||
@@ -538,7 +538,7 @@ struct lambda_impl<
|
|||||||
template< typename T, bool Protect >
|
template< typename T, bool Protect >
|
||||||
struct lambda_impl< protect<T>,Protect >
|
struct lambda_impl< protect<T>,Protect >
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef protect<T> type;
|
typedef protect<T> type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -553,7 +553,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind< F,T1,T2,T3,T4,T5 > type;
|
typedef bind< F,T1,T2,T3,T4,T5 > type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -563,7 +563,7 @@ template<
|
|||||||
>
|
>
|
||||||
struct lambda_impl< bind1st<F,T>,Protect >
|
struct lambda_impl< bind1st<F,T>,Protect >
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind1st< F,T > type;
|
typedef bind1st< F,T > type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -573,7 +573,7 @@ template<
|
|||||||
>
|
>
|
||||||
struct lambda_impl< bind2nd<F,T>,Protect >
|
struct lambda_impl< bind2nd<F,T>,Protect >
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind2nd< F,T > type;
|
typedef bind2nd< F,T > type;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
65
include/boost/mpl/aux_/preprocessed/msvc70/or.hpp
Normal file
65
include/boost/mpl/aux_/preprocessed/msvc70/or.hpp
Normal file
@@ -0,0 +1,65 @@
|
|||||||
|
// preprocessed version of 'boost/mpl/aux_/config/use_preprocessed.hpp' header
|
||||||
|
// see the original for copyright information
|
||||||
|
|
||||||
|
namespace boost { namespace mpl {
|
||||||
|
|
||||||
|
namespace aux {
|
||||||
|
|
||||||
|
template< bool C_ > struct or_impl
|
||||||
|
{
|
||||||
|
template<
|
||||||
|
typename T1, typename T2, typename T3, typename T4
|
||||||
|
>
|
||||||
|
struct result_
|
||||||
|
: true_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
template<> struct or_impl<false>
|
||||||
|
{
|
||||||
|
template<
|
||||||
|
typename T1, typename T2, typename T3, typename T4
|
||||||
|
>
|
||||||
|
struct result_
|
||||||
|
: or_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
>::template result_< T2,T3,T4,false_ >
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
template<> struct result_<false_, false_, false_, false_>
|
||||||
|
: false_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace aux
|
||||||
|
|
||||||
|
template<
|
||||||
|
typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T1)
|
||||||
|
, typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T2)
|
||||||
|
, typename T3 = false_, typename T4 = false_, typename T5 = false_
|
||||||
|
>
|
||||||
|
struct or_
|
||||||
|
|
||||||
|
: aux::or_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
>::template result_< T2,T3,T4,T5 >
|
||||||
|
|
||||||
|
{
|
||||||
|
BOOST_MPL_AUX_LAMBDA_SUPPORT(
|
||||||
|
5
|
||||||
|
, or_
|
||||||
|
, (T1, T2, T3, T4, T5)
|
||||||
|
)
|
||||||
|
};
|
||||||
|
|
||||||
|
BOOST_MPL_AUX_VOID_SPEC_EXT(
|
||||||
|
2
|
||||||
|
, 5
|
||||||
|
, or_
|
||||||
|
)
|
||||||
|
|
||||||
|
}} // namespace boost::mpl
|
||||||
|
|
@@ -1,54 +0,0 @@
|
|||||||
// preprocessed version of 'boost/mpl/placeholder.hpp' header
|
|
||||||
// see the original for copyright information
|
|
||||||
|
|
||||||
namespace boost {
|
|
||||||
namespace mpl {
|
|
||||||
|
|
||||||
typedef arg< -1 > _;
|
|
||||||
|
|
||||||
namespace placeholder {
|
|
||||||
using boost::mpl::_;
|
|
||||||
}
|
|
||||||
|
|
||||||
// agurt, 17/mar/02: one more placeholder for the last 'apply#'
|
|
||||||
// specialization
|
|
||||||
|
|
||||||
typedef arg<1> _1;
|
|
||||||
|
|
||||||
namespace placeholder {
|
|
||||||
using boost::mpl::_1;
|
|
||||||
}
|
|
||||||
|
|
||||||
typedef arg<2> _2;
|
|
||||||
|
|
||||||
namespace placeholder {
|
|
||||||
using boost::mpl::_2;
|
|
||||||
}
|
|
||||||
|
|
||||||
typedef arg<3> _3;
|
|
||||||
|
|
||||||
namespace placeholder {
|
|
||||||
using boost::mpl::_3;
|
|
||||||
}
|
|
||||||
|
|
||||||
typedef arg<4> _4;
|
|
||||||
|
|
||||||
namespace placeholder {
|
|
||||||
using boost::mpl::_4;
|
|
||||||
}
|
|
||||||
|
|
||||||
typedef arg<5> _5;
|
|
||||||
|
|
||||||
namespace placeholder {
|
|
||||||
using boost::mpl::_5;
|
|
||||||
}
|
|
||||||
|
|
||||||
typedef arg<6> _6;
|
|
||||||
|
|
||||||
namespace placeholder {
|
|
||||||
using boost::mpl::_6;
|
|
||||||
}
|
|
||||||
|
|
||||||
} // namespace mpl
|
|
||||||
} // namespace boost
|
|
||||||
|
|
54
include/boost/mpl/aux_/preprocessed/msvc70/placeholders.hpp
Normal file
54
include/boost/mpl/aux_/preprocessed/msvc70/placeholders.hpp
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
// preprocessed version of 'boost/mpl/aux_/config/use_preprocessed.hpp' header
|
||||||
|
// see the original for copyright information
|
||||||
|
|
||||||
|
namespace boost {
|
||||||
|
namespace mpl {
|
||||||
|
|
||||||
|
typedef arg< -1 > _;
|
||||||
|
|
||||||
|
namespace placeholders {
|
||||||
|
using boost::mpl::_;
|
||||||
|
}
|
||||||
|
|
||||||
|
// agurt, 17/mar/02: one more placeholder for the last 'apply#'
|
||||||
|
// specialization
|
||||||
|
|
||||||
|
typedef arg<1> _1;
|
||||||
|
|
||||||
|
namespace placeholders {
|
||||||
|
using boost::mpl::_1;
|
||||||
|
}
|
||||||
|
|
||||||
|
typedef arg<2> _2;
|
||||||
|
|
||||||
|
namespace placeholders {
|
||||||
|
using boost::mpl::_2;
|
||||||
|
}
|
||||||
|
|
||||||
|
typedef arg<3> _3;
|
||||||
|
|
||||||
|
namespace placeholders {
|
||||||
|
using boost::mpl::_3;
|
||||||
|
}
|
||||||
|
|
||||||
|
typedef arg<4> _4;
|
||||||
|
|
||||||
|
namespace placeholders {
|
||||||
|
using boost::mpl::_4;
|
||||||
|
}
|
||||||
|
|
||||||
|
typedef arg<5> _5;
|
||||||
|
|
||||||
|
namespace placeholders {
|
||||||
|
using boost::mpl::_5;
|
||||||
|
}
|
||||||
|
|
||||||
|
typedef arg<6> _6;
|
||||||
|
|
||||||
|
namespace placeholders {
|
||||||
|
using boost::mpl::_6;
|
||||||
|
}
|
||||||
|
|
||||||
|
} // namespace mpl
|
||||||
|
} // namespace boost
|
||||||
|
|
62
include/boost/mpl/aux_/preprocessed/mwcw/and.hpp
Normal file
62
include/boost/mpl/aux_/preprocessed/mwcw/and.hpp
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
// preprocessed version of 'boost/mpl/aux_/config/use_preprocessed.hpp' header
|
||||||
|
// see the original for copyright information
|
||||||
|
|
||||||
|
namespace boost { namespace mpl {
|
||||||
|
|
||||||
|
namespace aux {
|
||||||
|
|
||||||
|
template< bool C_, typename T1, typename T2, typename T3, typename T4 >
|
||||||
|
struct and_impl
|
||||||
|
: false_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
template< typename T1, typename T2, typename T3, typename T4 >
|
||||||
|
struct and_impl< true,T1,T2,T3,T4 >
|
||||||
|
: and_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
, T2, T3, T4
|
||||||
|
, true_
|
||||||
|
>
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
template<>
|
||||||
|
struct and_impl<
|
||||||
|
true
|
||||||
|
, true_, true_, true_, true_
|
||||||
|
>
|
||||||
|
: true_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace aux
|
||||||
|
|
||||||
|
template<
|
||||||
|
typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T1)
|
||||||
|
, typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T2)
|
||||||
|
, typename T3 = true_, typename T4 = true_, typename T5 = true_
|
||||||
|
>
|
||||||
|
struct and_
|
||||||
|
|
||||||
|
: aux::and_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
, T2, T3, T4, T5
|
||||||
|
>
|
||||||
|
|
||||||
|
{
|
||||||
|
BOOST_MPL_AUX_LAMBDA_SUPPORT(
|
||||||
|
5
|
||||||
|
, and_
|
||||||
|
, (T1, T2, T3, T4, T5)
|
||||||
|
)
|
||||||
|
};
|
||||||
|
|
||||||
|
BOOST_MPL_AUX_VOID_SPEC_EXT(
|
||||||
|
2
|
||||||
|
, 5
|
||||||
|
, and_
|
||||||
|
)
|
||||||
|
|
||||||
|
}} // namespace boost::mpl
|
||||||
|
|
@@ -11,7 +11,7 @@ template<
|
|||||||
>
|
>
|
||||||
struct lambda_impl
|
struct lambda_impl
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef T type;
|
typedef T type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -31,13 +31,13 @@ template<
|
|||||||
, bool C5 = false
|
, bool C5 = false
|
||||||
>
|
>
|
||||||
struct lambda_or
|
struct lambda_or
|
||||||
: true_c
|
: true_
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
|
|
||||||
template<>
|
template<>
|
||||||
struct lambda_or< false,false,false,false,false >
|
struct lambda_or< false,false,false,false,false >
|
||||||
: false_c
|
: false_
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -46,7 +46,7 @@ struct lambda_or< false,false,false,false,false >
|
|||||||
template< int N, bool Protect >
|
template< int N, bool Protect >
|
||||||
struct lambda_impl< arg<N>,Protect >
|
struct lambda_impl< arg<N>,Protect >
|
||||||
{
|
{
|
||||||
typedef true_c is_le;
|
typedef true_ is_le;
|
||||||
typedef arg<N> type;
|
typedef arg<N> type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -59,7 +59,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind0<
|
typedef bind0<
|
||||||
F
|
F
|
||||||
> type;
|
> type;
|
||||||
@@ -144,7 +144,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind1<
|
typedef bind1<
|
||||||
F
|
F
|
||||||
, T1
|
, T1
|
||||||
@@ -232,7 +232,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind2<
|
typedef bind2<
|
||||||
F
|
F
|
||||||
, T1, T2
|
, T1, T2
|
||||||
@@ -321,7 +321,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind3<
|
typedef bind3<
|
||||||
F
|
F
|
||||||
, T1, T2, T3
|
, T1, T2, T3
|
||||||
@@ -415,7 +415,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind4<
|
typedef bind4<
|
||||||
F
|
F
|
||||||
, T1, T2, T3, T4
|
, T1, T2, T3, T4
|
||||||
@@ -527,7 +527,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind5<
|
typedef bind5<
|
||||||
F
|
F
|
||||||
, T1, T2, T3, T4, T5
|
, T1, T2, T3, T4, T5
|
||||||
@@ -538,7 +538,7 @@ struct lambda_impl<
|
|||||||
template< typename T, bool Protect >
|
template< typename T, bool Protect >
|
||||||
struct lambda_impl< protect<T>,Protect >
|
struct lambda_impl< protect<T>,Protect >
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef protect<T> type;
|
typedef protect<T> type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -553,7 +553,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind< F,T1,T2,T3,T4,T5 > type;
|
typedef bind< F,T1,T2,T3,T4,T5 > type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -563,7 +563,7 @@ template<
|
|||||||
>
|
>
|
||||||
struct lambda_impl< bind1st<F,T>,Protect >
|
struct lambda_impl< bind1st<F,T>,Protect >
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind1st< F,T > type;
|
typedef bind1st< F,T > type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -573,7 +573,7 @@ template<
|
|||||||
>
|
>
|
||||||
struct lambda_impl< bind2nd<F,T>,Protect >
|
struct lambda_impl< bind2nd<F,T>,Protect >
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind2nd< F,T > type;
|
typedef bind2nd< F,T > type;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
62
include/boost/mpl/aux_/preprocessed/mwcw/or.hpp
Normal file
62
include/boost/mpl/aux_/preprocessed/mwcw/or.hpp
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
// preprocessed version of 'boost/mpl/aux_/config/use_preprocessed.hpp' header
|
||||||
|
// see the original for copyright information
|
||||||
|
|
||||||
|
namespace boost { namespace mpl {
|
||||||
|
|
||||||
|
namespace aux {
|
||||||
|
|
||||||
|
template< bool C_, typename T1, typename T2, typename T3, typename T4 >
|
||||||
|
struct or_impl
|
||||||
|
: true_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
template< typename T1, typename T2, typename T3, typename T4 >
|
||||||
|
struct or_impl< false,T1,T2,T3,T4 >
|
||||||
|
: or_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
, T2, T3, T4
|
||||||
|
, false_
|
||||||
|
>
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
template<>
|
||||||
|
struct or_impl<
|
||||||
|
false
|
||||||
|
, false_, false_, false_, false_
|
||||||
|
>
|
||||||
|
: false_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace aux
|
||||||
|
|
||||||
|
template<
|
||||||
|
typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T1)
|
||||||
|
, typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T2)
|
||||||
|
, typename T3 = false_, typename T4 = false_, typename T5 = false_
|
||||||
|
>
|
||||||
|
struct or_
|
||||||
|
|
||||||
|
: aux::or_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
, T2, T3, T4, T5
|
||||||
|
>
|
||||||
|
|
||||||
|
{
|
||||||
|
BOOST_MPL_AUX_LAMBDA_SUPPORT(
|
||||||
|
5
|
||||||
|
, or_
|
||||||
|
, (T1, T2, T3, T4, T5)
|
||||||
|
)
|
||||||
|
};
|
||||||
|
|
||||||
|
BOOST_MPL_AUX_VOID_SPEC_EXT(
|
||||||
|
2
|
||||||
|
, 5
|
||||||
|
, or_
|
||||||
|
)
|
||||||
|
|
||||||
|
}} // namespace boost::mpl
|
||||||
|
|
@@ -1,54 +0,0 @@
|
|||||||
// preprocessed version of 'boost/mpl/placeholder.hpp' header
|
|
||||||
// see the original for copyright information
|
|
||||||
|
|
||||||
namespace boost {
|
|
||||||
namespace mpl {
|
|
||||||
|
|
||||||
typedef arg< -1 > _;
|
|
||||||
|
|
||||||
namespace placeholder {
|
|
||||||
using boost::mpl::_;
|
|
||||||
}
|
|
||||||
|
|
||||||
// agurt, 17/mar/02: one more placeholder for the last 'apply#'
|
|
||||||
// specialization
|
|
||||||
|
|
||||||
typedef arg<1> _1;
|
|
||||||
|
|
||||||
namespace placeholder {
|
|
||||||
using boost::mpl::_1;
|
|
||||||
}
|
|
||||||
|
|
||||||
typedef arg<2> _2;
|
|
||||||
|
|
||||||
namespace placeholder {
|
|
||||||
using boost::mpl::_2;
|
|
||||||
}
|
|
||||||
|
|
||||||
typedef arg<3> _3;
|
|
||||||
|
|
||||||
namespace placeholder {
|
|
||||||
using boost::mpl::_3;
|
|
||||||
}
|
|
||||||
|
|
||||||
typedef arg<4> _4;
|
|
||||||
|
|
||||||
namespace placeholder {
|
|
||||||
using boost::mpl::_4;
|
|
||||||
}
|
|
||||||
|
|
||||||
typedef arg<5> _5;
|
|
||||||
|
|
||||||
namespace placeholder {
|
|
||||||
using boost::mpl::_5;
|
|
||||||
}
|
|
||||||
|
|
||||||
typedef arg<6> _6;
|
|
||||||
|
|
||||||
namespace placeholder {
|
|
||||||
using boost::mpl::_6;
|
|
||||||
}
|
|
||||||
|
|
||||||
} // namespace mpl
|
|
||||||
} // namespace boost
|
|
||||||
|
|
54
include/boost/mpl/aux_/preprocessed/mwcw/placeholders.hpp
Normal file
54
include/boost/mpl/aux_/preprocessed/mwcw/placeholders.hpp
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
// preprocessed version of 'boost/mpl/aux_/config/use_preprocessed.hpp' header
|
||||||
|
// see the original for copyright information
|
||||||
|
|
||||||
|
namespace boost {
|
||||||
|
namespace mpl {
|
||||||
|
|
||||||
|
typedef arg< -1 > _;
|
||||||
|
|
||||||
|
namespace placeholders {
|
||||||
|
using boost::mpl::_;
|
||||||
|
}
|
||||||
|
|
||||||
|
// agurt, 17/mar/02: one more placeholder for the last 'apply#'
|
||||||
|
// specialization
|
||||||
|
|
||||||
|
typedef arg<1> _1;
|
||||||
|
|
||||||
|
namespace placeholders {
|
||||||
|
using boost::mpl::_1;
|
||||||
|
}
|
||||||
|
|
||||||
|
typedef arg<2> _2;
|
||||||
|
|
||||||
|
namespace placeholders {
|
||||||
|
using boost::mpl::_2;
|
||||||
|
}
|
||||||
|
|
||||||
|
typedef arg<3> _3;
|
||||||
|
|
||||||
|
namespace placeholders {
|
||||||
|
using boost::mpl::_3;
|
||||||
|
}
|
||||||
|
|
||||||
|
typedef arg<4> _4;
|
||||||
|
|
||||||
|
namespace placeholders {
|
||||||
|
using boost::mpl::_4;
|
||||||
|
}
|
||||||
|
|
||||||
|
typedef arg<5> _5;
|
||||||
|
|
||||||
|
namespace placeholders {
|
||||||
|
using boost::mpl::_5;
|
||||||
|
}
|
||||||
|
|
||||||
|
typedef arg<6> _6;
|
||||||
|
|
||||||
|
namespace placeholders {
|
||||||
|
using boost::mpl::_6;
|
||||||
|
}
|
||||||
|
|
||||||
|
} // namespace mpl
|
||||||
|
} // namespace boost
|
||||||
|
|
68
include/boost/mpl/aux_/preprocessed/no_ctps/and.hpp
Normal file
68
include/boost/mpl/aux_/preprocessed/no_ctps/and.hpp
Normal file
@@ -0,0 +1,68 @@
|
|||||||
|
// preprocessed version of 'boost/mpl/aux_/config/use_preprocessed.hpp' header
|
||||||
|
// see the original for copyright information
|
||||||
|
|
||||||
|
namespace boost { namespace mpl {
|
||||||
|
|
||||||
|
namespace aux {
|
||||||
|
|
||||||
|
template< bool C_ > struct and_impl
|
||||||
|
{
|
||||||
|
template<
|
||||||
|
typename T1, typename T2, typename T3, typename T4
|
||||||
|
>
|
||||||
|
struct result_
|
||||||
|
: false_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
template<> struct and_impl<true>
|
||||||
|
{
|
||||||
|
template<
|
||||||
|
typename T1, typename T2, typename T3, typename T4
|
||||||
|
>
|
||||||
|
struct result_
|
||||||
|
: and_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
>::template result_< T2,T3,T4,true_ >
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
template<>
|
||||||
|
struct and_impl<true>
|
||||||
|
::result_< true_,true_,true_,true_ >
|
||||||
|
: true_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace aux
|
||||||
|
|
||||||
|
template<
|
||||||
|
typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T1)
|
||||||
|
, typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T2)
|
||||||
|
, typename T3 = true_, typename T4 = true_, typename T5 = true_
|
||||||
|
>
|
||||||
|
struct and_
|
||||||
|
|
||||||
|
: aux::and_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
>::template result_< T2,T3,T4,T5 >
|
||||||
|
|
||||||
|
{
|
||||||
|
BOOST_MPL_AUX_LAMBDA_SUPPORT(
|
||||||
|
5
|
||||||
|
, and_
|
||||||
|
, (T1, T2, T3, T4, T5)
|
||||||
|
)
|
||||||
|
};
|
||||||
|
|
||||||
|
BOOST_MPL_AUX_VOID_SPEC_EXT(
|
||||||
|
2
|
||||||
|
, 5
|
||||||
|
, and_
|
||||||
|
)
|
||||||
|
|
||||||
|
}} // namespace boost::mpl
|
||||||
|
|
@@ -11,7 +11,7 @@ template<
|
|||||||
>
|
>
|
||||||
struct lambda_impl
|
struct lambda_impl
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef T type;
|
typedef T type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -31,13 +31,13 @@ template<
|
|||||||
, bool C5 = false
|
, bool C5 = false
|
||||||
>
|
>
|
||||||
struct lambda_or
|
struct lambda_or
|
||||||
: true_c
|
: true_
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
|
|
||||||
template<>
|
template<>
|
||||||
struct lambda_or< false,false,false,false,false >
|
struct lambda_or< false,false,false,false,false >
|
||||||
: false_c
|
: false_
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -46,7 +46,7 @@ struct lambda_or< false,false,false,false,false >
|
|||||||
template< int N, bool Protect >
|
template< int N, bool Protect >
|
||||||
struct lambda_impl< arg<N>,Protect >
|
struct lambda_impl< arg<N>,Protect >
|
||||||
{
|
{
|
||||||
typedef true_c is_le;
|
typedef true_ is_le;
|
||||||
typedef arg<N> type;
|
typedef arg<N> type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -59,7 +59,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind0<
|
typedef bind0<
|
||||||
F
|
F
|
||||||
> type;
|
> type;
|
||||||
@@ -144,7 +144,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind1<
|
typedef bind1<
|
||||||
F
|
F
|
||||||
, T1
|
, T1
|
||||||
@@ -232,7 +232,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind2<
|
typedef bind2<
|
||||||
F
|
F
|
||||||
, T1, T2
|
, T1, T2
|
||||||
@@ -321,7 +321,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind3<
|
typedef bind3<
|
||||||
F
|
F
|
||||||
, T1, T2, T3
|
, T1, T2, T3
|
||||||
@@ -415,7 +415,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind4<
|
typedef bind4<
|
||||||
F
|
F
|
||||||
, T1, T2, T3, T4
|
, T1, T2, T3, T4
|
||||||
@@ -527,7 +527,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind5<
|
typedef bind5<
|
||||||
F
|
F
|
||||||
, T1, T2, T3, T4, T5
|
, T1, T2, T3, T4, T5
|
||||||
@@ -538,7 +538,7 @@ struct lambda_impl<
|
|||||||
template< typename T, bool Protect >
|
template< typename T, bool Protect >
|
||||||
struct lambda_impl< protect<T>,Protect >
|
struct lambda_impl< protect<T>,Protect >
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef protect<T> type;
|
typedef protect<T> type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -553,7 +553,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind< F,T1,T2,T3,T4,T5 > type;
|
typedef bind< F,T1,T2,T3,T4,T5 > type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -563,7 +563,7 @@ template<
|
|||||||
>
|
>
|
||||||
struct lambda_impl< bind1st<F,T>,Protect >
|
struct lambda_impl< bind1st<F,T>,Protect >
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind1st< F,T > type;
|
typedef bind1st< F,T > type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -573,7 +573,7 @@ template<
|
|||||||
>
|
>
|
||||||
struct lambda_impl< bind2nd<F,T>,Protect >
|
struct lambda_impl< bind2nd<F,T>,Protect >
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind2nd< F,T > type;
|
typedef bind2nd< F,T > type;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
68
include/boost/mpl/aux_/preprocessed/no_ctps/or.hpp
Normal file
68
include/boost/mpl/aux_/preprocessed/no_ctps/or.hpp
Normal file
@@ -0,0 +1,68 @@
|
|||||||
|
// preprocessed version of 'boost/mpl/aux_/config/use_preprocessed.hpp' header
|
||||||
|
// see the original for copyright information
|
||||||
|
|
||||||
|
namespace boost { namespace mpl {
|
||||||
|
|
||||||
|
namespace aux {
|
||||||
|
|
||||||
|
template< bool C_ > struct or_impl
|
||||||
|
{
|
||||||
|
template<
|
||||||
|
typename T1, typename T2, typename T3, typename T4
|
||||||
|
>
|
||||||
|
struct result_
|
||||||
|
: true_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
template<> struct or_impl<false>
|
||||||
|
{
|
||||||
|
template<
|
||||||
|
typename T1, typename T2, typename T3, typename T4
|
||||||
|
>
|
||||||
|
struct result_
|
||||||
|
: or_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
>::template result_< T2,T3,T4,false_ >
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
template<>
|
||||||
|
struct or_impl<false>
|
||||||
|
::result_< false_,false_,false_,false_ >
|
||||||
|
: false_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace aux
|
||||||
|
|
||||||
|
template<
|
||||||
|
typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T1)
|
||||||
|
, typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T2)
|
||||||
|
, typename T3 = false_, typename T4 = false_, typename T5 = false_
|
||||||
|
>
|
||||||
|
struct or_
|
||||||
|
|
||||||
|
: aux::or_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
>::template result_< T2,T3,T4,T5 >
|
||||||
|
|
||||||
|
{
|
||||||
|
BOOST_MPL_AUX_LAMBDA_SUPPORT(
|
||||||
|
5
|
||||||
|
, or_
|
||||||
|
, (T1, T2, T3, T4, T5)
|
||||||
|
)
|
||||||
|
};
|
||||||
|
|
||||||
|
BOOST_MPL_AUX_VOID_SPEC_EXT(
|
||||||
|
2
|
||||||
|
, 5
|
||||||
|
, or_
|
||||||
|
)
|
||||||
|
|
||||||
|
}} // namespace boost::mpl
|
||||||
|
|
@@ -1,54 +0,0 @@
|
|||||||
// preprocessed version of 'boost/mpl/placeholder.hpp' header
|
|
||||||
// see the original for copyright information
|
|
||||||
|
|
||||||
namespace boost {
|
|
||||||
namespace mpl {
|
|
||||||
|
|
||||||
typedef arg< -1 > _;
|
|
||||||
|
|
||||||
namespace placeholder {
|
|
||||||
using boost::mpl::_;
|
|
||||||
}
|
|
||||||
|
|
||||||
// agurt, 17/mar/02: one more placeholder for the last 'apply#'
|
|
||||||
// specialization
|
|
||||||
|
|
||||||
typedef arg<1> _1;
|
|
||||||
|
|
||||||
namespace placeholder {
|
|
||||||
using boost::mpl::_1;
|
|
||||||
}
|
|
||||||
|
|
||||||
typedef arg<2> _2;
|
|
||||||
|
|
||||||
namespace placeholder {
|
|
||||||
using boost::mpl::_2;
|
|
||||||
}
|
|
||||||
|
|
||||||
typedef arg<3> _3;
|
|
||||||
|
|
||||||
namespace placeholder {
|
|
||||||
using boost::mpl::_3;
|
|
||||||
}
|
|
||||||
|
|
||||||
typedef arg<4> _4;
|
|
||||||
|
|
||||||
namespace placeholder {
|
|
||||||
using boost::mpl::_4;
|
|
||||||
}
|
|
||||||
|
|
||||||
typedef arg<5> _5;
|
|
||||||
|
|
||||||
namespace placeholder {
|
|
||||||
using boost::mpl::_5;
|
|
||||||
}
|
|
||||||
|
|
||||||
typedef arg<6> _6;
|
|
||||||
|
|
||||||
namespace placeholder {
|
|
||||||
using boost::mpl::_6;
|
|
||||||
}
|
|
||||||
|
|
||||||
} // namespace mpl
|
|
||||||
} // namespace boost
|
|
||||||
|
|
54
include/boost/mpl/aux_/preprocessed/no_ctps/placeholders.hpp
Normal file
54
include/boost/mpl/aux_/preprocessed/no_ctps/placeholders.hpp
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
// preprocessed version of 'boost/mpl/aux_/config/use_preprocessed.hpp' header
|
||||||
|
// see the original for copyright information
|
||||||
|
|
||||||
|
namespace boost {
|
||||||
|
namespace mpl {
|
||||||
|
|
||||||
|
typedef arg< -1 > _;
|
||||||
|
|
||||||
|
namespace placeholders {
|
||||||
|
using boost::mpl::_;
|
||||||
|
}
|
||||||
|
|
||||||
|
// agurt, 17/mar/02: one more placeholder for the last 'apply#'
|
||||||
|
// specialization
|
||||||
|
|
||||||
|
typedef arg<1> _1;
|
||||||
|
|
||||||
|
namespace placeholders {
|
||||||
|
using boost::mpl::_1;
|
||||||
|
}
|
||||||
|
|
||||||
|
typedef arg<2> _2;
|
||||||
|
|
||||||
|
namespace placeholders {
|
||||||
|
using boost::mpl::_2;
|
||||||
|
}
|
||||||
|
|
||||||
|
typedef arg<3> _3;
|
||||||
|
|
||||||
|
namespace placeholders {
|
||||||
|
using boost::mpl::_3;
|
||||||
|
}
|
||||||
|
|
||||||
|
typedef arg<4> _4;
|
||||||
|
|
||||||
|
namespace placeholders {
|
||||||
|
using boost::mpl::_4;
|
||||||
|
}
|
||||||
|
|
||||||
|
typedef arg<5> _5;
|
||||||
|
|
||||||
|
namespace placeholders {
|
||||||
|
using boost::mpl::_5;
|
||||||
|
}
|
||||||
|
|
||||||
|
typedef arg<6> _6;
|
||||||
|
|
||||||
|
namespace placeholders {
|
||||||
|
using boost::mpl::_6;
|
||||||
|
}
|
||||||
|
|
||||||
|
} // namespace mpl
|
||||||
|
} // namespace boost
|
||||||
|
|
62
include/boost/mpl/aux_/preprocessed/plain/and.hpp
Normal file
62
include/boost/mpl/aux_/preprocessed/plain/and.hpp
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
// preprocessed version of 'boost/mpl/aux_/config/use_preprocessed.hpp' header
|
||||||
|
// see the original for copyright information
|
||||||
|
|
||||||
|
namespace boost { namespace mpl {
|
||||||
|
|
||||||
|
namespace aux {
|
||||||
|
|
||||||
|
template< bool C_, typename T1, typename T2, typename T3, typename T4 >
|
||||||
|
struct and_impl
|
||||||
|
: false_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
template< typename T1, typename T2, typename T3, typename T4 >
|
||||||
|
struct and_impl< true,T1,T2,T3,T4 >
|
||||||
|
: and_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
, T2, T3, T4
|
||||||
|
, true_
|
||||||
|
>
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
template<>
|
||||||
|
struct and_impl<
|
||||||
|
true
|
||||||
|
, true_, true_, true_, true_
|
||||||
|
>
|
||||||
|
: true_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace aux
|
||||||
|
|
||||||
|
template<
|
||||||
|
typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T1)
|
||||||
|
, typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T2)
|
||||||
|
, typename T3 = true_, typename T4 = true_, typename T5 = true_
|
||||||
|
>
|
||||||
|
struct and_
|
||||||
|
|
||||||
|
: aux::and_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
, T2, T3, T4, T5
|
||||||
|
>
|
||||||
|
|
||||||
|
{
|
||||||
|
BOOST_MPL_AUX_LAMBDA_SUPPORT(
|
||||||
|
5
|
||||||
|
, and_
|
||||||
|
, (T1, T2, T3, T4, T5)
|
||||||
|
)
|
||||||
|
};
|
||||||
|
|
||||||
|
BOOST_MPL_AUX_VOID_SPEC_EXT(
|
||||||
|
2
|
||||||
|
, 5
|
||||||
|
, and_
|
||||||
|
)
|
||||||
|
|
||||||
|
}} // namespace boost::mpl
|
||||||
|
|
@@ -11,7 +11,7 @@ template<
|
|||||||
>
|
>
|
||||||
struct lambda_impl
|
struct lambda_impl
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef T type;
|
typedef T type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -31,13 +31,13 @@ template<
|
|||||||
, bool C5 = false
|
, bool C5 = false
|
||||||
>
|
>
|
||||||
struct lambda_or
|
struct lambda_or
|
||||||
: true_c
|
: true_
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
|
|
||||||
template<>
|
template<>
|
||||||
struct lambda_or< false,false,false,false,false >
|
struct lambda_or< false,false,false,false,false >
|
||||||
: false_c
|
: false_
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -46,7 +46,7 @@ struct lambda_or< false,false,false,false,false >
|
|||||||
template< int N, bool Protect >
|
template< int N, bool Protect >
|
||||||
struct lambda_impl< arg<N>,Protect >
|
struct lambda_impl< arg<N>,Protect >
|
||||||
{
|
{
|
||||||
typedef true_c is_le;
|
typedef true_ is_le;
|
||||||
typedef arg<N> type;
|
typedef arg<N> type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -59,7 +59,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind0<
|
typedef bind0<
|
||||||
F
|
F
|
||||||
> type;
|
> type;
|
||||||
@@ -144,7 +144,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind1<
|
typedef bind1<
|
||||||
F
|
F
|
||||||
, T1
|
, T1
|
||||||
@@ -232,7 +232,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind2<
|
typedef bind2<
|
||||||
F
|
F
|
||||||
, T1, T2
|
, T1, T2
|
||||||
@@ -321,7 +321,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind3<
|
typedef bind3<
|
||||||
F
|
F
|
||||||
, T1, T2, T3
|
, T1, T2, T3
|
||||||
@@ -415,7 +415,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind4<
|
typedef bind4<
|
||||||
F
|
F
|
||||||
, T1, T2, T3, T4
|
, T1, T2, T3, T4
|
||||||
@@ -527,7 +527,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind5<
|
typedef bind5<
|
||||||
F
|
F
|
||||||
, T1, T2, T3, T4, T5
|
, T1, T2, T3, T4, T5
|
||||||
@@ -538,7 +538,7 @@ struct lambda_impl<
|
|||||||
template< typename T, bool Protect >
|
template< typename T, bool Protect >
|
||||||
struct lambda_impl< protect<T>,Protect >
|
struct lambda_impl< protect<T>,Protect >
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef protect<T> type;
|
typedef protect<T> type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -553,7 +553,7 @@ struct lambda_impl<
|
|||||||
, Protect
|
, Protect
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind< F,T1,T2,T3,T4,T5 > type;
|
typedef bind< F,T1,T2,T3,T4,T5 > type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -563,7 +563,7 @@ template<
|
|||||||
>
|
>
|
||||||
struct lambda_impl< bind1st<F,T>,Protect >
|
struct lambda_impl< bind1st<F,T>,Protect >
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind1st< F,T > type;
|
typedef bind1st< F,T > type;
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -573,7 +573,7 @@ template<
|
|||||||
>
|
>
|
||||||
struct lambda_impl< bind2nd<F,T>,Protect >
|
struct lambda_impl< bind2nd<F,T>,Protect >
|
||||||
{
|
{
|
||||||
typedef false_c is_le;
|
typedef false_ is_le;
|
||||||
typedef bind2nd< F,T > type;
|
typedef bind2nd< F,T > type;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
62
include/boost/mpl/aux_/preprocessed/plain/or.hpp
Normal file
62
include/boost/mpl/aux_/preprocessed/plain/or.hpp
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
// preprocessed version of 'boost/mpl/aux_/config/use_preprocessed.hpp' header
|
||||||
|
// see the original for copyright information
|
||||||
|
|
||||||
|
namespace boost { namespace mpl {
|
||||||
|
|
||||||
|
namespace aux {
|
||||||
|
|
||||||
|
template< bool C_, typename T1, typename T2, typename T3, typename T4 >
|
||||||
|
struct or_impl
|
||||||
|
: true_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
template< typename T1, typename T2, typename T3, typename T4 >
|
||||||
|
struct or_impl< false,T1,T2,T3,T4 >
|
||||||
|
: or_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
, T2, T3, T4
|
||||||
|
, false_
|
||||||
|
>
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
template<>
|
||||||
|
struct or_impl<
|
||||||
|
false
|
||||||
|
, false_, false_, false_, false_
|
||||||
|
>
|
||||||
|
: false_
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace aux
|
||||||
|
|
||||||
|
template<
|
||||||
|
typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T1)
|
||||||
|
, typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T2)
|
||||||
|
, typename T3 = false_, typename T4 = false_, typename T5 = false_
|
||||||
|
>
|
||||||
|
struct or_
|
||||||
|
|
||||||
|
: aux::or_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value
|
||||||
|
, T2, T3, T4, T5
|
||||||
|
>
|
||||||
|
|
||||||
|
{
|
||||||
|
BOOST_MPL_AUX_LAMBDA_SUPPORT(
|
||||||
|
5
|
||||||
|
, or_
|
||||||
|
, (T1, T2, T3, T4, T5)
|
||||||
|
)
|
||||||
|
};
|
||||||
|
|
||||||
|
BOOST_MPL_AUX_VOID_SPEC_EXT(
|
||||||
|
2
|
||||||
|
, 5
|
||||||
|
, or_
|
||||||
|
)
|
||||||
|
|
||||||
|
}} // namespace boost::mpl
|
||||||
|
|
@@ -1,54 +0,0 @@
|
|||||||
// preprocessed version of 'boost/mpl/placeholder.hpp' header
|
|
||||||
// see the original for copyright information
|
|
||||||
|
|
||||||
namespace boost {
|
|
||||||
namespace mpl {
|
|
||||||
|
|
||||||
typedef arg< -1 > _;
|
|
||||||
|
|
||||||
namespace placeholder {
|
|
||||||
using boost::mpl::_;
|
|
||||||
}
|
|
||||||
|
|
||||||
// agurt, 17/mar/02: one more placeholder for the last 'apply#'
|
|
||||||
// specialization
|
|
||||||
|
|
||||||
typedef arg<1> _1;
|
|
||||||
|
|
||||||
namespace placeholder {
|
|
||||||
using boost::mpl::_1;
|
|
||||||
}
|
|
||||||
|
|
||||||
typedef arg<2> _2;
|
|
||||||
|
|
||||||
namespace placeholder {
|
|
||||||
using boost::mpl::_2;
|
|
||||||
}
|
|
||||||
|
|
||||||
typedef arg<3> _3;
|
|
||||||
|
|
||||||
namespace placeholder {
|
|
||||||
using boost::mpl::_3;
|
|
||||||
}
|
|
||||||
|
|
||||||
typedef arg<4> _4;
|
|
||||||
|
|
||||||
namespace placeholder {
|
|
||||||
using boost::mpl::_4;
|
|
||||||
}
|
|
||||||
|
|
||||||
typedef arg<5> _5;
|
|
||||||
|
|
||||||
namespace placeholder {
|
|
||||||
using boost::mpl::_5;
|
|
||||||
}
|
|
||||||
|
|
||||||
typedef arg<6> _6;
|
|
||||||
|
|
||||||
namespace placeholder {
|
|
||||||
using boost::mpl::_6;
|
|
||||||
}
|
|
||||||
|
|
||||||
} // namespace mpl
|
|
||||||
} // namespace boost
|
|
||||||
|
|
54
include/boost/mpl/aux_/preprocessed/plain/placeholders.hpp
Normal file
54
include/boost/mpl/aux_/preprocessed/plain/placeholders.hpp
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
// preprocessed version of 'boost/mpl/aux_/config/use_preprocessed.hpp' header
|
||||||
|
// see the original for copyright information
|
||||||
|
|
||||||
|
namespace boost {
|
||||||
|
namespace mpl {
|
||||||
|
|
||||||
|
typedef arg< -1 > _;
|
||||||
|
|
||||||
|
namespace placeholders {
|
||||||
|
using boost::mpl::_;
|
||||||
|
}
|
||||||
|
|
||||||
|
// agurt, 17/mar/02: one more placeholder for the last 'apply#'
|
||||||
|
// specialization
|
||||||
|
|
||||||
|
typedef arg<1> _1;
|
||||||
|
|
||||||
|
namespace placeholders {
|
||||||
|
using boost::mpl::_1;
|
||||||
|
}
|
||||||
|
|
||||||
|
typedef arg<2> _2;
|
||||||
|
|
||||||
|
namespace placeholders {
|
||||||
|
using boost::mpl::_2;
|
||||||
|
}
|
||||||
|
|
||||||
|
typedef arg<3> _3;
|
||||||
|
|
||||||
|
namespace placeholders {
|
||||||
|
using boost::mpl::_3;
|
||||||
|
}
|
||||||
|
|
||||||
|
typedef arg<4> _4;
|
||||||
|
|
||||||
|
namespace placeholders {
|
||||||
|
using boost::mpl::_4;
|
||||||
|
}
|
||||||
|
|
||||||
|
typedef arg<5> _5;
|
||||||
|
|
||||||
|
namespace placeholders {
|
||||||
|
using boost::mpl::_5;
|
||||||
|
}
|
||||||
|
|
||||||
|
typedef arg<6> _6;
|
||||||
|
|
||||||
|
namespace placeholders {
|
||||||
|
using boost::mpl::_6;
|
||||||
|
}
|
||||||
|
|
||||||
|
} // namespace mpl
|
||||||
|
} // namespace boost
|
||||||
|
|
@@ -18,7 +18,7 @@
|
|||||||
#define BOOST_MPL_AUX_RANGE_C_EMPTY_HPP_INCLUDED
|
#define BOOST_MPL_AUX_RANGE_C_EMPTY_HPP_INCLUDED
|
||||||
|
|
||||||
#include "boost/mpl/empty_fwd.hpp"
|
#include "boost/mpl/empty_fwd.hpp"
|
||||||
#include "boost/mpl/comparison/equal_to.hpp"
|
#include "boost/mpl/equal_to.hpp"
|
||||||
#include "boost/mpl/aux_/range_c/tag.hpp"
|
#include "boost/mpl/aux_/range_c/tag.hpp"
|
||||||
|
|
||||||
namespace boost {
|
namespace boost {
|
||||||
|
@@ -18,8 +18,8 @@
|
|||||||
#define BOOST_MPL_AUX_RANGE_C_ITERATOR_HPP_INCLUDED
|
#define BOOST_MPL_AUX_RANGE_C_ITERATOR_HPP_INCLUDED
|
||||||
|
|
||||||
#include "boost/mpl/iterator_tag.hpp"
|
#include "boost/mpl/iterator_tag.hpp"
|
||||||
#include "boost/mpl/arithmetic/plus.hpp"
|
#include "boost/mpl/plus.hpp"
|
||||||
#include "boost/mpl/arithmetic/minus.hpp"
|
#include "boost/mpl/minus.hpp"
|
||||||
#include "boost/mpl/aux_/iterator_names.hpp"
|
#include "boost/mpl/aux_/iterator_names.hpp"
|
||||||
|
|
||||||
namespace boost {
|
namespace boost {
|
||||||
|
@@ -18,7 +18,7 @@
|
|||||||
#define BOOST_MPL_AUX_RANGE_C_SIZE_HPP_INCLUDED
|
#define BOOST_MPL_AUX_RANGE_C_SIZE_HPP_INCLUDED
|
||||||
|
|
||||||
#include "boost/mpl/size_fwd.hpp"
|
#include "boost/mpl/size_fwd.hpp"
|
||||||
#include "boost/mpl/arithmetic/minus.hpp"
|
#include "boost/mpl/minus.hpp"
|
||||||
#include "boost/mpl/aux_/range_c/tag.hpp"
|
#include "boost/mpl/aux_/range_c/tag.hpp"
|
||||||
|
|
||||||
namespace boost {
|
namespace boost {
|
||||||
|
@@ -18,9 +18,9 @@
|
|||||||
#define BOOST_MPL_AUX_SINGLE_ELEMENT_ITER_HPP_INCLUDED
|
#define BOOST_MPL_AUX_SINGLE_ELEMENT_ITER_HPP_INCLUDED
|
||||||
|
|
||||||
#include "boost/mpl/iterator_tag.hpp"
|
#include "boost/mpl/iterator_tag.hpp"
|
||||||
#include "boost/mpl/arithmetic/plus.hpp"
|
#include "boost/mpl/plus.hpp"
|
||||||
#include "boost/mpl/arithmetic/minus.hpp"
|
#include "boost/mpl/minus.hpp"
|
||||||
#include "boost/mpl/int_c.hpp"
|
#include "boost/mpl/int.hpp"
|
||||||
#include "boost/mpl/aux_/value_wknd.hpp"
|
#include "boost/mpl/aux_/value_wknd.hpp"
|
||||||
#include "boost/mpl/aux_/iterator_names.hpp"
|
#include "boost/mpl/aux_/iterator_names.hpp"
|
||||||
#include "boost/mpl/aux_/lambda_spec.hpp"
|
#include "boost/mpl/aux_/lambda_spec.hpp"
|
||||||
@@ -39,12 +39,12 @@ template< typename T, BOOST_MPL_AUX_NTTP_DECL(int, N) >
|
|||||||
struct single_iter_base
|
struct single_iter_base
|
||||||
{
|
{
|
||||||
typedef ra_iter_tag_ category;
|
typedef ra_iter_tag_ category;
|
||||||
typedef int_c<N> position;
|
typedef int_<N> position;
|
||||||
|
|
||||||
template< typename D >
|
template< typename D >
|
||||||
struct BOOST_MPL_AUX_ITERATOR_ADVANCE
|
struct BOOST_MPL_AUX_ITERATOR_ADVANCE
|
||||||
{
|
{
|
||||||
typedef plus< int_c<N>,D > n_;
|
typedef plus< int_<N>,D > n_;
|
||||||
typedef single_element_iter<
|
typedef single_element_iter<
|
||||||
T
|
T
|
||||||
, BOOST_MPL_AUX_VALUE_WKND(n_)::value
|
, BOOST_MPL_AUX_VALUE_WKND(n_)::value
|
||||||
@@ -56,7 +56,7 @@ struct single_iter_base
|
|||||||
{
|
{
|
||||||
typedef typename minus<
|
typedef typename minus<
|
||||||
typename U::position
|
typename U::position
|
||||||
, int_c<N>
|
, int_<N>
|
||||||
>::type type;
|
>::type type;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@@ -22,7 +22,7 @@
|
|||||||
#if defined(__BORLANDC__) && (__BORLANDC__ <= 0x561 || !defined(BOOST_STRICT_CONFIG)) \
|
#if defined(__BORLANDC__) && (__BORLANDC__ <= 0x561 || !defined(BOOST_STRICT_CONFIG)) \
|
||||||
|| defined(BOOST_MPL_MSVC_60_ETI_BUG)
|
|| defined(BOOST_MPL_MSVC_60_ETI_BUG)
|
||||||
|
|
||||||
# include "boost/mpl/int_c.hpp"
|
# include "boost/mpl/int.hpp"
|
||||||
|
|
||||||
namespace boost { namespace mpl { namespace aux {
|
namespace boost { namespace mpl { namespace aux {
|
||||||
|
|
||||||
@@ -35,7 +35,7 @@ struct value_wknd
|
|||||||
#if defined(BOOST_MPL_MSVC_60_ETI_BUG)
|
#if defined(BOOST_MPL_MSVC_60_ETI_BUG)
|
||||||
template<>
|
template<>
|
||||||
struct value_wknd<int>
|
struct value_wknd<int>
|
||||||
: int_c<0>
|
: int_<0>
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
@@ -28,7 +28,7 @@
|
|||||||
#include "boost/mpl/aux_/config/static_constant.hpp"
|
#include "boost/mpl/aux_/config/static_constant.hpp"
|
||||||
|
|
||||||
#if !defined(BOOST_MPL_PREPROCESSING_MODE)
|
#if !defined(BOOST_MPL_PREPROCESSING_MODE)
|
||||||
# include "boost/mpl/placeholder.hpp"
|
# include "boost/mpl/placeholders.hpp"
|
||||||
# include "boost/mpl/void.hpp"
|
# include "boost/mpl/void.hpp"
|
||||||
# include "boost/mpl/protect.hpp"
|
# include "boost/mpl/protect.hpp"
|
||||||
# include "boost/mpl/limits/arity.hpp"
|
# include "boost/mpl/limits/arity.hpp"
|
||||||
|
71
include/boost/mpl/bitand.hpp
Normal file
71
include/boost/mpl/bitand.hpp
Normal file
@@ -0,0 +1,71 @@
|
|||||||
|
|
||||||
|
#ifndef BOOST_MPL_BITAND_HPP_INCLUDED
|
||||||
|
#define BOOST_MPL_BITAND_HPP_INCLUDED
|
||||||
|
|
||||||
|
// + file: boost/mpl/bitand.hpp
|
||||||
|
// + last modified: 25/feb/03
|
||||||
|
|
||||||
|
// Copyright (c) 2000-03
|
||||||
|
// Aleksey Gurtovoy, Jaap Suter
|
||||||
|
//
|
||||||
|
// Permission to use, copy, modify, distribute and sell this software
|
||||||
|
// and its documentation for any purpose is hereby granted without fee,
|
||||||
|
// provided that the above copyright notice appears in all copies and
|
||||||
|
// that both the copyright notice and this permission notice appear in
|
||||||
|
// supporting documentation. No representations are made about the
|
||||||
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
|
// without express or implied warranty.
|
||||||
|
//
|
||||||
|
// See http://www.boost.org/libs/mpl for documentation.
|
||||||
|
|
||||||
|
#include "boost/mpl/integral_c.hpp"
|
||||||
|
#include "boost/mpl/aux_/typeof.hpp"
|
||||||
|
#include "boost/mpl/aux_/value_wknd.hpp"
|
||||||
|
#include "boost/mpl/aux_/void_spec.hpp"
|
||||||
|
#include "boost/mpl/aux_/lambda_support.hpp"
|
||||||
|
#include "boost/config.hpp"
|
||||||
|
|
||||||
|
namespace boost {
|
||||||
|
namespace mpl {
|
||||||
|
|
||||||
|
template<
|
||||||
|
typename T, T N1, T N2, T N3 = 0xFFFFFFFF, T N4 = 0xFFFFFFFF, T N5 = 0xFFFFFFFF
|
||||||
|
>
|
||||||
|
struct bitand_c
|
||||||
|
{
|
||||||
|
BOOST_STATIC_CONSTANT(T, value = (N1 & N2 & N3 & N4 & N5));
|
||||||
|
#if !defined(__BORLANDC__)
|
||||||
|
typedef integral_c<T,value> type;
|
||||||
|
#else
|
||||||
|
typedef integral_c<T,(N1 & N2 & N3 & N4 & N5)> type;
|
||||||
|
#endif
|
||||||
|
};
|
||||||
|
|
||||||
|
template<
|
||||||
|
typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T1)
|
||||||
|
, typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T2)
|
||||||
|
, typename T3 = integral_c<int,0xFFFFFFFF>
|
||||||
|
, typename T4 = integral_c<int,0xFFFFFFFF>
|
||||||
|
, typename T5 = integral_c<int,0xFFFFFFFF>
|
||||||
|
>
|
||||||
|
struct bitand_
|
||||||
|
: bitand_c<
|
||||||
|
BOOST_MPL_AUX_TYPEOF(T1,
|
||||||
|
T1::value & T2::value & T3::value & T4::value & T5::value
|
||||||
|
)
|
||||||
|
, BOOST_MPL_AUX_MSVC_VALUE_WKND(T1)::value
|
||||||
|
, BOOST_MPL_AUX_MSVC_VALUE_WKND(T2)::value
|
||||||
|
, BOOST_MPL_AUX_MSVC_VALUE_WKND(T3)::value
|
||||||
|
, BOOST_MPL_AUX_MSVC_VALUE_WKND(T4)::value
|
||||||
|
, BOOST_MPL_AUX_MSVC_VALUE_WKND(T5)::value
|
||||||
|
>
|
||||||
|
{
|
||||||
|
BOOST_MPL_AUX_LAMBDA_SUPPORT(5, bitand_, (T1,T2,T3,T4,T5))
|
||||||
|
};
|
||||||
|
|
||||||
|
BOOST_MPL_AUX_VOID_SPEC_EXT(2,5,bitand_)
|
||||||
|
|
||||||
|
} // namespace mpl
|
||||||
|
} // namespace boost
|
||||||
|
|
||||||
|
#endif // BOOST_MPL_BITAND_HPP_INCLUDED
|
71
include/boost/mpl/bitor.hpp
Normal file
71
include/boost/mpl/bitor.hpp
Normal file
@@ -0,0 +1,71 @@
|
|||||||
|
|
||||||
|
#ifndef BOOST_MPL_BITOR_HPP_INCLUDED
|
||||||
|
#define BOOST_MPL_BITOR_HPP_INCLUDED
|
||||||
|
|
||||||
|
// + file: boost/mpl/bitor.hpp
|
||||||
|
// + last modified: 25/feb/03
|
||||||
|
|
||||||
|
// Copyright (c) 2000-03
|
||||||
|
// Aleksey Gurtovoy, Jaap Suter
|
||||||
|
//
|
||||||
|
// Permission to use, copy, modify, distribute and sell this software
|
||||||
|
// and its documentation for any purpose is hereby granted without fee,
|
||||||
|
// provided that the above copyright notice appears in all copies and
|
||||||
|
// that both the copyright notice and this permission notice appear in
|
||||||
|
// supporting documentation. No representations are made about the
|
||||||
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
|
// without express or implied warranty.
|
||||||
|
//
|
||||||
|
// See http://www.boost.org/libs/mpl for documentation.
|
||||||
|
|
||||||
|
#include "boost/mpl/integral_c.hpp"
|
||||||
|
#include "boost/mpl/aux_/typeof.hpp"
|
||||||
|
#include "boost/mpl/aux_/value_wknd.hpp"
|
||||||
|
#include "boost/mpl/aux_/void_spec.hpp"
|
||||||
|
#include "boost/mpl/aux_/lambda_support.hpp"
|
||||||
|
#include "boost/config.hpp"
|
||||||
|
|
||||||
|
namespace boost {
|
||||||
|
namespace mpl {
|
||||||
|
|
||||||
|
template<
|
||||||
|
typename T, T N1, T N2, T N3 = 0, T N4 = 0, T N5 = 0
|
||||||
|
>
|
||||||
|
struct bitor_c
|
||||||
|
{
|
||||||
|
BOOST_STATIC_CONSTANT(T, value = (N1 | N2 | N3 | N4 | N5));
|
||||||
|
#if !defined(__BORLANDC__)
|
||||||
|
typedef integral_c<T,value> type;
|
||||||
|
#else
|
||||||
|
typedef integral_c<T,(N1 | N2 | N3 | N4 | N5)> type;
|
||||||
|
#endif
|
||||||
|
};
|
||||||
|
|
||||||
|
template<
|
||||||
|
typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T1)
|
||||||
|
, typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T2)
|
||||||
|
, typename T3 = integral_c<int,0xFFFFFFFF>
|
||||||
|
, typename T4 = integral_c<int,0xFFFFFFFF>
|
||||||
|
, typename T5 = integral_c<int,0xFFFFFFFF>
|
||||||
|
>
|
||||||
|
struct bitor_
|
||||||
|
: bitor_c<
|
||||||
|
BOOST_MPL_AUX_TYPEOF(T1,
|
||||||
|
T1::value | T2::value | T3::value | T4::value | T5::value
|
||||||
|
)
|
||||||
|
, BOOST_MPL_AUX_MSVC_VALUE_WKND(T1)::value
|
||||||
|
, BOOST_MPL_AUX_MSVC_VALUE_WKND(T2)::value
|
||||||
|
, BOOST_MPL_AUX_MSVC_VALUE_WKND(T3)::value
|
||||||
|
, BOOST_MPL_AUX_MSVC_VALUE_WKND(T4)::value
|
||||||
|
, BOOST_MPL_AUX_MSVC_VALUE_WKND(T5)::value
|
||||||
|
>
|
||||||
|
{
|
||||||
|
BOOST_MPL_AUX_LAMBDA_SUPPORT(5, bitor_, (T1,T2,T3,T4,T5))
|
||||||
|
};
|
||||||
|
|
||||||
|
BOOST_MPL_AUX_VOID_SPEC_EXT(2,5,bitor_)
|
||||||
|
|
||||||
|
} // namespace mpl
|
||||||
|
} // namespace boost
|
||||||
|
|
||||||
|
#endif // BOOST_MPL_BITOR_HPP_INCLUDED
|
71
include/boost/mpl/bitxor.hpp
Normal file
71
include/boost/mpl/bitxor.hpp
Normal file
@@ -0,0 +1,71 @@
|
|||||||
|
|
||||||
|
#ifndef BOOST_MPL_BITXOR_HPP_INCLUDED
|
||||||
|
#define BOOST_MPL_BITXOR_HPP_INCLUDED
|
||||||
|
|
||||||
|
// + file: boost/mpl/bitxor.hpp
|
||||||
|
// + last modified: 25/feb/03
|
||||||
|
|
||||||
|
// Copyright (c) 2000-03
|
||||||
|
// Aleksey Gurtovoy, Jaap Suter
|
||||||
|
//
|
||||||
|
// Permission to use, copy, modify, distribute and sell this software
|
||||||
|
// and its documentation for any purpose is hereby granted without fee,
|
||||||
|
// provided that the above copyright notice appears in all copies and
|
||||||
|
// that both the copyright notice and this permission notice appear in
|
||||||
|
// supporting documentation. No representations are made about the
|
||||||
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
|
// without express or implied warranty.
|
||||||
|
//
|
||||||
|
// See http://www.boost.org/libs/mpl for documentation.
|
||||||
|
|
||||||
|
#include "boost/mpl/integral_c.hpp"
|
||||||
|
#include "boost/mpl/aux_/typeof.hpp"
|
||||||
|
#include "boost/mpl/aux_/value_wknd.hpp"
|
||||||
|
#include "boost/mpl/aux_/void_spec.hpp"
|
||||||
|
#include "boost/mpl/aux_/lambda_support.hpp"
|
||||||
|
#include "boost/config.hpp"
|
||||||
|
|
||||||
|
namespace boost {
|
||||||
|
namespace mpl {
|
||||||
|
|
||||||
|
template<
|
||||||
|
typename T, T N1, T N2, T N3 = 0, T N4 = 0, T N5 = 0
|
||||||
|
>
|
||||||
|
struct bitxor_c
|
||||||
|
{
|
||||||
|
BOOST_STATIC_CONSTANT(T, value = (N1 ^ N2 ^ N3 ^ N4 ^ N5));
|
||||||
|
#if !defined(__BORLANDC__)
|
||||||
|
typedef integral_c<T,value> type;
|
||||||
|
#else
|
||||||
|
typedef integral_c<T,(N1 ^ N2 ^ N3 ^ N4 ^ N5)> type;
|
||||||
|
#endif
|
||||||
|
};
|
||||||
|
|
||||||
|
template<
|
||||||
|
typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T1)
|
||||||
|
, typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T2)
|
||||||
|
, typename T3 = integral_c<int,0>
|
||||||
|
, typename T4 = integral_c<int,0>
|
||||||
|
, typename T5 = integral_c<int,0>
|
||||||
|
>
|
||||||
|
struct bitxor_
|
||||||
|
: bitxor_c<
|
||||||
|
BOOST_MPL_AUX_TYPEOF(T1,
|
||||||
|
T1::value ^ T2::value ^ T3::value ^ T4::value ^ T5::value
|
||||||
|
)
|
||||||
|
, BOOST_MPL_AUX_MSVC_VALUE_WKND(T1)::value
|
||||||
|
, BOOST_MPL_AUX_MSVC_VALUE_WKND(T2)::value
|
||||||
|
, BOOST_MPL_AUX_MSVC_VALUE_WKND(T3)::value
|
||||||
|
, BOOST_MPL_AUX_MSVC_VALUE_WKND(T4)::value
|
||||||
|
, BOOST_MPL_AUX_MSVC_VALUE_WKND(T5)::value
|
||||||
|
>
|
||||||
|
{
|
||||||
|
BOOST_MPL_AUX_LAMBDA_SUPPORT(5, bitxor_, (T1,T2,T3,T4,T5))
|
||||||
|
};
|
||||||
|
|
||||||
|
BOOST_MPL_AUX_VOID_SPEC_EXT(2,5,bitxor_)
|
||||||
|
|
||||||
|
} // namespace mpl
|
||||||
|
} // namespace boost
|
||||||
|
|
||||||
|
#endif // BOOST_MPL_BITXOR_HPP_INCLUDED
|
39
include/boost/mpl/bool.hpp
Normal file
39
include/boost/mpl/bool.hpp
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
|
||||||
|
#ifndef BOOST_MPL_BOOL_HPP_INCLUDED
|
||||||
|
#define BOOST_MPL_BOOL_HPP_INCLUDED
|
||||||
|
|
||||||
|
// + file: boost/mpl/bool.hpp
|
||||||
|
// + last modified: 25/feb/03
|
||||||
|
|
||||||
|
// Copyright (c) 2000-03
|
||||||
|
// Aleksey Gurtovoy
|
||||||
|
//
|
||||||
|
// Permission to use, copy, modify, distribute and sell this software
|
||||||
|
// and its documentation for any purpose is hereby granted without fee,
|
||||||
|
// provided that the above copyright notice appears in all copies and
|
||||||
|
// that both the copyright notice and this permission notice appear in
|
||||||
|
// supporting documentation. No representations are made about the
|
||||||
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
|
// without express or implied warranty.
|
||||||
|
//
|
||||||
|
// See http://www.boost.org/libs/mpl for documentation.
|
||||||
|
|
||||||
|
#include "boost/mpl/aux_/config/static_constant.hpp"
|
||||||
|
|
||||||
|
namespace boost { namespace mpl {
|
||||||
|
|
||||||
|
template< bool C_ > struct bool_
|
||||||
|
{
|
||||||
|
BOOST_STATIC_CONSTANT(bool, value = C_);
|
||||||
|
typedef bool_ type;
|
||||||
|
typedef bool value_type;
|
||||||
|
operator bool() const { return this->value; }
|
||||||
|
};
|
||||||
|
|
||||||
|
// shorcuts
|
||||||
|
typedef bool_<true> true_;
|
||||||
|
typedef bool_<false> false_;
|
||||||
|
|
||||||
|
}} // namespace boost::mpl
|
||||||
|
|
||||||
|
#endif // BOOST_MPL_BOOL_HPP_INCLUDED
|
@@ -1,9 +1,11 @@
|
|||||||
//-----------------------------------------------------------------------------
|
|
||||||
// boost mpl/comparison.hpp header file
|
#ifndef BOOST_MPL_COMPARISON_HPP_INCLUDED
|
||||||
// See http://www.boost.org for updates, documentation, and revision history.
|
#define BOOST_MPL_COMPARISON_HPP_INCLUDED
|
||||||
//-----------------------------------------------------------------------------
|
|
||||||
//
|
// + file: boost/mpl/comparison.hpp
|
||||||
// Copyright (c) 2000-02
|
// + last modified: 25/feb/03
|
||||||
|
|
||||||
|
// Copyright (c) 2000-03
|
||||||
// Aleksey Gurtovoy
|
// Aleksey Gurtovoy
|
||||||
//
|
//
|
||||||
// Permission to use, copy, modify, distribute and sell this software
|
// Permission to use, copy, modify, distribute and sell this software
|
||||||
@@ -13,15 +15,14 @@
|
|||||||
// supporting documentation. No representations are made about the
|
// supporting documentation. No representations are made about the
|
||||||
// suitability of this software for any purpose. It is provided "as is"
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
// without express or implied warranty.
|
// without express or implied warranty.
|
||||||
|
//
|
||||||
|
// See http://www.boost.org/libs/mpl for documentation.
|
||||||
|
|
||||||
#ifndef BOOST_MPL_COMPARISON_HPP_INCLUDED
|
#include "boost/mpl/equal_to.hpp"
|
||||||
#define BOOST_MPL_COMPARISON_HPP_INCLUDED
|
#include "boost/mpl/not_equal_to.hpp"
|
||||||
|
#include "boost/mpl/less.hpp"
|
||||||
#include "boost/mpl/comparison/equal_to.hpp"
|
#include "boost/mpl/greater.hpp"
|
||||||
#include "boost/mpl/comparison/not_equal_to.hpp"
|
#include "boost/mpl/less_equal.hpp"
|
||||||
#include "boost/mpl/comparison/less.hpp"
|
#include "boost/mpl/greater_equal.hpp"
|
||||||
#include "boost/mpl/comparison/greater.hpp"
|
|
||||||
#include "boost/mpl/comparison/less_equal.hpp"
|
|
||||||
#include "boost/mpl/comparison/greater_equal.hpp"
|
|
||||||
|
|
||||||
#endif // BOOST_MPL_COMPARISON_HPP_INCLUDED
|
#endif // BOOST_MPL_COMPARISON_HPP_INCLUDED
|
||||||
|
@@ -19,7 +19,7 @@
|
|||||||
|
|
||||||
#include "boost/mpl/begin_end.hpp"
|
#include "boost/mpl/begin_end.hpp"
|
||||||
#include "boost/mpl/find.hpp"
|
#include "boost/mpl/find.hpp"
|
||||||
#include "boost/mpl/logical/not.hpp"
|
#include "boost/mpl/not.hpp"
|
||||||
#include "boost/mpl/aux_/void_spec.hpp"
|
#include "boost/mpl/aux_/void_spec.hpp"
|
||||||
#include "boost/mpl/aux_/lambda_support.hpp"
|
#include "boost/mpl/aux_/lambda_support.hpp"
|
||||||
#include "boost/type_traits/is_same.hpp"
|
#include "boost/type_traits/is_same.hpp"
|
||||||
@@ -32,7 +32,7 @@ template<
|
|||||||
, typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T)
|
, typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T)
|
||||||
>
|
>
|
||||||
struct contains
|
struct contains
|
||||||
: logical_not< is_same<
|
: not_< is_same<
|
||||||
typename find<Sequence,T>::type
|
typename find<Sequence,T>::type
|
||||||
, typename end<Sequence>::type
|
, typename end<Sequence>::type
|
||||||
> >
|
> >
|
||||||
|
@@ -1,9 +1,11 @@
|
|||||||
//-----------------------------------------------------------------------------
|
|
||||||
// boost mpl/arithmetic/divides.hpp header file
|
#ifndef BOOST_MPL_DIVIDES_HPP_INCLUDED
|
||||||
// See http://www.boost.org for updates, documentation, and revision history.
|
#define BOOST_MPL_DIVIDES_HPP_INCLUDED
|
||||||
//-----------------------------------------------------------------------------
|
|
||||||
//
|
// + file: boost/mpl/divides.hpp
|
||||||
// Copyright (c) 2000/02
|
// + last modified: 25/feb/03
|
||||||
|
|
||||||
|
// Copyright (c) 2000-03
|
||||||
// Aleksey Gurtovoy
|
// Aleksey Gurtovoy
|
||||||
//
|
//
|
||||||
// Permission to use, copy, modify, distribute and sell this software
|
// Permission to use, copy, modify, distribute and sell this software
|
||||||
@@ -13,9 +15,8 @@
|
|||||||
// supporting documentation. No representations are made about the
|
// supporting documentation. No representations are made about the
|
||||||
// suitability of this software for any purpose. It is provided "as is"
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
// without express or implied warranty.
|
// without express or implied warranty.
|
||||||
|
//
|
||||||
#ifndef BOOST_MPL_ARITHMETIC_DIVIDES_HPP_INCLUDED
|
// See http://www.boost.org/libs/mpl for documentation.
|
||||||
#define BOOST_MPL_ARITHMETIC_DIVIDES_HPP_INCLUDED
|
|
||||||
|
|
||||||
#include "boost/mpl/integral_c.hpp"
|
#include "boost/mpl/integral_c.hpp"
|
||||||
#include "boost/mpl/aux_/typeof.hpp"
|
#include "boost/mpl/aux_/typeof.hpp"
|
||||||
@@ -75,4 +76,4 @@ BOOST_MPL_AUX_VOID_SPEC_EXT(2,5,divides)
|
|||||||
} // namespace mpl
|
} // namespace mpl
|
||||||
} // namespace boost
|
} // namespace boost
|
||||||
|
|
||||||
#endif // BOOST_MPL_ARITHMETIC_DIVIDES_HPP_INCLUDED
|
#endif // BOOST_MPL_DIVIDES_HPP_INCLUDED
|
@@ -18,7 +18,7 @@
|
|||||||
#define BOOST_MPL_EMPTY_BASE_HPP_INCLUDED
|
#define BOOST_MPL_EMPTY_BASE_HPP_INCLUDED
|
||||||
|
|
||||||
#include "boost/type_traits/is_empty.hpp"
|
#include "boost/type_traits/is_empty.hpp"
|
||||||
#include "boost/mpl/bool_c.hpp"
|
#include "boost/mpl/bool.hpp"
|
||||||
#include "boost/config.hpp"
|
#include "boost/config.hpp"
|
||||||
|
|
||||||
// should be always the last #include directive
|
// should be always the last #include directive
|
||||||
@@ -34,19 +34,19 @@ struct empty_base {};
|
|||||||
|
|
||||||
template< typename T >
|
template< typename T >
|
||||||
struct is_empty_base
|
struct is_empty_base
|
||||||
: false_c
|
: false_
|
||||||
{
|
{
|
||||||
#if defined(BOOST_MSVC) && BOOST_MSVC < 1300
|
#if defined(BOOST_MSVC) && BOOST_MSVC < 1300
|
||||||
using false_c::value;
|
using false_::value;
|
||||||
#endif
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
template<>
|
template<>
|
||||||
struct is_empty_base<empty_base>
|
struct is_empty_base<empty_base>
|
||||||
: true_c
|
: true_
|
||||||
{
|
{
|
||||||
#if defined(BOOST_MSVC) && BOOST_MSVC < 1300
|
#if defined(BOOST_MSVC) && BOOST_MSVC < 1300
|
||||||
using true_c::value;
|
using true_::value;
|
||||||
#endif
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@@ -19,12 +19,12 @@
|
|||||||
|
|
||||||
#include "boost/mpl/aux_/iter_fold_if_impl.hpp"
|
#include "boost/mpl/aux_/iter_fold_if_impl.hpp"
|
||||||
#include "boost/mpl/aux_/iter_apply.hpp"
|
#include "boost/mpl/aux_/iter_apply.hpp"
|
||||||
#include "boost/mpl/logical/and.hpp"
|
#include "boost/mpl/and.hpp"
|
||||||
#include "boost/mpl/logical/not.hpp"
|
#include "boost/mpl/not.hpp"
|
||||||
#include "boost/mpl/begin_end.hpp"
|
#include "boost/mpl/begin_end.hpp"
|
||||||
#include "boost/mpl/next.hpp"
|
#include "boost/mpl/next.hpp"
|
||||||
#include "boost/mpl/always.hpp"
|
#include "boost/mpl/always.hpp"
|
||||||
#include "boost/mpl/bool_c.hpp"
|
#include "boost/mpl/bool.hpp"
|
||||||
#include "boost/mpl/lambda.hpp"
|
#include "boost/mpl/lambda.hpp"
|
||||||
#include "boost/mpl/bind.hpp"
|
#include "boost/mpl/bind.hpp"
|
||||||
#include "boost/mpl/apply.hpp"
|
#include "boost/mpl/apply.hpp"
|
||||||
@@ -51,9 +51,9 @@ struct equal_pred
|
|||||||
>
|
>
|
||||||
struct apply
|
struct apply
|
||||||
{
|
{
|
||||||
typedef typename logical_and<
|
typedef typename and_<
|
||||||
logical_not< is_same<Iterator1,LastIterator1> >
|
not_< is_same<Iterator1,LastIterator1> >
|
||||||
, logical_not< is_same<Iterator2,LastIterator2> >
|
, not_< is_same<Iterator2,LastIterator2> >
|
||||||
, aux::iter_apply2<Predicate,Iterator1,Iterator2>
|
, aux::iter_apply2<Predicate,Iterator1,Iterator2>
|
||||||
>::type type;
|
>::type type;
|
||||||
};
|
};
|
||||||
@@ -81,12 +81,12 @@ struct equal
|
|||||||
, next<>
|
, next<>
|
||||||
, aux::equal_pred<pred_,last1_,last2_>
|
, aux::equal_pred<pred_,last1_,last2_>
|
||||||
, void_
|
, void_
|
||||||
, always<false_c>
|
, always<false_>
|
||||||
> fold_;
|
> fold_;
|
||||||
|
|
||||||
typedef typename fold_::iterator iter1_;
|
typedef typename fold_::iterator iter1_;
|
||||||
typedef typename fold_::state iter2_;
|
typedef typename fold_::state iter2_;
|
||||||
typedef logical_and<
|
typedef and_<
|
||||||
is_same<iter1_,last1_>
|
is_same<iter1_,last1_>
|
||||||
, is_same<iter2_,last2_>
|
, is_same<iter2_,last2_>
|
||||||
> result_;
|
> result_;
|
||||||
|
@@ -1,9 +1,11 @@
|
|||||||
//-----------------------------------------------------------------------------
|
|
||||||
// boost mpl/comparison/equal_to.hpp header file
|
#ifndef BOOST_MPL_EQUAL_TO_HPP_INCLUDED
|
||||||
// See http://www.boost.org for updates, documentation, and revision history.
|
#define BOOST_MPL_EQUAL_TO_HPP_INCLUDED
|
||||||
//-----------------------------------------------------------------------------
|
|
||||||
//
|
// + file: boost/mpl/equal_to.hpp
|
||||||
// Copyright (c) 2000-02
|
// + last modified: 25/feb/03
|
||||||
|
|
||||||
|
// Copyright (c) 2000-03
|
||||||
// Aleksey Gurtovoy
|
// Aleksey Gurtovoy
|
||||||
//
|
//
|
||||||
// Permission to use, copy, modify, distribute and sell this software
|
// Permission to use, copy, modify, distribute and sell this software
|
||||||
@@ -13,11 +15,10 @@
|
|||||||
// supporting documentation. No representations are made about the
|
// supporting documentation. No representations are made about the
|
||||||
// suitability of this software for any purpose. It is provided "as is"
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
// without express or implied warranty.
|
// without express or implied warranty.
|
||||||
|
//
|
||||||
|
// See http://www.boost.org/libs/mpl for documentation.
|
||||||
|
|
||||||
#ifndef BOOST_MPL_COMPARISON_EQUAL_TO_HPP_INCLUDED
|
#include "boost/mpl/bool.hpp"
|
||||||
#define BOOST_MPL_COMPARISON_EQUAL_TO_HPP_INCLUDED
|
|
||||||
|
|
||||||
#include "boost/mpl/bool_c.hpp"
|
|
||||||
#include "boost/mpl/integral_c.hpp"
|
#include "boost/mpl/integral_c.hpp"
|
||||||
#include "boost/mpl/aux_/value_wknd.hpp"
|
#include "boost/mpl/aux_/value_wknd.hpp"
|
||||||
#include "boost/mpl/aux_/void_spec.hpp"
|
#include "boost/mpl/aux_/void_spec.hpp"
|
||||||
@@ -39,9 +40,9 @@ struct equal_to
|
|||||||
));
|
));
|
||||||
|
|
||||||
#if !defined(__BORLANDC__)
|
#if !defined(__BORLANDC__)
|
||||||
typedef bool_c<value> type;
|
typedef bool_<value> type;
|
||||||
#else
|
#else
|
||||||
typedef bool_c<(
|
typedef bool_<(
|
||||||
BOOST_MPL_AUX_VALUE_WKND(T1)::value
|
BOOST_MPL_AUX_VALUE_WKND(T1)::value
|
||||||
== BOOST_MPL_AUX_VALUE_WKND(T2)::value
|
== BOOST_MPL_AUX_VALUE_WKND(T2)::value
|
||||||
)> type;
|
)> type;
|
||||||
@@ -69,4 +70,4 @@ struct eq
|
|||||||
} // namespace mpl
|
} // namespace mpl
|
||||||
} // namespace boost
|
} // namespace boost
|
||||||
|
|
||||||
#endif // BOOST_MPL_COMPARISON_EQUAL_TO_HPP_INCLUDED
|
#endif // BOOST_MPL_EQUAL_TO_HPP_INCLUDED
|
@@ -19,8 +19,8 @@
|
|||||||
|
|
||||||
#include "boost/mpl/aux_/iter_fold_if_impl.hpp"
|
#include "boost/mpl/aux_/iter_fold_if_impl.hpp"
|
||||||
#include "boost/mpl/aux_/iter_apply.hpp"
|
#include "boost/mpl/aux_/iter_apply.hpp"
|
||||||
#include "boost/mpl/logical/or.hpp"
|
#include "boost/mpl/or.hpp"
|
||||||
#include "boost/mpl/logical/not.hpp"
|
#include "boost/mpl/not.hpp"
|
||||||
#include "boost/mpl/begin_end.hpp"
|
#include "boost/mpl/begin_end.hpp"
|
||||||
#include "boost/mpl/always.hpp"
|
#include "boost/mpl/always.hpp"
|
||||||
#include "boost/mpl/lambda.hpp"
|
#include "boost/mpl/lambda.hpp"
|
||||||
@@ -45,7 +45,7 @@ struct find_if_pred
|
|||||||
>
|
>
|
||||||
struct apply
|
struct apply
|
||||||
{
|
{
|
||||||
typedef typename logical_not< logical_or<
|
typedef typename not_< or_<
|
||||||
is_same<Iterator,LastIterator>
|
is_same<Iterator,LastIterator>
|
||||||
, aux::iter_apply1<Predicate,Iterator>
|
, aux::iter_apply1<Predicate,Iterator>
|
||||||
> >::type type;
|
> >::type type;
|
||||||
@@ -72,7 +72,7 @@ struct find_if
|
|||||||
, mpl::arg<1>
|
, mpl::arg<1>
|
||||||
, aux::find_if_pred<last_>
|
, aux::find_if_pred<last_>
|
||||||
, void
|
, void
|
||||||
, always<false_c>
|
, always<false_>
|
||||||
>::iterator type;
|
>::iterator type;
|
||||||
|
|
||||||
BOOST_MPL_AUX_LAMBDA_SUPPORT(2,find_if,(Sequence,Predicate))
|
BOOST_MPL_AUX_LAMBDA_SUPPORT(2,find_if,(Sequence,Predicate))
|
||||||
|
@@ -19,7 +19,7 @@
|
|||||||
|
|
||||||
#include "boost/mpl/begin_end.hpp"
|
#include "boost/mpl/begin_end.hpp"
|
||||||
#include "boost/mpl/apply.hpp"
|
#include "boost/mpl/apply.hpp"
|
||||||
#include "boost/mpl/bool_c.hpp"
|
#include "boost/mpl/bool.hpp"
|
||||||
#include "boost/mpl/lambda.hpp"
|
#include "boost/mpl/lambda.hpp"
|
||||||
#include "boost/mpl/identity.hpp"
|
#include "boost/mpl/identity.hpp"
|
||||||
#include "boost/mpl/aux_/unwrap.hpp"
|
#include "boost/mpl/aux_/unwrap.hpp"
|
||||||
|
@@ -1,9 +1,11 @@
|
|||||||
//-----------------------------------------------------------------------------
|
|
||||||
// boost mpl/comparison/greater.hpp header file
|
#ifndef BOOST_MPL_GREATER_HPP_INCLUDED
|
||||||
// See http://www.boost.org for updates, documentation, and revision history.
|
#define BOOST_MPL_GREATER_HPP_INCLUDED
|
||||||
//-----------------------------------------------------------------------------
|
|
||||||
//
|
// + file: boost/mpl/greater.hpp
|
||||||
// Copyright (c) 2000-02
|
// + last modified: 25/feb/03
|
||||||
|
|
||||||
|
// Copyright (c) 2000-03
|
||||||
// Aleksey Gurtovoy
|
// Aleksey Gurtovoy
|
||||||
//
|
//
|
||||||
// Permission to use, copy, modify, distribute and sell this software
|
// Permission to use, copy, modify, distribute and sell this software
|
||||||
@@ -13,11 +15,10 @@
|
|||||||
// supporting documentation. No representations are made about the
|
// supporting documentation. No representations are made about the
|
||||||
// suitability of this software for any purpose. It is provided "as is"
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
// without express or implied warranty.
|
// without express or implied warranty.
|
||||||
|
//
|
||||||
|
// See http://www.boost.org/libs/mpl for documentation.
|
||||||
|
|
||||||
#ifndef BOOST_MPL_COMPARISON_GREATER_HPP_INCLUDED
|
#include "boost/mpl/bool.hpp"
|
||||||
#define BOOST_MPL_COMPARISON_GREATER_HPP_INCLUDED
|
|
||||||
|
|
||||||
#include "boost/mpl/bool_c.hpp"
|
|
||||||
#include "boost/mpl/integral_c.hpp"
|
#include "boost/mpl/integral_c.hpp"
|
||||||
#include "boost/mpl/aux_/value_wknd.hpp"
|
#include "boost/mpl/aux_/value_wknd.hpp"
|
||||||
#include "boost/mpl/aux_/void_spec.hpp"
|
#include "boost/mpl/aux_/void_spec.hpp"
|
||||||
@@ -39,9 +40,9 @@ struct greater
|
|||||||
));
|
));
|
||||||
|
|
||||||
#if !defined(__BORLANDC__)
|
#if !defined(__BORLANDC__)
|
||||||
typedef bool_c<value> type;
|
typedef bool_<value> type;
|
||||||
#else
|
#else
|
||||||
typedef bool_c<(
|
typedef bool_<(
|
||||||
(BOOST_MPL_AUX_VALUE_WKND(T1)::value)
|
(BOOST_MPL_AUX_VALUE_WKND(T1)::value)
|
||||||
> (BOOST_MPL_AUX_VALUE_WKND(T2)::value)
|
> (BOOST_MPL_AUX_VALUE_WKND(T2)::value)
|
||||||
)> type;
|
)> type;
|
||||||
@@ -69,4 +70,4 @@ struct gt
|
|||||||
} // namespace mpl
|
} // namespace mpl
|
||||||
} // namespace boost
|
} // namespace boost
|
||||||
|
|
||||||
#endif // BOOST_MPL_COMPARISON_GREATER_HPP_INCLUDED
|
#endif // BOOST_MPL_GREATER_HPP_INCLUDED
|
@@ -1,9 +1,11 @@
|
|||||||
//-----------------------------------------------------------------------------
|
|
||||||
// boost mpl/comparison/greater_equal.hpp header file
|
#ifndef BOOST_MPL_GREATER_EQUAL_HPP_INCLUDED
|
||||||
// See http://www.boost.org for updates, documentation, and revision history.
|
#define BOOST_MPL_GREATER_EQUAL_HPP_INCLUDED
|
||||||
//-----------------------------------------------------------------------------
|
|
||||||
//
|
// + file: boost/mpl/greater_equal.hpp
|
||||||
// Copyright (c) 2000-02
|
// + last modified: 25/feb/03
|
||||||
|
|
||||||
|
// Copyright (c) 2000-03
|
||||||
// Aleksey Gurtovoy
|
// Aleksey Gurtovoy
|
||||||
//
|
//
|
||||||
// Permission to use, copy, modify, distribute and sell this software
|
// Permission to use, copy, modify, distribute and sell this software
|
||||||
@@ -13,11 +15,10 @@
|
|||||||
// supporting documentation. No representations are made about the
|
// supporting documentation. No representations are made about the
|
||||||
// suitability of this software for any purpose. It is provided "as is"
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
// without express or implied warranty.
|
// without express or implied warranty.
|
||||||
|
//
|
||||||
|
// See http://www.boost.org/libs/mpl for documentation.
|
||||||
|
|
||||||
#ifndef BOOST_MPL_COMPARISON_GREATER_EQUAL_HPP_INCLUDED
|
#include "boost/mpl/bool.hpp"
|
||||||
#define BOOST_MPL_COMPARISON_GREATER_EQUAL_HPP_INCLUDED
|
|
||||||
|
|
||||||
#include "boost/mpl/bool_c.hpp"
|
|
||||||
#include "boost/mpl/integral_c.hpp"
|
#include "boost/mpl/integral_c.hpp"
|
||||||
#include "boost/mpl/aux_/value_wknd.hpp"
|
#include "boost/mpl/aux_/value_wknd.hpp"
|
||||||
#include "boost/mpl/aux_/void_spec.hpp"
|
#include "boost/mpl/aux_/void_spec.hpp"
|
||||||
@@ -39,9 +40,9 @@ struct greater_equal
|
|||||||
));
|
));
|
||||||
|
|
||||||
#if !defined(__BORLANDC__)
|
#if !defined(__BORLANDC__)
|
||||||
typedef bool_c<value> type;
|
typedef bool_<value> type;
|
||||||
#else
|
#else
|
||||||
typedef bool_c<(
|
typedef bool_<(
|
||||||
BOOST_MPL_AUX_VALUE_WKND(T1)::value
|
BOOST_MPL_AUX_VALUE_WKND(T1)::value
|
||||||
>= BOOST_MPL_AUX_VALUE_WKND(T2)::value
|
>= BOOST_MPL_AUX_VALUE_WKND(T2)::value
|
||||||
)> type;
|
)> type;
|
||||||
@@ -56,12 +57,17 @@ template< long N >
|
|||||||
struct ge
|
struct ge
|
||||||
{
|
{
|
||||||
template< typename T > struct apply
|
template< typename T > struct apply
|
||||||
|
#if !defined(__BORLANDC__)
|
||||||
: greater_equal< T,integral_c<long,N> >
|
: greater_equal< T,integral_c<long,N> >
|
||||||
{
|
{
|
||||||
|
#else
|
||||||
|
{
|
||||||
|
typedef typename greater_equal< T,integral_c<long,N> >::type type;
|
||||||
|
#endif
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace mpl
|
} // namespace mpl
|
||||||
} // namespace boost
|
} // namespace boost
|
||||||
|
|
||||||
#endif // BOOST_MPL_COMPARISON_GREATER_EQUAL_HPP_INCLUDED
|
#endif // BOOST_MPL_GREATER_EQUAL_HPP_INCLUDED
|
24
include/boost/mpl/int.hpp
Normal file
24
include/boost/mpl/int.hpp
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
|
||||||
|
#ifndef BOOST_MPL_INT_HPP_INCLUDED
|
||||||
|
#define BOOST_MPL_INT_HPP_INCLUDED
|
||||||
|
|
||||||
|
// + file: boost/mpl/int.hpp
|
||||||
|
// + last modified: 27/jan/03
|
||||||
|
|
||||||
|
// Copyright (c) 2000-03
|
||||||
|
// Aleksey Gurtovoy
|
||||||
|
//
|
||||||
|
// Permission to use, copy, modify, distribute and sell this software
|
||||||
|
// and its documentation for any purpose is hereby granted without fee,
|
||||||
|
// provided that the above copyright notice appears in all copies and
|
||||||
|
// that both the copyright notice and this permission notice appear in
|
||||||
|
// supporting documentation. No representations are made about the
|
||||||
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
|
// without express or implied warranty.
|
||||||
|
//
|
||||||
|
// See http://www.boost.org/libs/mpl for documentation.
|
||||||
|
|
||||||
|
#define AUX_WRAPPER_VALUE_TYPE int
|
||||||
|
#include "boost/mpl/aux_/integral_wrapper.hpp"
|
||||||
|
|
||||||
|
#endif // BOOST_MPL_INT_HPP_INCLUDED
|
@@ -1,9 +1,11 @@
|
|||||||
//-----------------------------------------------------------------------------
|
|
||||||
// boost/mpl/intergal_c.hpp header file
|
#ifndef BOOST_MPL_INTEGRAL_C_HPP_INCLUDED
|
||||||
// See http://www.boost.org for updates, documentation, and revision history.
|
#define BOOST_MPL_INTEGRAL_C_HPP_INCLUDED
|
||||||
//-----------------------------------------------------------------------------
|
|
||||||
//
|
// + file: boost/mpl/integral_c.hpp
|
||||||
// Copyright (c) 2000-02
|
// + last modified: 25/feb/03
|
||||||
|
|
||||||
|
// Copyright (c) 2000-03
|
||||||
// Aleksey Gurtovoy
|
// Aleksey Gurtovoy
|
||||||
//
|
//
|
||||||
// Permission to use, copy, modify, distribute and sell this software
|
// Permission to use, copy, modify, distribute and sell this software
|
||||||
@@ -13,63 +15,29 @@
|
|||||||
// supporting documentation. No representations are made about the
|
// supporting documentation. No representations are made about the
|
||||||
// suitability of this software for any purpose. It is provided "as is"
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
// without express or implied warranty.
|
// without express or implied warranty.
|
||||||
|
//
|
||||||
#ifndef BOOST_MPL_INTEGRAL_C_HPP_INCLUDED
|
// See http://www.boost.org/libs/mpl for documentation.
|
||||||
#define BOOST_MPL_INTEGRAL_C_HPP_INCLUDED
|
|
||||||
|
|
||||||
#include "boost/mpl/aux_/ice_cast.hpp"
|
#include "boost/mpl/aux_/ice_cast.hpp"
|
||||||
#include "boost/mpl/aux_/config/static_constant.hpp"
|
#include "boost/mpl/aux_/config/ctps.hpp"
|
||||||
#include "boost/mpl/aux_/config/workaround.hpp"
|
#include "boost/mpl/aux_/config/workaround.hpp"
|
||||||
|
|
||||||
namespace boost {
|
|
||||||
namespace mpl {
|
|
||||||
|
|
||||||
template< typename T,
|
|
||||||
// the type of non-type template arguments may not depend on template arguments
|
|
||||||
#if BOOST_WORKAROUND(__HP_aCC, BOOST_TESTED_AT(53800))
|
#if BOOST_WORKAROUND(__HP_aCC, BOOST_TESTED_AT(53800))
|
||||||
long
|
// the type of non-type template arguments may not depend on template arguments
|
||||||
#else
|
# define AUX_WRAPPER_PARAMS(N) typename T, long N
|
||||||
T
|
|
||||||
#endif
|
|
||||||
N >
|
|
||||||
struct integral_c
|
|
||||||
{
|
|
||||||
BOOST_STATIC_CONSTANT(T, value = N);
|
|
||||||
typedef integral_c type;
|
|
||||||
typedef T value_type;
|
|
||||||
|
|
||||||
// Note that the static_casts below are there to handle the case
|
|
||||||
// where T is an enum type.
|
|
||||||
|
|
||||||
// have to #ifdef here: some compilers don't like the 'N + 1' form (MSVC),
|
|
||||||
// while some other don't like 'value + 1' (Borland), and some don't like
|
|
||||||
// either
|
|
||||||
#if defined(__EDG_VERSION__) && __EDG_VERSION__ <= 243
|
|
||||||
private:
|
|
||||||
BOOST_STATIC_CONSTANT(T, next_value = BOOST_MPL_AUX_ICE_CAST(T, (N + 1)));
|
|
||||||
BOOST_STATIC_CONSTANT(T, prior_value = BOOST_MPL_AUX_ICE_CAST(T, (N - 1)));
|
|
||||||
public:
|
|
||||||
typedef integral_c<T, next_value> next;
|
|
||||||
typedef integral_c<T, prior_value> prior;
|
|
||||||
#elif BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x561)) \
|
|
||||||
|| BOOST_WORKAROUND(__IBMCPP__, BOOST_TESTED_AT(502)) \
|
|
||||||
|| BOOST_WORKAROUND(__HP_aCC, BOOST_TESTED_AT(53800))
|
|
||||||
typedef integral_c<T, BOOST_MPL_AUX_ICE_CAST(T, (N + 1))> next;
|
|
||||||
typedef integral_c<T, BOOST_MPL_AUX_ICE_CAST(T, (N - 1))> prior;
|
|
||||||
#else
|
#else
|
||||||
typedef integral_c<T, BOOST_MPL_AUX_ICE_CAST(T, (value + 1))> next;
|
# define AUX_WRAPPER_PARAMS(N) typename T, T N
|
||||||
typedef integral_c<T, BOOST_MPL_AUX_ICE_CAST(T, (value - 1))> prior;
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// enables uniform function call syntax for families of overloaded
|
#define AUX_WRAPPER_NAME integral_c
|
||||||
// functions that return objects of both arithmetic ('int', 'long',
|
#define AUX_WRAPPER_VALUE_TYPE T
|
||||||
// 'double', etc.) and 'integral_c<..>' types (for an example, see
|
#define AUX_WRAPPER_INST(value) AUX_WRAPPER_NAME< T, value >
|
||||||
// "mpl/example/power.cpp")
|
#include "boost/mpl/aux_/integral_wrapper.hpp"
|
||||||
operator T() const { return this->value; }
|
|
||||||
};
|
|
||||||
|
|
||||||
#if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) \
|
#if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) \
|
||||||
&& !BOOST_WORKAROUND(__BORLANDC__, <= 0x551)
|
&& !BOOST_WORKAROUND(__BORLANDC__, <= 0x551)
|
||||||
|
namespace boost { namespace mpl {
|
||||||
// 'bool' constant doesn't have 'next'/'prior' members
|
// 'bool' constant doesn't have 'next'/'prior' members
|
||||||
template< bool C >
|
template< bool C >
|
||||||
struct integral_c<bool, C>
|
struct integral_c<bool, C>
|
||||||
@@ -78,9 +46,7 @@ struct integral_c<bool, C>
|
|||||||
typedef integral_c type;
|
typedef integral_c type;
|
||||||
operator bool() const { return this->value; }
|
operator bool() const { return this->value; }
|
||||||
};
|
};
|
||||||
|
}}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
} // namespace mpl
|
|
||||||
} // namespace boost
|
|
||||||
|
|
||||||
#endif // BOOST_MPL_INTEGRAL_C_HPP_INCLUDED
|
#endif // BOOST_MPL_INTEGRAL_C_HPP_INCLUDED
|
||||||
|
@@ -18,7 +18,7 @@
|
|||||||
#define BOOST_MPL_IS_PLACEHOLDER_HPP_INCLUDED
|
#define BOOST_MPL_IS_PLACEHOLDER_HPP_INCLUDED
|
||||||
|
|
||||||
#include "boost/mpl/arg_fwd.hpp"
|
#include "boost/mpl/arg_fwd.hpp"
|
||||||
#include "boost/mpl/bool_c.hpp"
|
#include "boost/mpl/bool.hpp"
|
||||||
#include "boost/mpl/aux_/yes_no.hpp"
|
#include "boost/mpl/aux_/yes_no.hpp"
|
||||||
#include "boost/mpl/aux_/config/ctps.hpp"
|
#include "boost/mpl/aux_/config/ctps.hpp"
|
||||||
#include "boost/mpl/aux_/config/nttp.hpp"
|
#include "boost/mpl/aux_/config/nttp.hpp"
|
||||||
@@ -29,13 +29,13 @@ namespace boost { namespace mpl {
|
|||||||
|
|
||||||
template< typename T >
|
template< typename T >
|
||||||
struct is_placeholder
|
struct is_placeholder
|
||||||
: bool_c<false>
|
: bool_<false>
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
|
|
||||||
template< BOOST_MPL_AUX_NTTP_DECL(int, N) >
|
template< BOOST_MPL_AUX_NTTP_DECL(int, N) >
|
||||||
struct is_placeholder< arg<N> >
|
struct is_placeholder< arg<N> >
|
||||||
: bool_c<true>
|
: bool_<true>
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@@ -17,11 +17,11 @@
|
|||||||
#ifndef BOOST_MPL_IS_SEQUENCE_HPP_INCLUDED
|
#ifndef BOOST_MPL_IS_SEQUENCE_HPP_INCLUDED
|
||||||
#define BOOST_MPL_IS_SEQUENCE_HPP_INCLUDED
|
#define BOOST_MPL_IS_SEQUENCE_HPP_INCLUDED
|
||||||
|
|
||||||
#include "boost/mpl/logical/not.hpp"
|
#include "boost/mpl/not.hpp"
|
||||||
#include "boost/mpl/logical/or.hpp"
|
#include "boost/mpl/or.hpp"
|
||||||
#include "boost/mpl/begin_end.hpp"
|
#include "boost/mpl/begin_end.hpp"
|
||||||
#include "boost/mpl/if.hpp"
|
#include "boost/mpl/if.hpp"
|
||||||
#include "boost/mpl/bool_c.hpp"
|
#include "boost/mpl/bool.hpp"
|
||||||
#include "boost/mpl/sequence_tag_fwd.hpp"
|
#include "boost/mpl/sequence_tag_fwd.hpp"
|
||||||
#include "boost/mpl/identity.hpp"
|
#include "boost/mpl/identity.hpp"
|
||||||
#include "boost/mpl/void.hpp"
|
#include "boost/mpl/void.hpp"
|
||||||
@@ -42,7 +42,7 @@ namespace boost { namespace mpl {
|
|||||||
namespace aux {
|
namespace aux {
|
||||||
|
|
||||||
template< typename T > struct is_sequence_impl
|
template< typename T > struct is_sequence_impl
|
||||||
: logical_or<
|
: or_<
|
||||||
identity< aux::has_tag<T> >
|
identity< aux::has_tag<T> >
|
||||||
, identity< aux::has_begin<T> >
|
, identity< aux::has_begin<T> >
|
||||||
>
|
>
|
||||||
@@ -58,7 +58,7 @@ struct is_sequence
|
|||||||
: if_<
|
: if_<
|
||||||
boost::is_class<T>
|
boost::is_class<T>
|
||||||
, aux::is_sequence_impl<T>
|
, aux::is_sequence_impl<T>
|
||||||
, bool_c<false>
|
, bool_<false>
|
||||||
>::type
|
>::type
|
||||||
{
|
{
|
||||||
BOOST_MPL_AUX_LAMBDA_SUPPORT(1,is_sequence,(T))
|
BOOST_MPL_AUX_LAMBDA_SUPPORT(1,is_sequence,(T))
|
||||||
@@ -70,7 +70,7 @@ template<
|
|||||||
typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T)
|
typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T)
|
||||||
>
|
>
|
||||||
struct is_sequence
|
struct is_sequence
|
||||||
: bool_c<false>
|
: bool_<false>
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -80,7 +80,7 @@ template<
|
|||||||
typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T)
|
typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T)
|
||||||
>
|
>
|
||||||
struct is_sequence
|
struct is_sequence
|
||||||
: logical_not< is_same< typename begin<T>::type, void_ > >
|
: not_< is_same< typename begin<T>::type, void_ > >
|
||||||
{
|
{
|
||||||
BOOST_MPL_AUX_LAMBDA_SUPPORT(1,is_sequence,(T))
|
BOOST_MPL_AUX_LAMBDA_SUPPORT(1,is_sequence,(T))
|
||||||
};
|
};
|
||||||
@@ -89,7 +89,7 @@ struct is_sequence
|
|||||||
|
|
||||||
#if defined(BOOST_MPL_MSVC_60_ETI_BUG)
|
#if defined(BOOST_MPL_MSVC_60_ETI_BUG)
|
||||||
template<> struct is_sequence<int>
|
template<> struct is_sequence<int>
|
||||||
: bool_c<false>
|
: bool_<false>
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
@@ -1,9 +1,11 @@
|
|||||||
//-----------------------------------------------------------------------------
|
|
||||||
// boost mpl/comparison/less.hpp header file
|
#ifndef BOOST_MPL_LESS_HPP_INCLUDED
|
||||||
// See http://www.boost.org for updates, documentation, and revision history.
|
#define BOOST_MPL_LESS_HPP_INCLUDED
|
||||||
//-----------------------------------------------------------------------------
|
|
||||||
//
|
// + file: boost/mpl/less.hpp
|
||||||
// Copyright (c) 2000-02
|
// + last modified: 25/feb/03
|
||||||
|
|
||||||
|
// Copyright (c) 2000-03
|
||||||
// Aleksey Gurtovoy
|
// Aleksey Gurtovoy
|
||||||
//
|
//
|
||||||
// Permission to use, copy, modify, distribute and sell this software
|
// Permission to use, copy, modify, distribute and sell this software
|
||||||
@@ -13,11 +15,10 @@
|
|||||||
// supporting documentation. No representations are made about the
|
// supporting documentation. No representations are made about the
|
||||||
// suitability of this software for any purpose. It is provided "as is"
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
// without express or implied warranty.
|
// without express or implied warranty.
|
||||||
|
//
|
||||||
|
// See http://www.boost.org/libs/mpl for documentation.
|
||||||
|
|
||||||
#ifndef BOOST_MPL_COMPARISON_LESS_HPP_INCLUDED
|
#include "boost/mpl/bool.hpp"
|
||||||
#define BOOST_MPL_COMPARISON_LESS_HPP_INCLUDED
|
|
||||||
|
|
||||||
#include "boost/mpl/bool_c.hpp"
|
|
||||||
#include "boost/mpl/integral_c.hpp"
|
#include "boost/mpl/integral_c.hpp"
|
||||||
#include "boost/mpl/aux_/value_wknd.hpp"
|
#include "boost/mpl/aux_/value_wknd.hpp"
|
||||||
#include "boost/mpl/aux_/void_spec.hpp"
|
#include "boost/mpl/aux_/void_spec.hpp"
|
||||||
@@ -39,9 +40,9 @@ struct less
|
|||||||
));
|
));
|
||||||
|
|
||||||
#if !defined(__BORLANDC__)
|
#if !defined(__BORLANDC__)
|
||||||
typedef bool_c<value> type;
|
typedef bool_<value> type;
|
||||||
#else
|
#else
|
||||||
typedef bool_c<(
|
typedef bool_<(
|
||||||
(BOOST_MPL_AUX_VALUE_WKND(T1)::value)
|
(BOOST_MPL_AUX_VALUE_WKND(T1)::value)
|
||||||
< (BOOST_MPL_AUX_VALUE_WKND(T2)::value)
|
< (BOOST_MPL_AUX_VALUE_WKND(T2)::value)
|
||||||
)> type;
|
)> type;
|
||||||
@@ -69,4 +70,4 @@ struct lt
|
|||||||
} // namespace mpl
|
} // namespace mpl
|
||||||
} // namespace boost
|
} // namespace boost
|
||||||
|
|
||||||
#endif // BOOST_MPL_COMPARISON_LESS_HPP_INCLUDED
|
#endif // BOOST_MPL_LESS_HPP_INCLUDED
|
@@ -1,9 +1,11 @@
|
|||||||
//-----------------------------------------------------------------------------
|
|
||||||
// boost mpl/comparison/less_equal.hpp header file
|
#ifndef BOOST_MPL_LESS_EQUAL_HPP_INCLUDED
|
||||||
// See http://www.boost.org for updates, documentation, and revision history.
|
#define BOOST_MPL_LESS_EQUAL_HPP_INCLUDED
|
||||||
//-----------------------------------------------------------------------------
|
|
||||||
//
|
// + file: boost/mpl/less_equal.hpp
|
||||||
// Copyright (c) 2000-02
|
// + last modified: 25/feb/03
|
||||||
|
|
||||||
|
// Copyright (c) 2000-03
|
||||||
// Aleksey Gurtovoy
|
// Aleksey Gurtovoy
|
||||||
//
|
//
|
||||||
// Permission to use, copy, modify, distribute and sell this software
|
// Permission to use, copy, modify, distribute and sell this software
|
||||||
@@ -13,11 +15,10 @@
|
|||||||
// supporting documentation. No representations are made about the
|
// supporting documentation. No representations are made about the
|
||||||
// suitability of this software for any purpose. It is provided "as is"
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
// without express or implied warranty.
|
// without express or implied warranty.
|
||||||
|
//
|
||||||
|
// See http://www.boost.org/libs/mpl for documentation.
|
||||||
|
|
||||||
#ifndef BOOST_MPL_COMPARISON_LESS_EQUAL_HPP_INCLUDED
|
#include "boost/mpl/bool.hpp"
|
||||||
#define BOOST_MPL_COMPARISON_LESS_EQUAL_HPP_INCLUDED
|
|
||||||
|
|
||||||
#include "boost/mpl/bool_c.hpp"
|
|
||||||
#include "boost/mpl/integral_c.hpp"
|
#include "boost/mpl/integral_c.hpp"
|
||||||
#include "boost/mpl/aux_/value_wknd.hpp"
|
#include "boost/mpl/aux_/value_wknd.hpp"
|
||||||
#include "boost/mpl/aux_/void_spec.hpp"
|
#include "boost/mpl/aux_/void_spec.hpp"
|
||||||
@@ -39,9 +40,9 @@ struct less_equal
|
|||||||
));
|
));
|
||||||
|
|
||||||
#if !defined(__BORLANDC__)
|
#if !defined(__BORLANDC__)
|
||||||
typedef bool_c<value> type;
|
typedef bool_<value> type;
|
||||||
#else
|
#else
|
||||||
typedef bool_c<(
|
typedef bool_<(
|
||||||
BOOST_MPL_AUX_VALUE_WKND(T1)::value
|
BOOST_MPL_AUX_VALUE_WKND(T1)::value
|
||||||
<= BOOST_MPL_AUX_VALUE_WKND(T2)::value
|
<= BOOST_MPL_AUX_VALUE_WKND(T2)::value
|
||||||
)> type;
|
)> type;
|
||||||
@@ -69,4 +70,4 @@ struct le
|
|||||||
} // namespace mpl
|
} // namespace mpl
|
||||||
} // namespace boost
|
} // namespace boost
|
||||||
|
|
||||||
#endif // BOOST_MPL_COMPARISON_LESS_EQUAL_HPP_INCLUDED
|
#endif // BOOST_MPL_LESS_EQUAL_HPP_INCLUDED
|
@@ -18,7 +18,7 @@
|
|||||||
#define BOOST_MPL_LIST_AUX_EMPTY_HPP_INCLUDED
|
#define BOOST_MPL_LIST_AUX_EMPTY_HPP_INCLUDED
|
||||||
|
|
||||||
#include "boost/mpl/empty_fwd.hpp"
|
#include "boost/mpl/empty_fwd.hpp"
|
||||||
#include "boost/mpl/logical/not.hpp"
|
#include "boost/mpl/not.hpp"
|
||||||
#include "boost/mpl/list/aux_/tag.hpp"
|
#include "boost/mpl/list/aux_/tag.hpp"
|
||||||
|
|
||||||
namespace boost {
|
namespace boost {
|
||||||
@@ -28,7 +28,7 @@ template<>
|
|||||||
struct empty_traits< aux::list_tag >
|
struct empty_traits< aux::list_tag >
|
||||||
{
|
{
|
||||||
template< typename List > struct algorithm
|
template< typename List > struct algorithm
|
||||||
: logical_not<typename List::size>
|
: not_<typename List::size>
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@@ -1,9 +1,11 @@
|
|||||||
//-----------------------------------------------------------------------------
|
|
||||||
// boost mpl/logical.hpp header file
|
#ifndef BOOST_MPL_LOGICAL_HPP_INCLUDED
|
||||||
// See http://www.boost.org for updates, documentation, and revision history.
|
#define BOOST_MPL_LOGICAL_HPP_INCLUDED
|
||||||
//-----------------------------------------------------------------------------
|
|
||||||
//
|
// + file: boost/mpl/logical.hpp
|
||||||
// Copyright (c) 2000-02
|
// + last modified: 25/feb/03
|
||||||
|
|
||||||
|
// Copyright (c) 2000-03
|
||||||
// Aleksey Gurtovoy
|
// Aleksey Gurtovoy
|
||||||
//
|
//
|
||||||
// Permission to use, copy, modify, distribute and sell this software
|
// Permission to use, copy, modify, distribute and sell this software
|
||||||
@@ -13,12 +15,11 @@
|
|||||||
// supporting documentation. No representations are made about the
|
// supporting documentation. No representations are made about the
|
||||||
// suitability of this software for any purpose. It is provided "as is"
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
// without express or implied warranty.
|
// without express or implied warranty.
|
||||||
|
//
|
||||||
|
// See http://www.boost.org/libs/mpl for documentation.
|
||||||
|
|
||||||
#ifndef BOOST_MPL_LOGICAL_HPP_INCLUDED
|
#include "boost/mpl/or.hpp"
|
||||||
#define BOOST_MPL_LOGICAL_HPP_INCLUDED
|
#include "boost/mpl/and.hpp"
|
||||||
|
#include "boost/mpl/not.hpp"
|
||||||
#include "boost/mpl/logical/or.hpp"
|
|
||||||
#include "boost/mpl/logical/and.hpp"
|
|
||||||
#include "boost/mpl/logical/not.hpp"
|
|
||||||
|
|
||||||
#endif // BOOST_MPL_LOGICAL_HPP_INCLUDED
|
#endif // BOOST_MPL_LOGICAL_HPP_INCLUDED
|
||||||
|
24
include/boost/mpl/long.hpp
Normal file
24
include/boost/mpl/long.hpp
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
|
||||||
|
#ifndef BOOST_MPL_LONG_HPP_INCLUDED
|
||||||
|
#define BOOST_MPL_LONG_HPP_INCLUDED
|
||||||
|
|
||||||
|
// + file: boost/mpl/long.hpp
|
||||||
|
// + last modified: 27/jan/03
|
||||||
|
|
||||||
|
// Copyright (c) 2000-03
|
||||||
|
// Aleksey Gurtovoy
|
||||||
|
//
|
||||||
|
// Permission to use, copy, modify, distribute and sell this software
|
||||||
|
// and its documentation for any purpose is hereby granted without fee,
|
||||||
|
// provided that the above copyright notice appears in all copies and
|
||||||
|
// that both the copyright notice and this permission notice appear in
|
||||||
|
// supporting documentation. No representations are made about the
|
||||||
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
|
// without express or implied warranty.
|
||||||
|
//
|
||||||
|
// See http://www.boost.org/libs/mpl for documentation.
|
||||||
|
|
||||||
|
#define AUX_WRAPPER_VALUE_TYPE long
|
||||||
|
#include "boost/mpl/aux_/integral_wrapper.hpp"
|
||||||
|
|
||||||
|
#endif // BOOST_MPL_LONG_HPP_INCLUDED
|
@@ -17,7 +17,7 @@
|
|||||||
#ifndef BOOST_MPL_LOWER_BOUND_HPP_INCLUDED
|
#ifndef BOOST_MPL_LOWER_BOUND_HPP_INCLUDED
|
||||||
#define BOOST_MPL_LOWER_BOUND_HPP_INCLUDED
|
#define BOOST_MPL_LOWER_BOUND_HPP_INCLUDED
|
||||||
|
|
||||||
#include "boost/mpl/comparison/less.hpp"
|
#include "boost/mpl/less.hpp"
|
||||||
#include "boost/mpl/lambda.hpp"
|
#include "boost/mpl/lambda.hpp"
|
||||||
#include "boost/mpl/aux_/void_spec.hpp"
|
#include "boost/mpl/aux_/void_spec.hpp"
|
||||||
|
|
||||||
@@ -26,20 +26,20 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if !defined(BOOST_MPL_CFG_STRIPPED_DOWN_LOWER_BOUND_IMPL)
|
#if !defined(BOOST_MPL_CFG_STRIPPED_DOWN_LOWER_BOUND_IMPL)
|
||||||
# include "boost/mpl/arithmetic/minus.hpp"
|
# include "boost/mpl/minus.hpp"
|
||||||
# include "boost/mpl/arithmetic/divides.hpp"
|
# include "boost/mpl/divides.hpp"
|
||||||
# include "boost/mpl/size.hpp"
|
# include "boost/mpl/size.hpp"
|
||||||
# include "boost/mpl/advance.hpp"
|
# include "boost/mpl/advance.hpp"
|
||||||
# include "boost/mpl/begin_end.hpp"
|
# include "boost/mpl/begin_end.hpp"
|
||||||
# include "boost/mpl/integral_c.hpp"
|
# include "boost/mpl/integral_c.hpp"
|
||||||
# include "boost/mpl/int_c.hpp"
|
# include "boost/mpl/int.hpp"
|
||||||
# include "boost/mpl/apply_if.hpp"
|
# include "boost/mpl/apply_if.hpp"
|
||||||
# include "boost/mpl/apply.hpp"
|
# include "boost/mpl/apply.hpp"
|
||||||
# include "boost/mpl/aux_/apply.hpp"
|
# include "boost/mpl/aux_/apply.hpp"
|
||||||
# include "boost/mpl/aux_/deref_wknd.hpp"
|
# include "boost/mpl/aux_/deref_wknd.hpp"
|
||||||
# include "boost/mpl/aux_/value_wknd.hpp"
|
# include "boost/mpl/aux_/value_wknd.hpp"
|
||||||
#else
|
#else
|
||||||
# include "boost/mpl/logical/not.hpp"
|
# include "boost/mpl/not.hpp"
|
||||||
# include "boost/mpl/find.hpp"
|
# include "boost/mpl/find.hpp"
|
||||||
# include "boost/mpl/bind.hpp"
|
# include "boost/mpl/bind.hpp"
|
||||||
#endif
|
#endif
|
||||||
@@ -60,7 +60,7 @@ template<
|
|||||||
, typename pred_ = typename lambda<Predicate>::type
|
, typename pred_ = typename lambda<Predicate>::type
|
||||||
>
|
>
|
||||||
struct lower_bound
|
struct lower_bound
|
||||||
: find_if< Sequence, bind1< logical_not<>, bind2<pred_,_,T> > >
|
: find_if< Sequence, bind1< not_<>, bind2<pred_,_,T> > >
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@@ -17,7 +17,7 @@
|
|||||||
#ifndef BOOST_MPL_MATH_IS_EVEN_HPP_INCLUDED
|
#ifndef BOOST_MPL_MATH_IS_EVEN_HPP_INCLUDED
|
||||||
#define BOOST_MPL_MATH_IS_EVEN_HPP_INCLUDED
|
#define BOOST_MPL_MATH_IS_EVEN_HPP_INCLUDED
|
||||||
|
|
||||||
#include "boost/mpl/bool_c.hpp"
|
#include "boost/mpl/bool.hpp"
|
||||||
#include "boost/mpl/aux_/void_spec.hpp"
|
#include "boost/mpl/aux_/void_spec.hpp"
|
||||||
#include "boost/mpl/aux_/lambda_support.hpp"
|
#include "boost/mpl/aux_/lambda_support.hpp"
|
||||||
#include "boost/mpl/aux_/config/eti.hpp"
|
#include "boost/mpl/aux_/config/eti.hpp"
|
||||||
@@ -30,7 +30,7 @@ template<
|
|||||||
typename BOOST_MPL_AUX_VOID_SPEC_PARAM(N)
|
typename BOOST_MPL_AUX_VOID_SPEC_PARAM(N)
|
||||||
>
|
>
|
||||||
struct is_even
|
struct is_even
|
||||||
: bool_c<((N::value % 2) == 0)>
|
: bool_<((N::value % 2) == 0)>
|
||||||
{
|
{
|
||||||
BOOST_MPL_AUX_LAMBDA_SUPPORT(1,is_even,(N))
|
BOOST_MPL_AUX_LAMBDA_SUPPORT(1,is_even,(N))
|
||||||
};
|
};
|
||||||
|
@@ -17,7 +17,7 @@
|
|||||||
#ifndef BOOST_MPL_MAX_ELEMENT_HPP_INCLUDED
|
#ifndef BOOST_MPL_MAX_ELEMENT_HPP_INCLUDED
|
||||||
#define BOOST_MPL_MAX_ELEMENT_HPP_INCLUDED
|
#define BOOST_MPL_MAX_ELEMENT_HPP_INCLUDED
|
||||||
|
|
||||||
#include "boost/mpl/comparison/less.hpp"
|
#include "boost/mpl/less.hpp"
|
||||||
#include "boost/mpl/iter_fold.hpp"
|
#include "boost/mpl/iter_fold.hpp"
|
||||||
#include "boost/mpl/begin_end.hpp"
|
#include "boost/mpl/begin_end.hpp"
|
||||||
#include "boost/mpl/if.hpp"
|
#include "boost/mpl/if.hpp"
|
||||||
|
@@ -1,9 +1,11 @@
|
|||||||
//-----------------------------------------------------------------------------
|
|
||||||
// boost mpl/arithmetic/minus.hpp header file
|
#ifndef BOOST_MPL_MINUS_HPP_INCLUDED
|
||||||
// See http://www.boost.org for updates, documentation, and revision history.
|
#define BOOST_MPL_MINUS_HPP_INCLUDED
|
||||||
//-----------------------------------------------------------------------------
|
|
||||||
//
|
// + file: boost/mpl/minus.hpp
|
||||||
// Copyright (c) 2000-02
|
// + last modified: 25/feb/03
|
||||||
|
|
||||||
|
// Copyright (c) 2000-03
|
||||||
// Aleksey Gurtovoy
|
// Aleksey Gurtovoy
|
||||||
//
|
//
|
||||||
// Permission to use, copy, modify, distribute and sell this software
|
// Permission to use, copy, modify, distribute and sell this software
|
||||||
@@ -13,9 +15,8 @@
|
|||||||
// supporting documentation. No representations are made about the
|
// supporting documentation. No representations are made about the
|
||||||
// suitability of this software for any purpose. It is provided "as is"
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
// without express or implied warranty.
|
// without express or implied warranty.
|
||||||
|
//
|
||||||
#ifndef BOOST_MPL_ARITHMETIC_MINUS_HPP_INCLUDED
|
// See http://www.boost.org/libs/mpl for documentation.
|
||||||
#define BOOST_MPL_ARITHMETIC_MINUS_HPP_INCLUDED
|
|
||||||
|
|
||||||
#include "boost/mpl/integral_c.hpp"
|
#include "boost/mpl/integral_c.hpp"
|
||||||
#include "boost/mpl/aux_/typeof.hpp"
|
#include "boost/mpl/aux_/typeof.hpp"
|
||||||
@@ -67,4 +68,4 @@ BOOST_MPL_AUX_VOID_SPEC_EXT(2,5,minus)
|
|||||||
} // namespace mpl
|
} // namespace mpl
|
||||||
} // namespace boost
|
} // namespace boost
|
||||||
|
|
||||||
#endif // BOOST_MPL_ARITHMETIC_MINUS_HPP_INCLUDED
|
#endif // BOOST_MPL_MINUS_HPP_INCLUDED
|
@@ -1,9 +1,11 @@
|
|||||||
//-----------------------------------------------------------------------------
|
|
||||||
// boost mpl/arithmetic/modulus.hpp header file
|
#ifndef BOOST_MPL_MODULUS_HPP_INCLUDED
|
||||||
// See http://www.boost.org for updates, documentation, and revision history.
|
#define BOOST_MPL_MODULUS_HPP_INCLUDED
|
||||||
//-----------------------------------------------------------------------------
|
|
||||||
//
|
// + file: boost/mpl/modulus.hpp
|
||||||
// Copyright (c) 2111%12
|
// + last modified: 25/feb/03
|
||||||
|
|
||||||
|
// Copyright (c) 2000-03
|
||||||
// Aleksey Gurtovoy
|
// Aleksey Gurtovoy
|
||||||
//
|
//
|
||||||
// Permission to use, copy, modify, distribute and sell this software
|
// Permission to use, copy, modify, distribute and sell this software
|
||||||
@@ -13,9 +15,8 @@
|
|||||||
// supporting documentation. No representations are made about the
|
// supporting documentation. No representations are made about the
|
||||||
// suitability of this software for any purpose. It is provided "as is"
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
// without express or implied warranty.
|
// without express or implied warranty.
|
||||||
|
//
|
||||||
#ifndef BOOST_MPL_ARITHMETIC_MODULUS_HPP_INCLUDED
|
// See http://www.boost.org/libs/mpl for documentation.
|
||||||
#define BOOST_MPL_ARITHMETIC_MODULUS_HPP_INCLUDED
|
|
||||||
|
|
||||||
#include "boost/mpl/integral_c.hpp"
|
#include "boost/mpl/integral_c.hpp"
|
||||||
#include "boost/mpl/aux_/typeof.hpp"
|
#include "boost/mpl/aux_/typeof.hpp"
|
||||||
@@ -69,4 +70,4 @@ BOOST_MPL_AUX_VOID_SPEC(2,modulus)
|
|||||||
} // namespace mpl
|
} // namespace mpl
|
||||||
} // namespace boost
|
} // namespace boost
|
||||||
|
|
||||||
#endif // BOOST_MPL_ARITHMETIC_MODULUS_HPP_INCLUDED
|
#endif // BOOST_MPL_MODULUS_HPP_INCLUDED
|
@@ -1,9 +1,11 @@
|
|||||||
//-----------------------------------------------------------------------------
|
|
||||||
// boost mpl/arithmetic/multiplies.hpp header file
|
#ifndef BOOST_MPL_MULTIPLIES_HPP_INCLUDED
|
||||||
// See http://www.boost.org for updates, documentation, and revision history.
|
#define BOOST_MPL_MULTIPLIES_HPP_INCLUDED
|
||||||
//-----------------------------------------------------------------------------
|
|
||||||
//
|
// + file: boost/mpl/multiplies.hpp
|
||||||
// Copyright (c) 2000-02
|
// + last modified: 25/feb/03
|
||||||
|
|
||||||
|
// Copyright (c) 2000-03
|
||||||
// Aleksey Gurtovoy
|
// Aleksey Gurtovoy
|
||||||
//
|
//
|
||||||
// Permission to use, copy, modify, distribute and sell this software
|
// Permission to use, copy, modify, distribute and sell this software
|
||||||
@@ -13,9 +15,8 @@
|
|||||||
// supporting documentation. No representations are made about the
|
// supporting documentation. No representations are made about the
|
||||||
// suitability of this software for any purpose. It is provided "as is"
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
// without express or implied warranty.
|
// without express or implied warranty.
|
||||||
|
//
|
||||||
#ifndef BOOST_MPL_ARITHMETIC_MULTIPLIES_HPP_INCLUDED
|
// See http://www.boost.org/libs/mpl for documentation.
|
||||||
#define BOOST_MPL_ARITHMETIC_MULTIPLIES_HPP_INCLUDED
|
|
||||||
|
|
||||||
#include "boost/mpl/integral_c.hpp"
|
#include "boost/mpl/integral_c.hpp"
|
||||||
#include "boost/mpl/aux_/typeof.hpp"
|
#include "boost/mpl/aux_/typeof.hpp"
|
||||||
@@ -67,4 +68,4 @@ BOOST_MPL_AUX_VOID_SPEC_EXT(2, 5, multiplies)
|
|||||||
} // namespace mpl
|
} // namespace mpl
|
||||||
} // namespace boost
|
} // namespace boost
|
||||||
|
|
||||||
#endif // BOOST_MPL_ARITHMETIC_MULTIPLIES_HPP_INCLUDED
|
#endif // BOOST_MPL_MULTIPLIES_HPP_INCLUDED
|
@@ -1,9 +1,11 @@
|
|||||||
//-----------------------------------------------------------------------------
|
|
||||||
// boost mpl/arithmetic/negate.hpp header file
|
#ifndef BOOST_MPL_NEGATE_HPP_INCLUDED
|
||||||
// See http://www.boost.org for updates, documentation, and revision history.
|
#define BOOST_MPL_NEGATE_HPP_INCLUDED
|
||||||
//-----------------------------------------------------------------------------
|
|
||||||
//
|
// + file: boost/mpl/negate.hpp
|
||||||
// Copyright (c) 2000-02
|
// + last modified: 25/feb/03
|
||||||
|
|
||||||
|
// Copyright (c) 2000-03
|
||||||
// Aleksey Gurtovoy
|
// Aleksey Gurtovoy
|
||||||
//
|
//
|
||||||
// Permission to use, copy, modify, distribute and sell this software
|
// Permission to use, copy, modify, distribute and sell this software
|
||||||
@@ -13,9 +15,8 @@
|
|||||||
// supporting documentation. No representations are made about the
|
// supporting documentation. No representations are made about the
|
||||||
// suitability of this software for any purpose. It is provided "as is"
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
// without express or implied warranty.
|
// without express or implied warranty.
|
||||||
|
//
|
||||||
#ifndef BOOST_MPL_ARITHMETIC_NEGATE_HPP_INCLUDED
|
// See http://www.boost.org/libs/mpl for documentation.
|
||||||
#define BOOST_MPL_ARITHMETIC_NEGATE_HPP_INCLUDED
|
|
||||||
|
|
||||||
#include "boost/mpl/integral_c.hpp"
|
#include "boost/mpl/integral_c.hpp"
|
||||||
#include "boost/mpl/aux_/typeof.hpp"
|
#include "boost/mpl/aux_/typeof.hpp"
|
||||||
@@ -47,4 +48,4 @@ BOOST_MPL_AUX_VOID_SPEC(1,negate)
|
|||||||
} // namespace mpl
|
} // namespace mpl
|
||||||
} // namespace boost
|
} // namespace boost
|
||||||
|
|
||||||
#endif // BOOST_MPL_ARITHMETIC_NEGATE_HPP_INCLUDED
|
#endif // BOOST_MPL_NEGATE_HPP_INCLUDED
|
56
include/boost/mpl/not.hpp
Normal file
56
include/boost/mpl/not.hpp
Normal file
@@ -0,0 +1,56 @@
|
|||||||
|
|
||||||
|
#ifndef BOOST_MPL_NOT_HPP_INCLUDED
|
||||||
|
#define BOOST_MPL_NOT_HPP_INCLUDED
|
||||||
|
|
||||||
|
// + file: boost/mpl/not.hpp
|
||||||
|
// + last modified: 25/feb/03
|
||||||
|
|
||||||
|
// Copyright (c) 2000-03
|
||||||
|
// Aleksey Gurtovoy
|
||||||
|
//
|
||||||
|
// Permission to use, copy, modify, distribute and sell this software
|
||||||
|
// and its documentation for any purpose is hereby granted without fee,
|
||||||
|
// provided that the above copyright notice appears in all copies and
|
||||||
|
// that both the copyright notice and this permission notice appear in
|
||||||
|
// supporting documentation. No representations are made about the
|
||||||
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
|
// without express or implied warranty.
|
||||||
|
//
|
||||||
|
// See http://www.boost.org/libs/mpl for documentation.
|
||||||
|
|
||||||
|
#include "boost/mpl/bool.hpp"
|
||||||
|
#include "boost/mpl/aux_/nested_type_wknd.hpp"
|
||||||
|
#include "boost/mpl/aux_/void_spec.hpp"
|
||||||
|
#include "boost/mpl/aux_/lambda_support.hpp"
|
||||||
|
|
||||||
|
namespace boost {
|
||||||
|
namespace mpl {
|
||||||
|
|
||||||
|
namespace aux {
|
||||||
|
|
||||||
|
template< long C_ > // 'long' is intentional here
|
||||||
|
struct not_impl
|
||||||
|
: bool_<!C_>
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
} // namespace aux
|
||||||
|
|
||||||
|
|
||||||
|
template<
|
||||||
|
typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T)
|
||||||
|
>
|
||||||
|
struct not_
|
||||||
|
: aux::not_impl<
|
||||||
|
BOOST_MPL_AUX_NESTED_TYPE_WKND(T)::value
|
||||||
|
>
|
||||||
|
{
|
||||||
|
BOOST_MPL_AUX_LAMBDA_SUPPORT(1,not_,(T))
|
||||||
|
};
|
||||||
|
|
||||||
|
BOOST_MPL_AUX_VOID_SPEC(1,not_)
|
||||||
|
|
||||||
|
} // namespace mpl
|
||||||
|
} // namespace boost
|
||||||
|
|
||||||
|
#endif // BOOST_MPL_NOT_HPP_INCLUDED
|
@@ -1,9 +1,11 @@
|
|||||||
//-----------------------------------------------------------------------------
|
|
||||||
// boost mpl/comparison/not_equal_to.hpp header file
|
#ifndef BOOST_MPL_NOT_EQUAL_TO_HPP_INCLUDED
|
||||||
// See http://www.boost.org for updates, documentation, and revision history.
|
#define BOOST_MPL_NOT_EQUAL_TO_HPP_INCLUDED
|
||||||
//-----------------------------------------------------------------------------
|
|
||||||
//
|
// + file: boost/mpl/not_equal_to.hpp
|
||||||
// Copyright (c) 2000-02
|
// + last modified: 25/feb/03
|
||||||
|
|
||||||
|
// Copyright (c) 2000-03
|
||||||
// Aleksey Gurtovoy
|
// Aleksey Gurtovoy
|
||||||
//
|
//
|
||||||
// Permission to use, copy, modify, distribute and sell this software
|
// Permission to use, copy, modify, distribute and sell this software
|
||||||
@@ -13,11 +15,10 @@
|
|||||||
// supporting documentation. No representations are made about the
|
// supporting documentation. No representations are made about the
|
||||||
// suitability of this software for any purpose. It is provided "as is"
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
// without express or implied warranty.
|
// without express or implied warranty.
|
||||||
|
//
|
||||||
|
// See http://www.boost.org/libs/mpl for documentation.
|
||||||
|
|
||||||
#ifndef BOOST_MPL_COMPARISON_NOT_EQUAL_TO_HPP_INCLUDED
|
#include "boost/mpl/bool.hpp"
|
||||||
#define BOOST_MPL_COMPARISON_NOT_EQUAL_TO_HPP_INCLUDED
|
|
||||||
|
|
||||||
#include "boost/mpl/bool_c.hpp"
|
|
||||||
#include "boost/mpl/integral_c.hpp"
|
#include "boost/mpl/integral_c.hpp"
|
||||||
#include "boost/mpl/aux_/value_wknd.hpp"
|
#include "boost/mpl/aux_/value_wknd.hpp"
|
||||||
#include "boost/mpl/aux_/void_spec.hpp"
|
#include "boost/mpl/aux_/void_spec.hpp"
|
||||||
@@ -39,9 +40,9 @@ struct not_equal_to
|
|||||||
));
|
));
|
||||||
|
|
||||||
#if !defined(__BORLANDC__)
|
#if !defined(__BORLANDC__)
|
||||||
typedef bool_c<value> type;
|
typedef bool_<value> type;
|
||||||
#else
|
#else
|
||||||
typedef bool_c<(
|
typedef bool_<(
|
||||||
BOOST_MPL_AUX_VALUE_WKND(T1)::value
|
BOOST_MPL_AUX_VALUE_WKND(T1)::value
|
||||||
!= BOOST_MPL_AUX_VALUE_WKND(T2)::value
|
!= BOOST_MPL_AUX_VALUE_WKND(T2)::value
|
||||||
)> type;
|
)> type;
|
||||||
@@ -69,4 +70,4 @@ struct ne
|
|||||||
} // namespace mpl
|
} // namespace mpl
|
||||||
} // namespace boost
|
} // namespace boost
|
||||||
|
|
||||||
#endif // BOOST_MPL_COMPARISON_NOT_EQUAL_TO_HPP_INCLUDED
|
#endif // BOOST_MPL_NOT_EQUAL_TO_HPP_INCLUDED
|
42
include/boost/mpl/or.hpp
Normal file
42
include/boost/mpl/or.hpp
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
|
||||||
|
#ifndef BOOST_MPL_OR_HPP_INCLUDED
|
||||||
|
#define BOOST_MPL_OR_HPP_INCLUDED
|
||||||
|
|
||||||
|
// + file: boost/mpl/or.hpp
|
||||||
|
// + last modified: 25/feb/03
|
||||||
|
|
||||||
|
// Copyright (c) 2000-03
|
||||||
|
// Aleksey Gurtovoy
|
||||||
|
//
|
||||||
|
// Permission to use, copy, modify, distribute and sell this software
|
||||||
|
// and its documentation for any purpose is hereby granted without fee,
|
||||||
|
// provided that the above copyright notice appears in all copies and
|
||||||
|
// that both the copyright notice and this permission notice appear in
|
||||||
|
// supporting documentation. No representations are made about the
|
||||||
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
|
// without express or implied warranty.
|
||||||
|
//
|
||||||
|
// See http://www.boost.org/libs/mpl for documentation.
|
||||||
|
|
||||||
|
#include "boost/mpl/aux_/config/use_preprocessed.hpp"
|
||||||
|
|
||||||
|
#if !defined(BOOST_MPL_NO_PREPROCESSED_HEADERS) \
|
||||||
|
&& !defined(BOOST_MPL_PREPROCESSING_MODE)
|
||||||
|
|
||||||
|
# include "boost/mpl/bool.hpp"
|
||||||
|
# include "boost/mpl/aux_/nested_type_wknd.hpp"
|
||||||
|
# include "boost/mpl/aux_/void_spec.hpp"
|
||||||
|
# include "boost/mpl/aux_/lambda_support.hpp"
|
||||||
|
|
||||||
|
# define BOOST_MPL_PREPROCESSED_HEADER or.hpp
|
||||||
|
# include "boost/mpl/aux_/include_preprocessed.hpp"
|
||||||
|
|
||||||
|
#else
|
||||||
|
|
||||||
|
# define AUX_LOGICAL_OP_NAME or_
|
||||||
|
# define AUX_LOGICAL_OP_VALUE1 true
|
||||||
|
# define AUX_LOGICAL_OP_VALUE2 false
|
||||||
|
# include "boost/mpl/aux_/logical_op.hpp"
|
||||||
|
|
||||||
|
#endif // BOOST_MPL_USE_PREPROCESSED_HEADERS
|
||||||
|
#endif // BOOST_MPL_OR_HPP_INCLUDED
|
80
include/boost/mpl/placeholders.hpp
Normal file
80
include/boost/mpl/placeholders.hpp
Normal file
@@ -0,0 +1,80 @@
|
|||||||
|
|
||||||
|
#if !defined(BOOST_PP_IS_ITERATING)
|
||||||
|
|
||||||
|
///// header body
|
||||||
|
|
||||||
|
#ifndef BOOST_MPL_PLACEHOLDERS_HPP_INCLUDED
|
||||||
|
#define BOOST_MPL_PLACEHOLDERS_HPP_INCLUDED
|
||||||
|
|
||||||
|
// + file: boost/mpl/placeholders.hpp
|
||||||
|
// + last modified: 25/feb/03
|
||||||
|
|
||||||
|
// Copyright (c) 2001-03
|
||||||
|
// Peter Dimov, Aleksey Gurtovoy
|
||||||
|
//
|
||||||
|
// Permission to use, copy, modify, distribute and sell this software
|
||||||
|
// and its documentation for any purpose is hereby granted without fee,
|
||||||
|
// provided that the above copyright notice appears in all copies and
|
||||||
|
// that both the copyright notice and this permission notice appear in
|
||||||
|
// supporting documentation. No representations are made about the
|
||||||
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
|
// without express or implied warranty.
|
||||||
|
//
|
||||||
|
// See http://www.boost.org/libs/mpl for documentation.
|
||||||
|
|
||||||
|
#if !defined(BOOST_MPL_PREPROCESSING_MODE)
|
||||||
|
# include "boost/mpl/arg.hpp"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include "boost/mpl/aux_/config/use_preprocessed.hpp"
|
||||||
|
|
||||||
|
#if !defined(BOOST_MPL_NO_PREPROCESSED_HEADERS) \
|
||||||
|
&& !defined(BOOST_MPL_PREPROCESSING_MODE)
|
||||||
|
|
||||||
|
# define BOOST_MPL_PREPROCESSED_HEADER placeholders.hpp
|
||||||
|
# include "boost/mpl/aux_/include_preprocessed.hpp"
|
||||||
|
|
||||||
|
#else
|
||||||
|
|
||||||
|
# include "boost/mpl/aux_/config/nttp.hpp"
|
||||||
|
# include "boost/mpl/limits/arity.hpp"
|
||||||
|
# include "boost/preprocessor/iterate.hpp"
|
||||||
|
# include "boost/preprocessor/cat.hpp"
|
||||||
|
|
||||||
|
namespace boost {
|
||||||
|
namespace mpl {
|
||||||
|
|
||||||
|
// watch out for GNU gettext users, who #define _(x)
|
||||||
|
#if !defined(_) || defined(BOOST_MPL_NO_UNNAMED_PLACEHOLDER_SUPPORT)
|
||||||
|
typedef arg<-1> _;
|
||||||
|
|
||||||
|
namespace placeholders {
|
||||||
|
using boost::mpl::_;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
//: agurt, 17/mar/02: one more placeholder for the last 'apply#'
|
||||||
|
//: specialization
|
||||||
|
#define BOOST_PP_ITERATION_PARAMS_1 \
|
||||||
|
(3,(1, BOOST_MPL_METAFUNCTION_MAX_ARITY + 1, "boost/mpl/placeholders.hpp"))
|
||||||
|
#include BOOST_PP_ITERATE()
|
||||||
|
|
||||||
|
} // namespace mpl
|
||||||
|
} // namespace boost
|
||||||
|
|
||||||
|
#endif // BOOST_MPL_USE_PREPROCESSED_HEADERS
|
||||||
|
#endif // BOOST_MPL_PLACEHOLDERS_HPP_INCLUDED
|
||||||
|
|
||||||
|
///// iteration
|
||||||
|
|
||||||
|
#else
|
||||||
|
#define i BOOST_PP_FRAME_ITERATION(1)
|
||||||
|
|
||||||
|
typedef arg<i> BOOST_PP_CAT(_,i);
|
||||||
|
|
||||||
|
namespace placeholders {
|
||||||
|
using boost::mpl::BOOST_PP_CAT(_,i);
|
||||||
|
}
|
||||||
|
|
||||||
|
#undef i
|
||||||
|
#endif // BOOST_PP_IS_ITERATING
|
@@ -1,9 +1,11 @@
|
|||||||
//-----------------------------------------------------------------------------
|
|
||||||
// boost mpl/arithmetic/plus.hpp header file
|
#ifndef BOOST_MPL_PLUS_HPP_INCLUDED
|
||||||
// See http://www.boost.org for updates, documentation, and revision history.
|
#define BOOST_MPL_PLUS_HPP_INCLUDED
|
||||||
//-----------------------------------------------------------------------------
|
|
||||||
//
|
// + file: boost/mpl/plus.hpp
|
||||||
// Copyright (c) 2000-02
|
// + last modified: 25/feb/03
|
||||||
|
|
||||||
|
// Copyright (c) 2000-03
|
||||||
// Aleksey Gurtovoy
|
// Aleksey Gurtovoy
|
||||||
//
|
//
|
||||||
// Permission to use, copy, modify, distribute and sell this software
|
// Permission to use, copy, modify, distribute and sell this software
|
||||||
@@ -13,9 +15,8 @@
|
|||||||
// supporting documentation. No representations are made about the
|
// supporting documentation. No representations are made about the
|
||||||
// suitability of this software for any purpose. It is provided "as is"
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
// without express or implied warranty.
|
// without express or implied warranty.
|
||||||
|
//
|
||||||
#ifndef BOOST_MPL_ARITHMETIC_PLUS_HPP_INCLUDED
|
// See http://www.boost.org/libs/mpl for documentation.
|
||||||
#define BOOST_MPL_ARITHMETIC_PLUS_HPP_INCLUDED
|
|
||||||
|
|
||||||
#include "boost/mpl/integral_c.hpp"
|
#include "boost/mpl/integral_c.hpp"
|
||||||
#include "boost/mpl/aux_/typeof.hpp"
|
#include "boost/mpl/aux_/typeof.hpp"
|
||||||
@@ -67,4 +68,4 @@ BOOST_MPL_AUX_VOID_SPEC_EXT(2,5,plus)
|
|||||||
} // namespace mpl
|
} // namespace mpl
|
||||||
} // namespace boost
|
} // namespace boost
|
||||||
|
|
||||||
#endif // BOOST_MPL_ARITHMETIC_PLUS_HPP_INCLUDED
|
#endif // BOOST_MPL_PLUS_HPP_INCLUDED
|
@@ -17,7 +17,7 @@
|
|||||||
#ifndef BOOST_MPL_SAME_AS_HPP_INCLUDED
|
#ifndef BOOST_MPL_SAME_AS_HPP_INCLUDED
|
||||||
#define BOOST_MPL_SAME_AS_HPP_INCLUDED
|
#define BOOST_MPL_SAME_AS_HPP_INCLUDED
|
||||||
|
|
||||||
#include "boost/mpl/logical/not.hpp"
|
#include "boost/mpl/not.hpp"
|
||||||
#include "boost/mpl/aux_/lambda_spec.hpp"
|
#include "boost/mpl/aux_/lambda_spec.hpp"
|
||||||
#include "boost/type_traits/is_same.hpp"
|
#include "boost/type_traits/is_same.hpp"
|
||||||
|
|
||||||
@@ -43,11 +43,11 @@ struct not_same_as
|
|||||||
{
|
{
|
||||||
template< typename T2 > struct apply
|
template< typename T2 > struct apply
|
||||||
#if !defined(__BORLANDC__) || (__BORLANDC__ > 0x51 && defined(BOOST_STRICT_CONFIG))
|
#if !defined(__BORLANDC__) || (__BORLANDC__ > 0x51 && defined(BOOST_STRICT_CONFIG))
|
||||||
: logical_not< is_same<T1,T2> >
|
: not_< is_same<T1,T2> >
|
||||||
{
|
{
|
||||||
#else
|
#else
|
||||||
{
|
{
|
||||||
typedef typename logical_not< is_same<T1,T2> >::type type;
|
typedef typename not_< is_same<T1,T2> >::type type;
|
||||||
#endif
|
#endif
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
64
include/boost/mpl/shift_left.hpp
Normal file
64
include/boost/mpl/shift_left.hpp
Normal file
@@ -0,0 +1,64 @@
|
|||||||
|
|
||||||
|
#ifndef BOOST_MPL_SHIFT_LEFT_HPP_INCLUDED
|
||||||
|
#define BOOST_MPL_SHIFT_LEFT_HPP_INCLUDED
|
||||||
|
|
||||||
|
// + file: boost/mpl/shift_left.hpp
|
||||||
|
// + last modified: 25/feb/03
|
||||||
|
|
||||||
|
// Copyright (c) 2000-03
|
||||||
|
// Aleksey Gurtovoy, Jaap Suter
|
||||||
|
//
|
||||||
|
// Permission to use, copy, modify, distribute and sell this software
|
||||||
|
// and its documentation for any purpose is hereby granted without fee,
|
||||||
|
// provided that the above copyright notice appears in all copies and
|
||||||
|
// that both the copyright notice and this permission notice appear in
|
||||||
|
// supporting documentation. No representations are made about the
|
||||||
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
|
// without express or implied warranty.
|
||||||
|
//
|
||||||
|
// See http://www.boost.org/libs/mpl for documentation.
|
||||||
|
|
||||||
|
#include "boost/mpl/integral_c.hpp"
|
||||||
|
#include "boost/mpl/aux_/typeof.hpp"
|
||||||
|
#include "boost/mpl/aux_/value_wknd.hpp"
|
||||||
|
#include "boost/mpl/aux_/void_spec.hpp"
|
||||||
|
#include "boost/mpl/aux_/lambda_support.hpp"
|
||||||
|
#include "boost/config.hpp"
|
||||||
|
|
||||||
|
namespace boost {
|
||||||
|
namespace mpl {
|
||||||
|
|
||||||
|
template<
|
||||||
|
typename T, T N, typename ShiftT, ShiftT Shift
|
||||||
|
>
|
||||||
|
struct shift_left_c
|
||||||
|
{
|
||||||
|
BOOST_STATIC_CONSTANT(T, value = (N << Shift));
|
||||||
|
#if !defined(__BORLANDC__)
|
||||||
|
typedef integral_c<T,value> type;
|
||||||
|
#else
|
||||||
|
typedef integral_c<T,(N << Shift)> type;
|
||||||
|
#endif
|
||||||
|
};
|
||||||
|
|
||||||
|
template<
|
||||||
|
typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T)
|
||||||
|
, typename BOOST_MPL_AUX_VOID_SPEC_PARAM(Shift)
|
||||||
|
>
|
||||||
|
struct shift_left
|
||||||
|
: shift_left_c<
|
||||||
|
BOOST_MPL_AUX_TYPEOF(T, T::value)
|
||||||
|
, BOOST_MPL_AUX_MSVC_VALUE_WKND(T)::value
|
||||||
|
, BOOST_MPL_AUX_TYPEOF(Shift, Shift::value)
|
||||||
|
, BOOST_MPL_AUX_MSVC_VALUE_WKND(Shift)::value
|
||||||
|
>
|
||||||
|
{
|
||||||
|
BOOST_MPL_AUX_LAMBDA_SUPPORT(2, shift_left, (T,Shift))
|
||||||
|
};
|
||||||
|
|
||||||
|
BOOST_MPL_AUX_VOID_SPEC(2,shift_left)
|
||||||
|
|
||||||
|
} // namespace mpl
|
||||||
|
} // namespace boost
|
||||||
|
|
||||||
|
#endif // BOOST_MPL_SHIFT_LEFT_HPP_INCLUDED
|
64
include/boost/mpl/shift_right.hpp
Normal file
64
include/boost/mpl/shift_right.hpp
Normal file
@@ -0,0 +1,64 @@
|
|||||||
|
|
||||||
|
#ifndef BOOST_MPL_SHIFT_RIGHT_HPP_INCLUDED
|
||||||
|
#define BOOST_MPL_SHIFT_RIGHT_HPP_INCLUDED
|
||||||
|
|
||||||
|
// + file: boost/mpl/shift_right.hpp
|
||||||
|
// + last modified: 25/feb/03
|
||||||
|
|
||||||
|
// Copyright (c) 2000-03
|
||||||
|
// Aleksey Gurtovoy, Jaap Suter
|
||||||
|
//
|
||||||
|
// Permission to use, copy, modify, distribute and sell this software
|
||||||
|
// and its documentation for any purpose is hereby granted without fee,
|
||||||
|
// provided that the above copyright notice appears in all copies and
|
||||||
|
// that both the copyright notice and this permission notice appear in
|
||||||
|
// supporting documentation. No representations are made about the
|
||||||
|
// suitability of this software for any purpose. It is provided "as is"
|
||||||
|
// without express or implied warranty.
|
||||||
|
//
|
||||||
|
// See http://www.boost.org/libs/mpl for documentation.
|
||||||
|
|
||||||
|
#include "boost/mpl/integral_c.hpp"
|
||||||
|
#include "boost/mpl/aux_/typeof.hpp"
|
||||||
|
#include "boost/mpl/aux_/value_wknd.hpp"
|
||||||
|
#include "boost/mpl/aux_/void_spec.hpp"
|
||||||
|
#include "boost/mpl/aux_/lambda_support.hpp"
|
||||||
|
#include "boost/config.hpp"
|
||||||
|
|
||||||
|
namespace boost {
|
||||||
|
namespace mpl {
|
||||||
|
|
||||||
|
template<
|
||||||
|
typename T, T N, typename ShiftT, ShiftT Shift
|
||||||
|
>
|
||||||
|
struct shift_right_c
|
||||||
|
{
|
||||||
|
BOOST_STATIC_CONSTANT(T, value = (N >> Shift));
|
||||||
|
#if !defined(__BORLANDC__)
|
||||||
|
typedef integral_c<T,value> type;
|
||||||
|
#else
|
||||||
|
typedef integral_c<T,(N >> Shift)> type;
|
||||||
|
#endif
|
||||||
|
};
|
||||||
|
|
||||||
|
template<
|
||||||
|
typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T)
|
||||||
|
, typename BOOST_MPL_AUX_VOID_SPEC_PARAM(Shift)
|
||||||
|
>
|
||||||
|
struct shift_right
|
||||||
|
: shift_right_c<
|
||||||
|
BOOST_MPL_AUX_TYPEOF(T, T::value)
|
||||||
|
, BOOST_MPL_AUX_MSVC_VALUE_WKND(T)::value
|
||||||
|
, BOOST_MPL_AUX_TYPEOF(Shift, Shift::value)
|
||||||
|
, BOOST_MPL_AUX_MSVC_VALUE_WKND(Shift)::value
|
||||||
|
>
|
||||||
|
{
|
||||||
|
BOOST_MPL_AUX_LAMBDA_SUPPORT(2, shift_right, (T,Shift))
|
||||||
|
};
|
||||||
|
|
||||||
|
BOOST_MPL_AUX_VOID_SPEC(2,shift_right)
|
||||||
|
|
||||||
|
} // namespace mpl
|
||||||
|
} // namespace boost
|
||||||
|
|
||||||
|
#endif // BOOST_MPL_SHIFT_RIGHT_HPP_INCLUDED
|
@@ -17,7 +17,7 @@
|
|||||||
#ifndef BOOST_MPL_UPPER_BOUND_HPP_INCLUDED
|
#ifndef BOOST_MPL_UPPER_BOUND_HPP_INCLUDED
|
||||||
#define BOOST_MPL_UPPER_BOUND_HPP_INCLUDED
|
#define BOOST_MPL_UPPER_BOUND_HPP_INCLUDED
|
||||||
|
|
||||||
#include "boost/mpl/comparison/less.hpp"
|
#include "boost/mpl/less.hpp"
|
||||||
#include "boost/mpl/lambda.hpp"
|
#include "boost/mpl/lambda.hpp"
|
||||||
#include "boost/mpl/aux_/void_spec.hpp"
|
#include "boost/mpl/aux_/void_spec.hpp"
|
||||||
|
|
||||||
@@ -26,13 +26,13 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if !defined(BOOST_MPL_CFG_STRIPPED_DOWN_UPPER_BOUND_IMPL)
|
#if !defined(BOOST_MPL_CFG_STRIPPED_DOWN_UPPER_BOUND_IMPL)
|
||||||
# include "boost/mpl/arithmetic/minus.hpp"
|
# include "boost/mpl/minus.hpp"
|
||||||
# include "boost/mpl/arithmetic/divides.hpp"
|
# include "boost/mpl/divides.hpp"
|
||||||
# include "boost/mpl/size.hpp"
|
# include "boost/mpl/size.hpp"
|
||||||
# include "boost/mpl/advance.hpp"
|
# include "boost/mpl/advance.hpp"
|
||||||
# include "boost/mpl/begin_end.hpp"
|
# include "boost/mpl/begin_end.hpp"
|
||||||
# include "boost/mpl/integral_c.hpp"
|
# include "boost/mpl/integral_c.hpp"
|
||||||
# include "boost/mpl/int_c.hpp"
|
# include "boost/mpl/int.hpp"
|
||||||
# include "boost/mpl/apply_if.hpp"
|
# include "boost/mpl/apply_if.hpp"
|
||||||
# include "boost/mpl/apply.hpp"
|
# include "boost/mpl/apply.hpp"
|
||||||
# include "boost/mpl/aux_/apply.hpp"
|
# include "boost/mpl/aux_/apply.hpp"
|
||||||
|
@@ -17,12 +17,12 @@
|
|||||||
#ifndef BOOST_MPL_V2_1_INT_HPP_INCLUDED
|
#ifndef BOOST_MPL_V2_1_INT_HPP_INCLUDED
|
||||||
#define BOOST_MPL_V2_1_INT_HPP_INCLUDED
|
#define BOOST_MPL_V2_1_INT_HPP_INCLUDED
|
||||||
|
|
||||||
#include "boost/mpl/int_c.hpp"
|
#include "boost/mpl/int.hpp"
|
||||||
#include "boost/mpl/aux_/config/nttp.hpp"
|
#include "boost/mpl/aux_/config/nttp.hpp"
|
||||||
|
|
||||||
namespace boost { namespace mpl { namespace v2_1 {
|
namespace boost { namespace mpl { namespace v2_1 {
|
||||||
|
|
||||||
template< BOOST_MPL_AUX_NTTP_DECL(int, N) > struct int_ : mpl::int_c<N> {};
|
template< BOOST_MPL_AUX_NTTP_DECL(int, N) > struct int_ : mpl::int_<N> {};
|
||||||
|
|
||||||
}}} // namespace boost::mpl::v2_1
|
}}} // namespace boost::mpl::v2_1
|
||||||
|
|
||||||
|
@@ -18,8 +18,8 @@
|
|||||||
#define BOOST_MPL_VECTOR_AUX_EMPTY_HPP_INCLUDED
|
#define BOOST_MPL_VECTOR_AUX_EMPTY_HPP_INCLUDED
|
||||||
|
|
||||||
#include "boost/mpl/empty_fwd.hpp"
|
#include "boost/mpl/empty_fwd.hpp"
|
||||||
#include "boost/mpl/logical/not.hpp"
|
#include "boost/mpl/not.hpp"
|
||||||
#include "boost/mpl/bool_c.hpp"
|
#include "boost/mpl/bool.hpp"
|
||||||
#include "boost/mpl/vector/aux_/tag.hpp"
|
#include "boost/mpl/vector/aux_/tag.hpp"
|
||||||
#include "boost/mpl/aux_/config/vector.hpp"
|
#include "boost/mpl/aux_/config/vector.hpp"
|
||||||
#include "boost/config.hpp"
|
#include "boost/config.hpp"
|
||||||
@@ -33,7 +33,7 @@ template<>
|
|||||||
struct empty_traits< aux::vector_tag >
|
struct empty_traits< aux::vector_tag >
|
||||||
{
|
{
|
||||||
template< typename Vector > struct algorithm
|
template< typename Vector > struct algorithm
|
||||||
: logical_not< typename Vector::size >
|
: not_< typename Vector::size >
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -44,7 +44,7 @@ template<>
|
|||||||
struct empty_traits< aux::vector_tag<0> >
|
struct empty_traits< aux::vector_tag<0> >
|
||||||
{
|
{
|
||||||
template< typename Vector > struct algorithm
|
template< typename Vector > struct algorithm
|
||||||
: true_c
|
: true_
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -55,7 +55,7 @@ template< long N >
|
|||||||
struct empty_traits< aux::vector_tag<N> >
|
struct empty_traits< aux::vector_tag<N> >
|
||||||
{
|
{
|
||||||
template< typename Vector > struct algorithm
|
template< typename Vector > struct algorithm
|
||||||
: false_c
|
: false_
|
||||||
{
|
{
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user