2
0
mirror of https://github.com/boostorg/python.git synced 2026-01-25 06:22:15 +00:00

merge new MPL version from 'mplbook' branch

[SVN r24874]
This commit is contained in:
Aleksey Gurtovoy
2004-09-02 15:41:37 +00:00
parent 87718f91ab
commit bfd7f71601
8 changed files with 21 additions and 21 deletions

View File

@@ -28,7 +28,7 @@
# include <boost/type_traits/remove_cv.hpp>
# endif
# include <boost/mpl/apply_if.hpp>
# include <boost/mpl/eval_if.hpp>
# include <boost/mpl/if.hpp>
# include <boost/mpl/vector/vector10.hpp>

View File

@@ -32,7 +32,7 @@
# include <boost/type_traits/is_convertible.hpp>
# include <boost/mpl/apply.hpp>
# include <boost/mpl/apply_if.hpp>
# include <boost/mpl/eval_if.hpp>
# include <boost/mpl/identity.hpp>
# include <boost/mpl/size.hpp>
# include <boost/mpl/at.hpp>
@@ -62,7 +62,7 @@ typedef int void_result_to_python;
// converting the result to python.
template <class Policies, class Result>
struct select_result_converter
: mpl::apply_if<
: mpl::eval_if<
is_same<Result,void>
, mpl::identity<void_result_to_python>
, mpl::apply1<typename Policies::result_converter,Result>

View File

