Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::proto::result_of::unpack_expr< Tag, Domain, Sequence, typename Domain::proto_is_domain_ > Struct Template Reference

Metafunction that computes the return type of the unpack_expr() function, within the specified domain. More...

#include <make_expr.hpp>

Public Types

typedef detail::unpack_expr_
< Tag, 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...
 

Detailed Description

template<typename Tag, typename Domain, typename Sequence>
struct boost::proto::result_of::unpack_expr< Tag, Domain, Sequence, typename Domain::proto_is_domain_ >

Metafunction that computes the return type of the unpack_expr() function, within the specified domain.

Use the result_of::make_expr<> metafunction to compute the return type of the make_expr() function.

Member Typedef Documentation

template<typename Tag , typename Domain , typename Sequence >
typedef detail::unpack_expr_< Tag , Domain , Sequence , fusion::result_of::size<Sequence>::type::value >::type boost::proto::result_of::unpack_expr< Tag, Domain, Sequence, typename Domain::proto_is_domain_ >::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, Domain, 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.


The documentation for this struct was generated from the following file: