Metafunction that computes the return type of the unpack_expr()
function, with a domain deduced from the domains of the children.
More...
#include <proto_fwd.hpp>
Public Types | |
typedef detail::unpack_expr_ < Tag, deduce_domain, Sequence, fusion::result_of::size < Sequence >::type::value > ::type | type |
Let S be the type of a Fusion Random Access Sequence equivalent to Sequence . More... | |
Metafunction that computes the return type of the unpack_expr()
function, with a domain deduced from the domains of the children.
Use the result_of::unpack_expr<>
metafunction to compute the return type of the unpack_expr()
function.
Sequence
is a Fusion Forward Sequence.
In this specialization, the domain is deduced from the domains of the child types. (If is_domain<Sequence>value
is true
, then another specialization is selected.)
typedef detail::unpack_expr_< Tag , deduce_domain , Sequence , fusion::result_of::size<Sequence>::type::value >::type boost::proto::result_of::unpack_expr< Tag, Sequence, Void1, Void2 >::type |
Let S
be the type of a Fusion Random Access Sequence equivalent to Sequence
.
Then type
is the same as result_of::make_expr<Tag, fusion::result_of::value_at_c<S, 0>::type, ... fusion::result_of::value_at_c<S, N-1>::type>::type
, where N
is the size of S
.