![]() |
Home | Libraries | People | FAQ | More |
boost::proto::is_aggregate — A Boolean metafunction that indicates whether a type requires aggregate initialization.
// In header: <boost/proto/traits.hpp> template<typename T> struct is_aggregate : mpl::bool_<true-or-false> { };
proto::is_aggregate<> is used by the proto::make<> transform to determine how to construct an object of some type T, given some initialization arguments a0,...an. If proto::is_aggregate<T>::value is true, then an object of type T will be initialized as T t = {a0,...an};. Otherwise, it will be initialized as T t(a0,...an).
Note: proto::expr<> is an aggregate.