Struct template impl
boost::proto::pass_through::impl
Synopsis
template<typename Expr, typename State, typename Data>
struct impl : proto::transform_impl<Expr, State, Data> {
typedef typename proto::result_of::child_c<Grammar, N>::type GN;
typedef typename proto::result_of::child_c<Expr, N>::type EN;
typedef typename boost::result_of<GN(EN,State,Data)>::type RN;
typedef typename Expr::proto_tag T;
typedef boost::is_same<Domain, deduce_domain> Deduce;
typedef typename Expr::proto_domain DD;
typedef typename mpl::if_<Deduce, DD, Domain>::type D;
typedef typename D::proto_generator G;
typedef proto::listN<R0,...RN> A;
typedef proto::expr<T, A> E;
typedef proto::basic_expr<T, A> BE;
typedef typename mpl::if_<proto::wants_basic_expr<G>, BE, E>::type expr_type;
typedef typename boost::result_of<D(expr_type)>::type result_type;
result_type operator()(typename impl::expr_param,
typename impl::state_param,
typename impl::data_param) const;
};
Description
impl public member functions
result_typeОператор()(имя)Утверждается::expr_paramexpr,Утверждается::State_paramГосударство,имя типаУтверждается::data_paramДанныеКонст;