diff --git a/include/boost/mpl/aux_/void_spec.hpp b/include/boost/mpl/aux_/void_spec.hpp index f9cbb2d..286eeaf 100644 --- a/include/boost/mpl/aux_/void_spec.hpp +++ b/include/boost/mpl/aux_/void_spec.hpp @@ -70,10 +70,6 @@ struct name< BOOST_MPL_AUX_VOID_SPEC_PARAMS(i) > \ { \ }; \ }; \ -\ -namespace v2_1 { \ -/*struct name : ::boost::mpl::name<> {}; breaks mpl::if_<...> */ \ -} \ /**/ #if defined(BOOST_MPL_NO_FULL_LAMBDA_SUPPORT) diff --git a/include/boost/mpl/bool_c.hpp b/include/boost/mpl/bool_c.hpp deleted file mode 100644 index 7c466b6..0000000 --- a/include/boost/mpl/bool_c.hpp +++ /dev/null @@ -1,40 +0,0 @@ -//----------------------------------------------------------------------------- -// boost mpl/bool_c.hpp header file -// See http://www.boost.org for updates, documentation, and revision history. -//----------------------------------------------------------------------------- -// -// Copyright (c) 2000-02 -// 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. - -#ifndef BOOST_MPL_BOOL_C_HPP_INCLUDED -#define BOOST_MPL_BOOL_C_HPP_INCLUDED - -#include "boost/mpl/aux_/config/static_constant.hpp" - -namespace boost { -namespace mpl { - -template< bool C > struct bool_c -{ - BOOST_STATIC_CONSTANT(bool, value = C); - typedef bool_c type; - typedef bool value_type; - operator bool() const { return this->value; } -}; - -// shorcuts -typedef bool_c true_c; -typedef bool_c false_c; - -} // namespace mpl -} // namespace boost - -#endif // BOOST_MPL_BOOL_C_HPP_INCLUDED diff --git a/include/boost/mpl/compose.hpp b/include/boost/mpl/compose.hpp deleted file mode 100644 index a94a062..0000000 --- a/include/boost/mpl/compose.hpp +++ /dev/null @@ -1,27 +0,0 @@ -//----------------------------------------------------------------------------- -// boost mpl/compose.hpp header file -// See http://www.boost.org for updates, documentation, and revision history. -//----------------------------------------------------------------------------- -// -// Copyright (c) 2000-02 -// 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. - -#ifndef BOOST_MPL_COMPOSE_HPP_INCLUDED -#define BOOST_MPL_COMPOSE_HPP_INCLUDED - -#include "boost/mpl/compose/f_gx.hpp" -#include "boost/mpl/compose/f_gx_hx.hpp" -#include "boost/mpl/compose/f_gx_hy.hpp" -#include "boost/mpl/compose/f_gxy.hpp" -#include "boost/mpl/compose/f_x_hy.hpp" -#include "boost/mpl/compose/f_x_x.hpp" - -#endif // BOOST_MPL_COMPOSE_HPP_INCLUDED diff --git a/include/boost/mpl/compose/f_gx.hpp b/include/boost/mpl/compose/f_gx.hpp deleted file mode 100644 index a6e7012..0000000 --- a/include/boost/mpl/compose/f_gx.hpp +++ /dev/null @@ -1,61 +0,0 @@ -//----------------------------------------------------------------------------- -// boost mpl/compose.hpp header file -// See http://www.boost.org for updates, documentation, and revision history. -//----------------------------------------------------------------------------- -// -// Copyright (c) 2000-02 -// 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. - -#ifndef BOOST_MPL_COMPOSE_F_GX_HPP_INCLXDED -#define BOOST_MPL_COMPOSE_F_GX_HPP_INCLXDED - -#include "boost/mpl/apply.hpp" -#include "boost/mpl/aux_/lambda_spec.hpp" - -namespace boost { -namespace mpl { - -namespace aux { - -template< - typename F - , typename G - , typename X - > -struct f_gx -{ - private: - typedef typename apply1::type P; - - public: - typedef apply1 type; -}; - -} // namespace aux - -template< - typename F - , typename G - > -struct compose_f_gx -{ - template< typename X > struct apply - : aux::f_gx::type - { - }; -}; - -BOOST_MPL_AUX_PASS_THROUGH_LAMBDA_SPEC(2,compose_f_gx) - -} // namespace mpl -} // namespace boost - -#endif // BOOST_MPL_COMPOSE_F_GX_HPP_INCLXDED diff --git a/include/boost/mpl/compose/f_gx_hx.hpp b/include/boost/mpl/compose/f_gx_hx.hpp deleted file mode 100644 index 52f5baa..0000000 --- a/include/boost/mpl/compose/f_gx_hx.hpp +++ /dev/null @@ -1,64 +0,0 @@ -//----------------------------------------------------------------------------- -// boost mpl/compose/f_gx_hx.hpp header file -// See http://www.boost.org for updates, documentation, and revision history. -//----------------------------------------------------------------------------- -// -// Copyright (c) 2000-02 -// 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. - -#ifndef BOOST_MPL_COMPOSE_F_GX_HX_HPP_INCLXDED -#define BOOST_MPL_COMPOSE_F_GX_HX_HPP_INCLXDED - -#include "boost/mpl/apply.hpp" -#include "boost/mpl/aux_/lambda_spec.hpp" - -namespace boost { -namespace mpl { - -namespace aux { - -template< - typename F - , typename G - , typename H - , typename X - > -struct f_gx_hx -{ - private: - typedef typename apply1::type P1; - typedef typename apply1::type P2; - - public: - typedef apply2 type; -}; - -} // namespace aux - -template< - typename F - , typename G - , typename H - > -struct compose_f_gx_hx -{ - template< typename X > struct apply - : aux::f_gx_hx::type - { - }; -}; - -BOOST_MPL_AUX_PASS_THROUGH_LAMBDA_SPEC(3,compose_f_gx_hx) - -} // namespace mpl -} // namespace boost - -#endif // BOOST_MPL_COMPOSE_F_GX_HX_HPP_INCLXDED diff --git a/include/boost/mpl/compose/f_gx_hy.hpp b/include/boost/mpl/compose/f_gx_hy.hpp deleted file mode 100644 index 6150e5c..0000000 --- a/include/boost/mpl/compose/f_gx_hy.hpp +++ /dev/null @@ -1,65 +0,0 @@ -//----------------------------------------------------------------------------- -// boost mpl/compose/f_gx_hy.hpp header file -// See http://www.boost.org for updates, documentation, and revision history. -//----------------------------------------------------------------------------- -// -// Copyright (c) 2000-02 -// 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. - -#ifndef BOOST_MPL_COMPOSE_F_GX_HY_HPP_INCLUDED -#define BOOST_MPL_COMPOSE_F_GX_HY_HPP_INCLUDED - -#include "boost/mpl/apply.hpp" -#include "boost/mpl/aux_/lambda_spec.hpp" - -namespace boost { -namespace mpl { - -namespace aux { - -template< - typename F - , typename G - , typename H - , typename X - , typename Y - > -struct f_gx_hy -{ - private: - typedef typename apply1::type P1; - typedef typename apply1::type P2; - - public: - typedef apply2 type; -}; - -} // namespace aux - -template< - typename F - , typename G - , typename H - > -struct compose_f_gx_hy -{ - template< typename X, typename Y > struct apply - : aux::f_gx_hy - { - }; -}; - -BOOST_MPL_AUX_PASS_THROUGH_LAMBDA_SPEC(3,compose_f_gx_hy) - -} // namespace mpl -} // namespace boost - -#endif // BOOST_MPL_COMPOSE_F_GX_HY_HPP_INCLUDED diff --git a/include/boost/mpl/compose/f_gxy.hpp b/include/boost/mpl/compose/f_gxy.hpp deleted file mode 100644 index 35891e3..0000000 --- a/include/boost/mpl/compose/f_gxy.hpp +++ /dev/null @@ -1,75 +0,0 @@ -//----------------------------------------------------------------------------- -// boost mpl/compose/f_gxy.hpp header file -// See http://www.boost.org for updates, documentation, and revision history. -//----------------------------------------------------------------------------- -// -// Copyright (c) 2000-02 -// 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. - -#ifndef BOOST_MPL_COMPOSE_F_GXY_HPP_INCLUDED -#define BOOST_MPL_COMPOSE_F_GXY_HPP_INCLUDED - -#include "boost/mpl/apply.hpp" -#include "boost/mpl/aux_/lambda_spec.hpp" - -namespace boost { -namespace mpl { - -namespace aux { - -template< - typename F - , typename G - , typename X - , typename Y - > -struct f_gxy -{ - private: - typedef typename apply2::type P; - - public: - typedef apply1 type; -}; - -} // namespace aux - -template< - typename F - , typename G - > -struct compose_f_gxy -{ - template< typename X, typename Y > struct apply - : aux::f_gxy::type - { - }; -}; - -template< - typename F - , typename G - > -struct compose_f_gyx -{ - template< typename X, typename Y > struct apply - : aux::f_gxy::type - { - }; -}; - -BOOST_MPL_AUX_PASS_THROUGH_LAMBDA_SPEC(2,compose_f_gxy) -BOOST_MPL_AUX_PASS_THROUGH_LAMBDA_SPEC(2,compose_f_gyx) - -} // namespace mpl -} // namespace boost - -#endif // BOOST_MPL_COMPOSE_F_GXY_HPP_INCLUDED diff --git a/include/boost/mpl/compose/f_x_hy.hpp b/include/boost/mpl/compose/f_x_hy.hpp deleted file mode 100644 index 218c512..0000000 --- a/include/boost/mpl/compose/f_x_hy.hpp +++ /dev/null @@ -1,62 +0,0 @@ -//----------------------------------------------------------------------------- -// boost mpl/compose/f_x_hy.hpp header file -// See http://www.boost.org for updates, documentation, and revision history. -//----------------------------------------------------------------------------- -// -// Copyright (c) 2000-02 -// 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. - -#ifndef BOOST_MPL_COMPOSE_F_X_HY_HPP_INCLUDED -#define BOOST_MPL_COMPOSE_F_X_HY_HPP_INCLUDED - -#include "boost/mpl/apply.hpp" -#include "boost/mpl/aux_/lambda_spec.hpp" - -namespace boost { -namespace mpl { - -namespace aux { - -template< - typename F - , typename H - , typename X - , typename Y - > -struct f_x_hy -{ - private: - typedef typename apply1::type P2; - - public: - typedef apply2 type; -}; - -} // namespace aux - -template< - typename F - , typename H - > -struct compose_f_x_hy -{ - template< typename X, typename Y > struct apply - : aux::f_x_hy::type - { - }; -}; - -BOOST_MPL_AUX_PASS_THROUGH_LAMBDA_SPEC(2,compose_f_x_hy) - -} // namespace mpl -} // namespace boost - -#endif // BOOST_MPL_COMPOSE_F_X_HY_HPP_INCLUDED diff --git a/include/boost/mpl/compose/f_x_x.hpp b/include/boost/mpl/compose/f_x_x.hpp deleted file mode 100644 index c316886..0000000 --- a/include/boost/mpl/compose/f_x_x.hpp +++ /dev/null @@ -1,55 +0,0 @@ -//----------------------------------------------------------------------------- -// boost mpl/compose/f_x_x.hpp header file -// See http://www.boost.org for updates, documentation, and revision history. -//----------------------------------------------------------------------------- -// -// Copyright (c) 2000-02 -// 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. - -#ifndef BOOST_MPL_COMPOSE_F_X_X_HPP_INCLXDED -#define BOOST_MPL_COMPOSE_F_X_X_HPP_INCLXDED - -#include "boost/mpl/apply.hpp" -#include "boost/mpl/aux_/lambda_spec.hpp" - -namespace boost { -namespace mpl { - -namespace aux { - -template< - typename F - , typename X - > -struct f_x_x -{ - typedef apply2 type; -}; - -} // namespace aux - -template< - typename F - > -struct compose_f_x_x -{ - template< typename X > struct apply - : aux::f_x_x::type - { - }; -}; - -BOOST_MPL_AUX_PASS_THROUGH_LAMBDA_SPEC(1,compose_f_x_x) - -} // namespace mpl -} // namespace boost - -#endif // BOOST_MPL_COMPOSE_F_X_X_HPP_INCLXDED diff --git a/include/boost/mpl/int_c.hpp b/include/boost/mpl/int_c.hpp deleted file mode 100644 index 7f1b577..0000000 --- a/include/boost/mpl/int_c.hpp +++ /dev/null @@ -1,58 +0,0 @@ -//----------------------------------------------------------------------------- -// boost mpl/int_c.hpp header file -// See http://www.boost.org for updates, documentation, and revision history. -//----------------------------------------------------------------------------- -// -// Copyright (c) 2000-02 -// 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. - -#ifndef BOOST_MPL_INT_C_HPP_INCLUDED -#define BOOST_MPL_INT_C_HPP_INCLUDED - -#include "boost/mpl/aux_/config/nttp.hpp" -#include "boost/mpl/aux_/config/static_constant.hpp" - -namespace boost { -namespace mpl { - -template< BOOST_MPL_AUX_NTTP_DECL(int, N) > -struct int_c -{ - BOOST_STATIC_CONSTANT(int, value = N); - typedef int_c type; - typedef int 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 defined(__EDG_VERSION__) && __EDG_VERSION__ <= 243 - private: - BOOST_STATIC_CONSTANT(int, next_value = (N + 1)); - BOOST_STATIC_CONSTANT(int, prior_value = (N - 1)); - public: - typedef int_c next; - typedef int_c prior; -#elif defined(__BORLANDC__) && (__BORLANDC__ <= 0x561 || !defined(BOOST_STRICT_CONFIG)) \ - || defined(__IBMCPP__) && (__IBMCPP__ <= 502 || !defined(BOOST_STRICT_CONFIG)) - typedef int_c<(N + 1)> next; - typedef int_c<(N - 1)> prior; -#else - typedef int_c<(value + 1)> next; - typedef int_c<(value - 1)> prior; -#endif - - operator int() const { return this->value; } -}; - -} // namespace mpl -} // namespace boost - -#endif // BOOST_MPL_INT_C_HPP_INCLUDED diff --git a/include/boost/mpl/logical/and.hpp b/include/boost/mpl/logical/and.hpp deleted file mode 100644 index 8661ae2..0000000 --- a/include/boost/mpl/logical/and.hpp +++ /dev/null @@ -1,131 +0,0 @@ -//----------------------------------------------------------------------------- -// boost mpl/logical/and.hpp header file -// See http://www.boost.org for updates, documentation, and revision history. -//----------------------------------------------------------------------------- -// -// Copyright (c) 2000-02 -// 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. - -#ifndef BOOST_MPL_LOGICAL_AND_HPP_INCLUDED -#define BOOST_MPL_LOGICAL_AND_HPP_INCLUDED - -#include "boost/mpl/bool_c.hpp" -#include "boost/mpl/aux_/nested_type_wknd.hpp" -#include "boost/mpl/aux_/void_spec.hpp" -#include "boost/mpl/aux_/lambda_support.hpp" -#include "boost/config.hpp" - -namespace boost { -namespace mpl { - -namespace aux { - -#if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) - -template< - bool C, typename T1, typename T2, typename T3, typename T4 - > -struct logical_and_impl - : false_c -{ -}; - -template< - typename T1, typename T2, typename T3, typename T4 - > -struct logical_and_impl - : logical_and_impl< - BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value,T2,T3,T4,true_c - > -{ -}; - -template<> -struct logical_and_impl - : true_c -{ -}; - -#else - -template< bool C > struct logical_and_impl -{ - template< - typename T1, typename T2, typename T3, typename T4 - > - struct result_ - : false_c - { - }; -}; - -template<> struct logical_and_impl -{ - template< - typename T1, typename T2, typename T3, typename T4 - > - struct result_ - : logical_and_impl< BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value > - ::template result_ - { - }; - -#if defined(BOOST_MSVC) && BOOST_MSVC == 1300 - template<> - struct result_ - : true_c - { - }; -}; -#else -}; - -template<> -struct logical_and_impl::result_ - : true_c -{ -}; -#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) - , typename T3 = true_c - , typename T4 = true_c - , typename T5 = true_c - > -struct logical_and -#if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) - : aux::logical_and_impl< - BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value,T2,T3,T4,T5 - > -#else - : aux::logical_and_impl< BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value > - ::template result_ -#endif -{ - BOOST_MPL_AUX_LAMBDA_SUPPORT(5,logical_and,(T1,T2,T3,T4,T5)) -}; - -BOOST_MPL_AUX_VOID_SPEC_EXT(2,5,logical_and) - -namespace v2_1 { -struct and_ : mpl::logical_and<> {}; -} - -} // namespace mpl -} // namespace boost - -#endif // BOOST_MPL_LOGICAL_AND_HPP_INCLUDED diff --git a/include/boost/mpl/logical/not.hpp b/include/boost/mpl/logical/not.hpp deleted file mode 100644 index a8a9630..0000000 --- a/include/boost/mpl/logical/not.hpp +++ /dev/null @@ -1,59 +0,0 @@ -//----------------------------------------------------------------------------- -// boost mpl/logical/not.hpp header file -// See http://www.boost.org for updates, documentation, and revision history. -//----------------------------------------------------------------------------- -// -// Copyright (c) 2000-02 -// 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. - -#ifndef BOOST_MPL_LOGICAL_NOT_HPP_INCLUDED -#define BOOST_MPL_LOGICAL_NOT_HPP_INCLUDED - -#include "boost/mpl/bool_c.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 logical_not_impl - : bool_c -{ -}; - -} // namespace aux - - -template< - typename BOOST_MPL_AUX_VOID_SPEC_PARAM(T) - > -struct logical_not - : aux::logical_not_impl< - BOOST_MPL_AUX_NESTED_TYPE_WKND(T)::value - > -{ - BOOST_MPL_AUX_LAMBDA_SUPPORT(1,logical_not,(T)) -}; - -BOOST_MPL_AUX_VOID_SPEC(1,logical_not) - -namespace v2_1 { -struct not_ : mpl::logical_not<> {}; -} - -} // namespace mpl -} // namespace boost - -#endif // BOOST_MPL_LOGICAL_NOT_HPP_INCLUDED diff --git a/include/boost/mpl/logical/or.hpp b/include/boost/mpl/logical/or.hpp deleted file mode 100644 index 3423473..0000000 --- a/include/boost/mpl/logical/or.hpp +++ /dev/null @@ -1,131 +0,0 @@ -//----------------------------------------------------------------------------- -// boost mpl/logical/or.hpp header file -// See http://www.boost.org for updates, documentation, and revision history. -//----------------------------------------------------------------------------- -// -// Copyright (c) 2000-02 -// 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. - -#ifndef BOOST_MPL_LOGICAL_OR_HPP_INCLUDED -#define BOOST_MPL_LOGICAL_OR_HPP_INCLUDED - -#include "boost/mpl/bool_c.hpp" -#include "boost/mpl/aux_/nested_type_wknd.hpp" -#include "boost/mpl/aux_/void_spec.hpp" -#include "boost/mpl/aux_/lambda_support.hpp" -#include "boost/config.hpp" - -namespace boost { -namespace mpl { - -namespace aux { - -#if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) - -template< - bool C, typename T1, typename T2, typename T3, typename T4 - > -struct logical_or_impl - : true_c -{ -}; - -template< - typename T1, typename T2, typename T3, typename T4 - > -struct logical_or_impl - : logical_or_impl< - BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value,T2,T3,T4,false_c - > -{ -}; - -template<> -struct logical_or_impl - : false_c -{ -}; - -#else - -template< bool C > struct logical_or_impl -{ - template< - typename T1, typename T2, typename T3, typename T4 - > - struct result_ - : true_c - { - }; -}; - -template<> struct logical_or_impl -{ - template< - typename T1, typename T2, typename T3, typename T4 - > - struct result_ - : logical_or_impl< BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value > - ::template result_ - { - }; - -#if defined(BOOST_MSVC) && BOOST_MSVC == 1300 - template<> - struct result_ - : false_c - { - }; -}; -#else -}; - -template<> -struct logical_or_impl::result_ - : false_c -{ -}; -#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) - , typename T3 = false_c - , typename T4 = false_c - , typename T5 = false_c - > -struct logical_or -#if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) - : aux::logical_or_impl< - BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value,T2,T3,T4,T5 - > -#else - : aux::logical_or_impl< BOOST_MPL_AUX_NESTED_TYPE_WKND(T1)::value> - ::template result_ -#endif -{ - BOOST_MPL_AUX_LAMBDA_SUPPORT(5,logical_or,(T1,T2,T3,T4,T5)) -}; - -BOOST_MPL_AUX_VOID_SPEC_EXT(2,5,logical_or) - -namespace v2_1 { -struct or_ : mpl::logical_or<> {}; -} - -} // namespace mpl -} // namespace boost - -#endif // BOOST_MPL_LOGICAL_OR_HPP_INCLUDED diff --git a/include/boost/mpl/v2_1.hpp b/include/boost/mpl/v2_1.hpp deleted file mode 100644 index 1426c7c..0000000 --- a/include/boost/mpl/v2_1.hpp +++ /dev/null @@ -1,29 +0,0 @@ -//----------------------------------------------------------------------------- -// boost mpl/v2_1.hpp header file -// See http://www.boost.org for updates, documentation, and revision history. -//----------------------------------------------------------------------------- -// -// Copyright (c) 2001-02 -// 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. - -#ifndef BOOST_MPL_V2_1_HPP_INCLUDED -#define BOOST_MPL_V2_1_HPP_INCLUDED - -#include "boost/mpl/v2_1/apply.hpp" -#include "boost/mpl/v2_1/eval.hpp" -#include "boost/mpl/v2_1/expr.hpp" -#include "boost/mpl/v2_1/int.hpp" -#include "boost/mpl/v2_1/lambda.hpp" -#include "boost/mpl/v2_1/list.hpp" -#include "boost/mpl/v2_1/metafunction.hpp" -#include "boost/mpl/v2_1/type_traits.hpp" - -#endif // BOOST_MPL_V2_1_HPP_INCLUDED diff --git a/include/boost/mpl/v2_1/apply.hpp b/include/boost/mpl/v2_1/apply.hpp deleted file mode 100644 index 464157d..0000000 --- a/include/boost/mpl/v2_1/apply.hpp +++ /dev/null @@ -1,62 +0,0 @@ -//----------------------------------------------------------------------------- -// boost mpl/v2_1/apply.hpp header file -// See http://www.boost.org for updates, documentation, and revision history. -//----------------------------------------------------------------------------- -// -// Copyright (c) 2000-02 -// 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. - -#ifndef BOOST_MPL_V2_1_APPLY_HPP_INCLUDED -#define BOOST_MPL_V2_1_APPLY_HPP_INCLUDED - -#include "boost/mpl/apply.hpp" -#include "boost/mpl/limits/arity.hpp" -#include "boost/mpl/aux_/preprocessor/params.hpp" -#include "boost/mpl/aux_/preprocessor/default_params.hpp" - -namespace boost { namespace mpl { namespace v2_1 { - -# define AUX_APPLY_PARAMS(param) \ - BOOST_MPL_PP_PARAMS( \ - BOOST_MPL_METAFUNCTION_MAX_ARITY \ - , param \ - ) \ - /**/ - -# define AUX_APPLY_DEFAULT_PARAMS(param, value) \ - BOOST_MPL_PP_DEFAULT_PARAMS( \ - BOOST_MPL_METAFUNCTION_MAX_ARITY \ - , param \ - , value \ - ) \ - /**/ - - -struct apply_impl -{ - template< - typename F - , AUX_APPLY_DEFAULT_PARAMS(typename T, mpl::void_) - > - struct apply - : mpl::apply - { - }; -}; - -struct apply_ : apply_impl {}; - -# undef AUX_APPLY_DEFAULT_PARAMS -# undef AUX_APPLY_PARAMS - -}}} // namespace boost::mpl::v2_1 - -#endif // BOOST_MPL_V2_1_APPLY_HPP_INCLUDED diff --git a/include/boost/mpl/v2_1/eval.hpp b/include/boost/mpl/v2_1/eval.hpp deleted file mode 100644 index 8214b4e..0000000 --- a/include/boost/mpl/v2_1/eval.hpp +++ /dev/null @@ -1,37 +0,0 @@ -//----------------------------------------------------------------------------- -// boost mpl/v2_1/eval.hpp header file -// See http://www.boost.org for updates, documentation, and revision history. -//----------------------------------------------------------------------------- -// -// Copyright (c) 2000-02 -// 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. - -#ifndef BOOST_MPL_V2_1_EVAL_HPP_INCLUDED -#define BOOST_MPL_V2_1_EVAL_HPP_INCLUDED - -#include "boost/mpl/v2_1/expr.hpp" -#include "boost/mpl/v2_1/metafunction_base.hpp" - -namespace boost { namespace mpl { namespace v2_1 { - -template< - typename F - > -struct eval - : expr::type::template apply<> -{ -}; - -}}} // namespace boost::mpl::v2_1 - -#define EVAL(expr) eval::type - -#endif // BOOST_MPL_V2_1_EVAL_HPP_INCLUDED diff --git a/include/boost/mpl/v2_1/expr.hpp b/include/boost/mpl/v2_1/expr.hpp deleted file mode 100644 index 53eaa81..0000000 --- a/include/boost/mpl/v2_1/expr.hpp +++ /dev/null @@ -1,108 +0,0 @@ -//----------------------------------------------------------------------------- -// boost mpl/v2_1/expr.hpp header file -// See http://www.boost.org for updates, documentation, and revision history. -//----------------------------------------------------------------------------- -// -// Copyright (c) 2001-02 -// 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. - -#if !defined(BOOST_PP_IS_ITERATING) - -///// header body - -#ifndef BOOST_MPL_EXPR_V2_1_HPP_INCLUDED -#define BOOST_MPL_EXPR_V2_1_HPP_INCLUDED - -#if !defined(BOOST_MPL_PREPROCESSING_MODE) -# include "boost/mpl/v2_1/expr_fwd.hpp" -# include "boost/mpl/bind.hpp" -#endif - -#if 0//!defined(BOOST_MPL_NO_PREPROCESSED_HEADERS) && - //!defined(BOOST_MPL_PREPROCESSING_MODE) - -# define BOOST_MPL_PREPROCESSED_HEADER expr.hpp -# include "boost/mpl/aux_/include_preprocessed.hpp" - -#else - -# include "boost/mpl/limits/arity.hpp" -# include "boost/mpl/aux_/preprocessor/params.hpp" -# include "boost/mpl/aux_/preprocessor/repeat.hpp" -# include "boost/preprocessor/iterate.hpp" -# include "boost/preprocessor/comma_if.hpp" -# include "boost/preprocessor/inc.hpp" -# include "boost/preprocessor/cat.hpp" - -namespace boost { namespace mpl { namespace v2_1 { - -# define AUX_EXPR_PARAMS(n, param) \ - BOOST_MPL_PP_PARAMS(n, param) \ - /**/ - -# define AUX_EXPR_SPEC_PARAMS(n, F, param) \ - F BOOST_PP_COMMA_IF(n) \ - BOOST_MPL_PP_PARAMS(n, param) \ - /**/ - - -template< typename T > struct expr -{ - typedef T type; -}; - - -#define BOOST_PP_ITERATION_PARAMS_1 \ - (3,(0, BOOST_MPL_METAFUNCTION_MAX_ARITY, "boost/mpl/v2_1/expr.hpp")) -#include BOOST_PP_ITERATE() - - -# undef AUX_EXPR_SPEC_PARAMS -# undef AUX_EXPR_PARAMS - -}}} // namespace boost::mpl::v2_1 - -#endif // BOOST_MPL_USE_PREPROCESSED_HEADERS -#endif // BOOST_MPL_EXPR_V2_1_HPP_INCLUDED - -///// iteration, depth == 1 - -#elif BOOST_PP_ITERATION_DEPTH() == 1 -#define n BOOST_PP_FRAME_ITERATION(1) - -template< - AUX_EXPR_SPEC_PARAMS(n, typename F, typename T) - > -struct expr< F (*)(AUX_EXPR_PARAMS(n, T)) > -{ -# define AUX_EXPR_INVOCATION(unused, n, T) \ - BOOST_PP_COMMA_IF(n) \ - typename expr< BOOST_PP_CAT(T, BOOST_PP_INC(n)) >::type \ - /**/ - - typedef BOOST_PP_CAT(bind,n)< - F - BOOST_PP_COMMA_IF(n) BOOST_MPL_PP_REPEAT(n, AUX_EXPR_INVOCATION, T) - > type; - -# undef AUX_EXPR_INVOCATION -}; - -template< - AUX_EXPR_SPEC_PARAMS(n, typename F, typename T) - > -struct expr< F (AUX_EXPR_PARAMS(n, T)) > - : expr< F (*)(AUX_EXPR_PARAMS(n, T)) > -{ -}; - -#undef n -#endif // BOOST_PP_IS_ITERATING diff --git a/include/boost/mpl/v2_1/expr_fwd.hpp b/include/boost/mpl/v2_1/expr_fwd.hpp deleted file mode 100644 index 5371c32..0000000 --- a/include/boost/mpl/v2_1/expr_fwd.hpp +++ /dev/null @@ -1,26 +0,0 @@ -//----------------------------------------------------------------------------- -// boost mpl/v2_1/expr_fwd.hpp header file -// See http://www.boost.org for updates, documentation, and revision history. -//----------------------------------------------------------------------------- -// -// Copyright (c) 2001-02 -// 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. - -#ifndef BOOST_MPL_EXPR_V2_1_FWD_HPP_INCLUDED -#define BOOST_MPL_EXPR_V2_1_FWD_HPP_INCLUDED - -namespace boost { namespace mpl { namespace v2_1 { - -template< typename T > struct expr; - -}}} - -#endif // BOOST_MPL_EXPR_V2_1_FWD_HPP_INCLUDED diff --git a/include/boost/mpl/v2_1/int.hpp b/include/boost/mpl/v2_1/int.hpp deleted file mode 100644 index 2d0ca2c..0000000 --- a/include/boost/mpl/v2_1/int.hpp +++ /dev/null @@ -1,29 +0,0 @@ -//----------------------------------------------------------------------------- -// boost mpl/v2_1/int.hpp header file -// See http://www.boost.org for updates, documentation, and revision history. -//----------------------------------------------------------------------------- -// -// Copyright (c) 2000-02 -// 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. - -#ifndef BOOST_MPL_V2_1_INT_HPP_INCLUDED -#define BOOST_MPL_V2_1_INT_HPP_INCLUDED - -#include "boost/mpl/int.hpp" -#include "boost/mpl/aux_/config/nttp.hpp" - -namespace boost { namespace mpl { namespace v2_1 { - -template< BOOST_MPL_AUX_NTTP_DECL(int, N) > struct int_ : mpl::int_ {}; - -}}} // namespace boost::mpl::v2_1 - -#endif // BOOST_MPL_V2_1_INT_HPP_INCLUDED diff --git a/include/boost/mpl/v2_1/lambda.hpp b/include/boost/mpl/v2_1/lambda.hpp deleted file mode 100644 index 34d6991..0000000 --- a/include/boost/mpl/v2_1/lambda.hpp +++ /dev/null @@ -1,39 +0,0 @@ -//----------------------------------------------------------------------------- -// boost mpl/v2_1/lambda.hpp header file -// See http://www.boost.org for updates, documentation, and revision history. -//----------------------------------------------------------------------------- -// -// Copyright (c) 2001-02 -// 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. - -#ifndef BOOST_MPL_V2_1_LAMBDA_HPP_INCLUDED -#define BOOST_MPL_V2_1_LAMBDA_HPP_INCLUDED - -#include "boost/mpl/v2_1/expr.hpp" -#include "boost/mpl/protect.hpp" - -namespace boost { namespace mpl { namespace v2_1 { - -struct lambda; - -template< - typename T - > -struct expr< lambda (*)(T) > -{ - typedef protect< - typename expr::type - > type; -}; - -}}} // namespace boost::mpl::v2_1 - -#endif // BOOST_MPL_V2_1_LAMBDA_HPP_INCLUDED diff --git a/include/boost/mpl/v2_1/list.hpp b/include/boost/mpl/v2_1/list.hpp deleted file mode 100644 index ac1e1ee..0000000 --- a/include/boost/mpl/v2_1/list.hpp +++ /dev/null @@ -1,58 +0,0 @@ -//----------------------------------------------------------------------------- -// boost mpl/v2_1/list.hpp header file -// See http://www.boost.org for updates, documentation, and revision history. -//----------------------------------------------------------------------------- -// -// Copyright (c) 2000-02 -// 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. - -#ifndef BOOST_MPL_V2_1_LIST_HPP_INCLUDED -#define BOOST_MPL_V2_1_LIST_HPP_INCLUDED - -#include "boost/mpl/list.hpp" -#include "boost/mpl/limits/list.hpp" -#include "boost/preprocessor/enum_params_with_a_default.hpp" -#include "boost/preprocessor/enum_params.hpp" - -namespace boost { namespace mpl { namespace v2_1 { - -# define AUX_LIST_PARAMS(param) \ - BOOST_PP_ENUM_PARAMS( \ - BOOST_MPL_LIMIT_LIST_SIZE \ - , param \ - ) \ - /**/ - -# define AUX_LIST_DEFAULT_PARAMS(param, value) \ - BOOST_PP_ENUM_PARAMS_WITH_A_DEFAULT( \ - BOOST_MPL_LIMIT_LIST_SIZE \ - , param \ - , value \ - ) \ - /**/ - -struct list -{ - template< - AUX_LIST_DEFAULT_PARAMS(typename T, void_) - > - struct apply - : mpl::list< AUX_LIST_PARAMS(T) > - { - }; -}; - -# undef AUX_LIST_DEFAULT_PARAMS -# undef AUX_LIST_PARAMS - -}}} // namespace boost::mpl::v2_1 - -#endif // BOOST_MPL_V2_1_LIST_HPP_INCLUDED diff --git a/include/boost/mpl/v2_1/metafunction.hpp b/include/boost/mpl/v2_1/metafunction.hpp deleted file mode 100644 index 09c81b8..0000000 --- a/include/boost/mpl/v2_1/metafunction.hpp +++ /dev/null @@ -1,47 +0,0 @@ -//----------------------------------------------------------------------------- -// boost mpl/v2_1/metafunction.hpp header file -// See http://www.boost.org for updates, documentation, and revision history. -//----------------------------------------------------------------------------- -// -// Copyright (c) 2000-02 -// 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. - -#ifndef BOOST_MPL_V2_1_METAFUNCTION_HPP_INCLUDED -#define BOOST_MPL_V2_1_METAFUNCTION_HPP_INCLUDED - -#include "boost/mpl/v2_1/expr.hpp" -#include "boost/mpl/v2_1/metafunction_base.hpp" -#include "boost/preprocessor/comma_if.hpp" -#include "boost/preprocessor/identity.hpp" -#include "boost/preprocessor/seq/for_each_i.hpp" - -#define BOOST_MPL_AUX_METAFUNCTION_PARAM(unused, prefix, n, param) \ - BOOST_PP_COMMA_IF(n) prefix() param \ -/**/ - -#define METAFUNCTION(name, params, body) \ -struct name : metafunction_base \ -{ \ - template< \ - BOOST_PP_SEQ_FOR_EACH_I( \ - BOOST_MPL_AUX_METAFUNCTION_PARAM \ - , BOOST_PP_IDENTITY(typename) \ - , params \ - ) \ - > \ - struct apply \ - : boost::mpl::v2_1::expr< body > \ - { \ - }; \ -}; \ -/**/ - -#endif // BOOST_MPL_V2_1_METAFUNCTION_HPP_INCLUDED diff --git a/include/boost/mpl/v2_1/metafunction_base.hpp b/include/boost/mpl/v2_1/metafunction_base.hpp deleted file mode 100644 index d594fe9..0000000 --- a/include/boost/mpl/v2_1/metafunction_base.hpp +++ /dev/null @@ -1,26 +0,0 @@ -//----------------------------------------------------------------------------- -// boost mpl/v2_1/metafunction_base.hpp header file -// See http://www.boost.org for updates, documentation, and revision history. -//----------------------------------------------------------------------------- -// -// Copyright (c) 2000-02 -// 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. - -#ifndef BOOST_MPL_V2_1_METAFUNCTION_BASE_HPP_INCLUDED -#define BOOST_MPL_V2_1_METAFUNCTION_BASE_HPP_INCLUDED - -namespace boost { namespace mpl { namespace v2_1 { - -struct metafunction_base {}; - -}}} // namespace boost::mpl::v2_1 - -#endif // BOOST_MPL_V2_1_METAFUNCTION_BASE_HPP_INCLUDED diff --git a/include/boost/mpl/v2_1/type_traits.hpp b/include/boost/mpl/v2_1/type_traits.hpp deleted file mode 100644 index 3132265..0000000 --- a/include/boost/mpl/v2_1/type_traits.hpp +++ /dev/null @@ -1,31 +0,0 @@ -//----------------------------------------------------------------------------- -// boost mpl/v2_1/type_traits.hpp header file -// See http://www.boost.org for updates, documentation, and revision history. -//----------------------------------------------------------------------------- -// -// Copyright (c) 2000-02 -// 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. - -#ifndef BOOST_MPL_V2_1_TYPE_TRAITS_HPP_INCLUDED -#define BOOST_MPL_V2_1_TYPE_TRAITS_HPP_INCLUDED - -#include "boost/mpl/quote.hpp" -#include "boost/type_traits/is_same.hpp" -#include "boost/type_traits/is_float.hpp" - -namespace boost { namespace mpl { namespace v2_1 { - -struct is_float : mpl::quote1 {}; -struct is_same : mpl::quote2 {}; - -}}} // namespace boost::mpl::v2_1 - -#endif // BOOST_MPL_V2_1_TYPE_TRAITS_HPP_INCLUDED