Definition of the make_expr()
and unpack_expr()
utilities for building Proto expression nodes from child nodes or from a Fusion sequence of child nodes, respectively.
More...
#include <boost/preprocessor/cat.hpp>
#include <boost/preprocessor/arithmetic/inc.hpp>
#include <boost/preprocessor/arithmetic/dec.hpp>
#include <boost/preprocessor/arithmetic/sub.hpp>
#include <boost/preprocessor/punctuation/comma_if.hpp>
#include <boost/preprocessor/iteration/iterate.hpp>
#include <boost/preprocessor/facilities/intercept.hpp>
#include <boost/preprocessor/repetition/enum.hpp>
#include <boost/preprocessor/repetition/enum_params.hpp>
#include <boost/preprocessor/repetition/enum_binary_params.hpp>
#include <boost/preprocessor/repetition/enum_shifted_params.hpp>
#include <boost/preprocessor/repetition/enum_trailing_params.hpp>
#include <boost/preprocessor/repetition/enum_trailing_binary_params.hpp>
#include <boost/preprocessor/repetition/repeat.hpp>
#include <boost/ref.hpp>
#include <boost/mpl/if.hpp>
#include <boost/mpl/assert.hpp>
#include <boost/mpl/eval_if.hpp>
#include <boost/utility/enable_if.hpp>
#include <boost/type_traits/add_const.hpp>
#include <boost/type_traits/add_reference.hpp>
#include <boost/type_traits/remove_cv.hpp>
#include <boost/proto/proto_fwd.hpp>
#include <boost/proto/traits.hpp>
#include <boost/proto/domain.hpp>
#include <boost/proto/generate.hpp>
#include <boost/fusion/include/at_c.hpp>
#include <boost/fusion/include/begin.hpp>
#include <boost/fusion/include/next.hpp>
#include <boost/fusion/include/value_of.hpp>
#include <boost/fusion/include/size.hpp>
#include <boost/proto/detail/poly_function.hpp>
#include <boost/proto/detail/deprecated.hpp>
#include <boost/proto/detail/unpack_expr_.hpp>
#include <boost/proto/detail/make_expr_.hpp>
#include <boost/proto/detail/make_expr_funop.hpp>
#include <boost/proto/detail/make_expr.hpp>
Namespaces | |
boost | |
Duration formatting facet for input. | |
boost::proto | |
boost::proto::detail | |
boost::proto::result_of | |
boost::proto::functional | |
Macros | |
#define | BOOST_PROTO_AS_CHILD_TYPE(Z, N, DATA) |
INTERNAL ONLY. More... | |
#define | BOOST_PROTO_AS_CHILD(Z, N, DATA) |
INTERNAL ONLY. More... | |
Functions | |
template<typename Tag , typename A0 > | |
BOOST_FORCEINLINE lazy_disable_if< is_domain< A0 > , result_of::make_expr< Tag, A0 const > >::type const | boost::proto::make_expr (A0 const &a0) |
Construct an expression of the requested tag type with a domain and with the specified arguments as children. More... | |
template<typename Tag , typename Domain , typename C0 > | |
BOOST_FORCEINLINE result_of::make_expr< Tag, Domain, C0 const >::type const | boost::proto::make_expr (C0 const &c0) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
template<typename Tag , typename Sequence > | |
BOOST_FORCEINLINE lazy_disable_if< is_domain < Sequence > , result_of::unpack_expr< Tag, Sequence const > >::type const | boost::proto::unpack_expr (Sequence const &sequence) |
Construct an expression of the requested tag type with a domain and with childres from the specified Fusion Forward Sequence. More... | |
template<typename Tag , typename Domain , typename Sequence2 > | |
BOOST_FORCEINLINE result_of::unpack_expr< Tag, Domain, Sequence2 const > ::type const | boost::proto::unpack_expr (Sequence2 const &sequence2) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More... | |
Definition of the make_expr()
and unpack_expr()
utilities for building Proto expression nodes from child nodes or from a Fusion sequence of child nodes, respectively.
#define BOOST_PROTO_AS_CHILD | ( | Z, | |
N, | |||
DATA | |||
) |
INTERNAL ONLY.
#define BOOST_PROTO_AS_CHILD_TYPE | ( | Z, | |
N, | |||
DATA | |||
) |
INTERNAL ONLY.