Struct template as_expr
boost::proto::result_of::as_expr — A metafunction that computes the return type of the
proto::as_expr()
function.
Synopsis
Description
The proto::result_of::as_expr<>
metafunction turns types into Proto types if they are
not already, by making them Proto terminals held by value if possible. Types which are already Proto types are
left alone.
If T
is not yet a Proto type, the resulting terminal type is calculated
as follows:
If T
is a function type, let
A
be T &
. Otherwise, let
A
be the type T
stripped of
cv-qualifiers. Then, the result type proto::result_of::as_expr<T, Domain>::type
is boost::result_of<Domain(proto::expr< proto::tag::terminal, proto::term<A> >)>::type
.