![]() |
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<> and
proto::basic_expr<>are aggregates.