![]() |
Home | Libraries | People | FAQ | More |
boost::proto::result_of::make_expr<Tag, Domain, A...> — Metafunction that computes the return type of the proto::make_expr() function, within the specified domain.
// In header: <boost/proto/make_expr.hpp> template<typename Tag, typename Domain, typename... A> struct make_expr<Tag, Domain, A...> { // types typedef see-below type; };
Computes the return type of the proto::make_expr() function.
If Tag is proto::tag::terminal, then type is a typedef for boost::result_of<Domain(proto::expr< proto::tag::terminal, proto::term< A0 > >)>::type.
Otherwise, type is a typedef for boost::result_of<Domain(proto::expr< Tag, proto::listN< typename proto::result_of::as_child<A>::type...> >)>::type