summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to '3rdParty/Boost/src/boost/phoenix/core/environment.hpp')
-rw-r--r--3rdParty/Boost/src/boost/phoenix/core/environment.hpp57
1 files changed, 36 insertions, 21 deletions
diff --git a/3rdParty/Boost/src/boost/phoenix/core/environment.hpp b/3rdParty/Boost/src/boost/phoenix/core/environment.hpp
index f72e5d9..27ac284 100644
--- a/3rdParty/Boost/src/boost/phoenix/core/environment.hpp
+++ b/3rdParty/Boost/src/boost/phoenix/core/environment.hpp
@@ -212,61 +212,69 @@ namespace boost { namespace phoenix
};
template <typename Env, typename Actions>
+ inline
typename result_of::context<Env const &, Actions const&>::type const
- inline context(Env const& env, Actions const& actions)
+ context(Env const& env, Actions const& actions)
{
vector2<Env const&, Actions const &> e = {env, actions};
return e;
}
template <typename Env, typename Actions>
+ inline
typename result_of::context<Env const &, Actions const&>::type const
- inline make_context(Env const& env, Actions const& actions)
+ make_context(Env const& env, Actions const& actions)
{
return context(env, actions);
}
template <typename Env, typename Actions>
+ inline
typename result_of::context<Env &, Actions const&>::type const
- inline context(Env & env, Actions const& actions)
+ context(Env & env, Actions const& actions)
{
vector2<Env &, Actions const &> e = {env, actions};
return e;
}
template <typename Env, typename Actions>
+ inline
typename result_of::context<Env &, Actions const&>::type const
- inline make_context(Env & env, Actions const& actions)
+ make_context(Env & env, Actions const& actions)
{
return context(env, actions);
}
template <typename Env, typename Actions>
+ inline
typename result_of::context<Env const &, Actions &>::type const
- inline context(Env const& env, Actions & actions)
+ context(Env const& env, Actions & actions)
{
vector2<Env const&, Actions &> e = {env, actions};
return e;
}
template <typename Env, typename Actions>
+ inline
typename result_of::context<Env const &, Actions &>::type const
- inline make_context(Env const& env, Actions & actions)
+ make_context(Env const& env, Actions & actions)
{
return context(env, actions);
}
template <typename Env, typename Actions>
+ inline
typename result_of::context<Env &, Actions &>::type const
- inline context(Env & env, Actions & actions)
+ context(Env & env, Actions & actions)
{
vector2<Env &, Actions &> e = {env, actions};
return e;
}
template <typename Env, typename Actions>
+ inline
typename result_of::context<Env &, Actions &>::type const
- inline make_context(Env & env, Actions & actions)
+ make_context(Env & env, Actions & actions)
{
return context(env, actions);
}
@@ -318,15 +326,17 @@ namespace boost { namespace phoenix
{};
template <typename Context>
+ inline
typename fusion::result_of::at_c<Context, 0>::type
- inline env(Context & ctx)
+ env(Context & ctx)
{
return fusion::at_c<0>(ctx);
}
template <typename Context>
+ inline
typename fusion::result_of::at_c<Context const, 0>::type
- inline env(Context const & ctx)
+ env(Context const & ctx)
{
return fusion::at_c<0>(ctx);
}
@@ -378,15 +388,17 @@ namespace boost { namespace phoenix
{};
template <typename Context>
+ inline
typename fusion::result_of::at_c<Context, 1>::type
- inline actions(Context & ctx)
+ actions(Context & ctx)
{
return fusion::at_c<1>(ctx);
}
template <typename Context>
+ inline
typename fusion::result_of::at_c<Context const, 1>::type
- inline actions(Context const & ctx)
+ actions(Context const & ctx)
{
return fusion::at_c<1>(ctx);
}
@@ -403,26 +415,28 @@ namespace boost { namespace phoenix
>
struct make_env;
- #define BOOST_PHOENIX_M0(Z, N, D) \
+ #define M0(Z, N, D) \
template <BOOST_PHOENIX_typename_A(N)> \
struct make_env<BOOST_PHOENIX_A(N)> \
{ \
typedef BOOST_PP_CAT(vector, N)<BOOST_PHOENIX_A(N)> type; \
}; \
/**/
- BOOST_PP_REPEAT_FROM_TO(1, BOOST_PHOENIX_LIMIT, BOOST_PHOENIX_M0, _)
- #undef BOOST_PHOENIX_M0
+ BOOST_PP_REPEAT_FROM_TO(1, BOOST_PHOENIX_LIMIT, M0, _)
+ #undef M0
}
+ inline
result_of::make_env<>::type
- inline make_env()
+ make_env()
{
return result_of::make_env<>::type();
}
-#define BOOST_PHOENIX_M0(Z, N, D) \
+#define M0(Z, N, D) \
template <BOOST_PHOENIX_typename_A(N)> \
+ inline \
typename result_of::make_env<BOOST_PHOENIX_A_ref(N)>::type \
- inline make_env(BOOST_PHOENIX_A_ref_a(N)) \
+ make_env(BOOST_PHOENIX_A_ref_a(N)) \
{ \
typename result_of::make_env<BOOST_PHOENIX_A_ref(N)>::type \
env = \
@@ -432,8 +446,9 @@ namespace boost { namespace phoenix
return env; \
} \
template <BOOST_PHOENIX_typename_A(N)> \
+ inline \
typename result_of::make_env<BOOST_PHOENIX_A_const_ref(N)>::type \
- inline make_env(BOOST_PHOENIX_A_const_ref_a(N)) \
+ make_env(BOOST_PHOENIX_A_const_ref_a(N)) \
{ \
typename result_of::make_env<BOOST_PHOENIX_A_const_ref(N)>::type \
env = \
@@ -443,8 +458,8 @@ namespace boost { namespace phoenix
return env; \
} \
/**/
- BOOST_PP_REPEAT_FROM_TO(1, BOOST_PHOENIX_LIMIT, BOOST_PHOENIX_M0, _)
- #undef BOOST_PHOENIX_M0
+ BOOST_PP_REPEAT_FROM_TO(1, BOOST_PHOENIX_LIMIT, M0, _)
+ #undef M0
template <typename T, typename Enable = void>
struct is_environment : fusion::traits::is_sequence<T> {};