Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

PrevUpHomeNext

Struct template make_expr

boost::proto::result_of::make_expr — Metafunction that computes the return type of the proto::make_expr() function, with a domain deduced from the domains of the children.

Synopsis

// In header: <boost/proto/make_expr.hpp>

template<typename Tag, typename... A> 
struct make_expr {
  // types
  typedef domain-deduced-from-child-types                          D;   
  typedef typename proto::result_of::make_expr<Tag, D, A...>::type type;
};

Description

Computes the return type of the proto::make_expr() function.

In this specialization, the domain is deduced from the domains of the child types. If proto::is_domain<A0>::value is true, then another specialization is selected.

make_expr public types

  1. typedef domain-deduced-from-child-types D;

    In this specialization, Proto uses the domains of the child expressions to compute the domain of the parent. See proto::deduce_domain for a full description of the procedure used.


PrevUpHomeNext