...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
boost::proto::functional::as_child —
A callable PolymorphicFunctionObject that is equivalent to the
proto::as_child()
function.
// In header: <boost/proto/traits.hpp> template<typename Domain = proto::default_domain> struct as_child : proto::callable { // member classes/structs/unions template<typename This, typename T> struct result<This(T)> : proto::result_of::as_child< typename remove_reference< T >::type, Domain > { }; // public member functions template<typename T> typename proto::result_of::as_child< T, Domain >::type operator()(T &) const; template<typename T> typename proto::result_of::as_child< T const, Domain >::type operator()(T const &) const; };
as_child
public member functionstemplate<typename T> typename proto::result_of::as_child< T, Domain >::type operator()(T & t) const;
Wrap an object in a Proto terminal if it isn't a Proto expression already.
Parameters: |
|
||
Returns: |
|
template<typename T> typename proto::result_of::as_child< T const, Domain >::type operator()(T const & t) const;
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.