mirror of
https://github.com/boostorg/phoenix.git
synced 2026-02-15 01:12:09 +00:00
started BLL compatibility tests
[SVN r67431]
This commit is contained in:
@@ -12,19 +12,31 @@
|
||||
#define PHOENIX_FUNCTION_DETAIL_FUNCTION_OPERATOR_HPP
|
||||
|
||||
#define PHOENIX_ITERATION_PARAMS \
|
||||
(3, (4, PHOENIX_ACTOR_LIMIT, \
|
||||
(3, (1, PHOENIX_ACTOR_LIMIT, \
|
||||
<boost/phoenix/function/detail/function_operator.hpp>))
|
||||
#include PHOENIX_ITERATE()
|
||||
|
||||
#endif
|
||||
|
||||
#else
|
||||
template <typename This, PHOENIX_typename_A>
|
||||
struct result<This(PHOENIX_A)>
|
||||
:result<This(PHOENIX_A_const_ref)>//: result_of::function<F, PHOENIX_A>
|
||||
{};
|
||||
|
||||
template <typename This, PHOENIX_typename_A>
|
||||
struct result<This(PHOENIX_A_const_ref)>
|
||||
struct result<This(PHOENIX_A_ref)>
|
||||
: result_of::function<F, PHOENIX_A>
|
||||
{};
|
||||
|
||||
template <PHOENIX_typename_A>
|
||||
typename result_of::function<F, PHOENIX_A>::type const
|
||||
operator()(PHOENIX_A_ref_a) const
|
||||
{
|
||||
return proto::make_expr<
|
||||
proto::tag::function, phoenix_domain>(f, PHOENIX_a);
|
||||
}
|
||||
|
||||
template <PHOENIX_typename_A>
|
||||
typename result_of::function<F, PHOENIX_A>::type const
|
||||
operator()(PHOENIX_A_const_ref_a) const
|
||||
|
||||
@@ -97,35 +97,6 @@ namespace boost { namespace phoenix
|
||||
return proto::make_expr<proto::tag::function, phoenix_domain>(f);
|
||||
}
|
||||
|
||||
template <typename This, typename A0>
|
||||
struct result<This(A0 const&)>
|
||||
: result_of::function<F, A0>
|
||||
{};
|
||||
|
||||
template <typename A0>
|
||||
typename result_of::function<F, A0>::type const
|
||||
operator()(A0 const& a0) const
|
||||
{
|
||||
return proto::make_expr<
|
||||
proto::tag::function, phoenix_domain>(f, a0);
|
||||
}
|
||||
|
||||
template <typename A0, typename A1>
|
||||
typename result_of::function<F, A0, A1>::type const
|
||||
operator()(A0 const& a0, A1 const& a1) const
|
||||
{
|
||||
return proto::make_expr<
|
||||
proto::tag::function, phoenix_domain>(f, a0, a1);
|
||||
}
|
||||
|
||||
template <typename A0, typename A1, typename A2>
|
||||
typename result_of::function<F, A0, A1, A2>::type const
|
||||
operator()(A0 const& a0, A1 const& a1, A2 const& a2) const
|
||||
{
|
||||
return proto::make_expr<
|
||||
proto::tag::function, phoenix_domain>(f, a0, a1, a2);
|
||||
}
|
||||
|
||||
// Bring in the rest
|
||||
#include <boost/phoenix/function/detail/function_operator.hpp>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user