adt_attribute_proxy
provides method get
to access attribute value.
struct Print
{
template <typename T>
void operator()(T& t) const
{
std::cout << t.get();
}
};
P.S. There are errors in you sample BOOST_FUSION_ADAPT_ASSOC_ADT
macro. Each element should be declared with 5 params (attribute_typeN
, attribute_const_typeN
, get_exprN
, set_exprN
, key_typeN
) Maybe you mix up BOOST_FUSION_ADAPT_ASSOC_ADT with BOOST_FUSION_ADAPT_ADT?