boost::proto::functional::eval — 用于使用给定上下文评估给定 Proto 表达式的多态函数对象类型。
// In header: <boost/proto/eval.hpp> struct eval : proto::callable { // member classes/structs/unions template<typename This, typename Expr, typename Context> struct result<This(Expr, Context)> : proto::result_of::eval< typename boost::remove_reference< Expr >::type, typename boost::remove_reference< Context >::type > { }; // public member functions template<typename Expr, typename Context> typename proto::result_of::eval< Expr, Context >::type operator()(Expr &, Context &) const; template<typename Expr, typename Context> typename proto::result_of::eval< Expr, Context >::type operator()(Expr &, Context const &) const; };
eval
公有成员函数template<typename Expr, typename Context> typename proto::result_of::eval< Expr, Context >::type operator()(Expr & expr, Context & context) const;使用给定上下文评估给定的 Proto 表达式。
参数 |
|
||||
返回值 |
|
template<typename Expr, typename Context> typename proto::result_of::eval< Expr, Context >::type operator()(Expr & expr, Context const & context) const;
这是一个重载的成员函数,为方便起见而提供。 它与上述函数的不同之处仅在于它接受的参数。