A placeholder for an associated type. More...
#include <deduced.hpp>
Public Types | |
typedef ::boost::mpl::eval_if < ::boost::mpl::empty < typename::boost::type_erasure::detail::get_placeholders < Metafunction,::boost::mpl::set0 <> >::type >, Metafunction,::boost::mpl::identity < ::boost::type_erasure::deduced < Metafunction > > >::type | type |
A placeholder for an associated type.
The type corresponding to this placeholder is deduced by substituting placeholders in the arguments of the metafunction and then evaluating it.
When using deduced in a template context, if it is possible for Metafunction to contain no placeholders at all, use the nested type, to automatically evaluate it early as needed.
typedef ::boost::mpl::eval_if< ::boost::mpl::empty< typename ::boost::type_erasure::detail::get_placeholders< Metafunction, ::boost::mpl::set0<> >::type >, Metafunction, ::boost::mpl::identity< ::boost::type_erasure::deduced<Metafunction> > >::type boost::type_erasure::deduced< Metafunction >::type |