@@ -25,7 +25,7 @@
#include <boost/config.hpp>
#include <boost/mpl/begin_end.hpp>
#include <boost/mpl/next.hpp>
#include <boost/mpl/apply.hpp>
#include <boost/mpl/deref.hpp>
#include <cstddef>
namespace boost { namespace python {
@@ -119,7 +119,7 @@ namespace detail
#define BOOST_PYTHON_TYPEDEF_GEN(z, index, data) \
typedef typename ::boost::mpl::next<BOOST_PP_CAT(iter, index)>::type \
BOOST_PP_CAT(iter, BOOST_PP_INC(index)); \
typedef typename ::boost::mpl::apply0<BOOST_PP_CAT(iter, index)>::type \
typedef typename ::boost::mpl::deref<BOOST_PP_CAT(iter, index)>::type \
BOOST_PP_CAT(T, index);
#define BOOST_PYTHON_FUNC_WRAPPER_GEN(z, index, data) \
@@ -145,7 +145,7 @@ namespace detail
struct gen \
{ \
typedef typename ::boost::mpl::begin<SigT>::type rt_iter; \
typedef typename ::boost::mpl::apply0<rt_iter>::type RT; \
typedef typename ::boost::mpl::deref<rt_iter>::type RT; \
typedef typename ::boost::mpl::next<rt_iter>::type iter0; \
\
BOOST_PP_REPEAT_2ND( \
@@ -184,10 +184,10 @@ namespace detail
struct gen \
{ \
typedef typename ::boost::mpl::begin<SigT>::type rt_iter; \
typedef typename ::boost::mpl::apply0<rt_iter>::type RT; \
typedef typename ::boost::mpl::deref<rt_iter>::type RT; \
\
typedef typename ::boost::mpl::next<rt_iter>::type class_iter; \
typedef typename ::boost::mpl::apply0<class_iter>::type ClassT; \
typedef typename ::boost::mpl::deref<class_iter>::type ClassT; \
typedef typename ::boost::mpl::next<class_iter>::type iter0; \
\
BOOST_PP_REPEAT_2ND( \

View File

@@ -7,7 +7,7 @@
# include <boost/python/detail/prefix.hpp>
# include <boost/python/detail/is_wrapper.hpp>
# if defined(BOOST_PYTHON_NO_SFINAE)
# include <boost/mpl/apply_if.hpp>
# include <boost/mpl/eval_if.hpp>
# include <boost/mpl/identity.hpp>
# else
# include <boost/python/detail/enable_if.hpp>
@@ -23,7 +23,7 @@ struct unwrap_wrapper_helper
};
template <class T>
typename mpl::apply_if<is_wrapper<T>,unwrap_wrapper_helper<T>,mpl::identity<T> >::type*
typename mpl::eval_if<is_wrapper<T>,unwrap_wrapper_helper<T>,mpl::identity<T> >::type*
unwrap_wrapper(T*)
{
return 0;

View File

@@ -17,7 +17,7 @@
#include <boost/python/def_visitor.hpp>
#include <boost/mpl/if.hpp>
#include <boost/mpl/apply_if.hpp>
#include <boost/mpl/eval_if.hpp>
#include <boost/mpl/size.hpp>
#include <boost/mpl/iterator_range.hpp>
#include <boost/mpl/empty.hpp>
@@ -269,20 +269,20 @@ class init : public init_base<init<BOOST_PYTHON_OVERLOAD_ARGS> >
typedef detail::type_list<BOOST_PYTHON_OVERLOAD_ARGS> signature_;
typedef detail::is_optional<
typename mpl::apply_if<
typename mpl::eval_if<
mpl::empty<signature_>
, mpl::false_
, mpl::back<signature_>
>::type
> back_is_optional;
typedef typename mpl::apply_if<
typedef typename mpl::eval_if<
back_is_optional
, mpl::back<signature_>
, mpl::vector0<>
>::type optional_args;
typedef typename mpl::apply_if<
typedef typename mpl::eval_if<
back_is_optional
, mpl::if_<
mpl::empty<optional_args>

View File

@@ -23,7 +23,7 @@
# include <boost/type_traits/is_polymorphic.hpp>
# include <boost/mpl/if.hpp>
# include <boost/mpl/apply_if.hpp>
# include <boost/mpl/eval_if.hpp>
# include <boost/mpl/bool.hpp>
# include <boost/mpl/or.hpp>
# include <boost/mpl/identity.hpp>
@@ -162,7 +162,7 @@ struct class_metadata
// Compute the "wrapped type", that is, if held_type is a smart
// pointer, we're talking about the pointee.
typedef typename mpl::apply_if<
typedef typename mpl::eval_if<
use_value_holder
, mpl::identity<held_type>
, pointee<held_type>
@@ -176,7 +176,7 @@ struct class_metadata
> use_back_reference;
// Select the holder.
typedef typename mpl::apply_if<
typedef typename mpl::eval_if<
use_back_reference
, mpl::if_<
use_value_holder

View File

@@ -17,7 +17,7 @@
# include <boost/mpl/next.hpp>
# include <boost/mpl/begin_end.hpp>
# include <boost/mpl/apply.hpp>
# include <boost/mpl/deref.hpp>
# include <boost/preprocessor/iterate.hpp>
# include <boost/preprocessor/iteration/local.hpp>
@@ -64,7 +64,7 @@ struct make_holder<N>
typedef typename mpl::begin<ArgList>::type iter0;
# define BOOST_PP_LOCAL_MACRO(n) \
typedef typename mpl::apply0<iter##n>::type t##n; \
typedef typename mpl::deref<iter##n>::type t##n; \
typedef typename forward<t##n>::type f##n; \
typedef typename mpl::next<iter##n>::type \
BOOST_PP_CAT(iter,BOOST_PP_INC(n)); // Next iterator type

View File

@@ -13,7 +13,7 @@
# include <boost/python/detail/not_specified.hpp>
# include <boost/python/back_reference.hpp>
# include <boost/mpl/if.hpp>
# include <boost/mpl/apply_if.hpp>
# include <boost/mpl/eval_if.hpp>
# include <boost/python/self.hpp>
# include <boost/python/other.hpp>
# include <boost/lexical_cast.hpp>
@@ -128,7 +128,7 @@ namespace detail
template <class ClassT>
void visit(ClassT& cl) const
{
typedef typename mpl::apply_if<
typedef typename mpl::eval_if<
is_same<L,self_t>
, mpl::if_<
is_same<R,self_t>