Remove BOOST_PP_IS_EMPTY in favor of BOOST_MPL_PP_TOKEN_EQUAL and added auto as synonym for BOOST_FUSION_ADAPT_AUTO.

Fix ticket https://svn.boost.org/trac/boost/ticket/11157
BOOST_MPL_PP_TOKEN_EQUAL is now used to check if auto/BOOST_FUSION_ADAPT_AUTO
was provided as type, telling to deduce members types.
This commit is contained in:
Damien Buhl (alias daminetreg)
2015-03-31 08:18:46 +02:00
committed by Kohei Takahashi
parent 1774972237
commit 2e466ac054
17 changed files with 97 additions and 58 deletions

View File

@ -45,12 +45,26 @@ namespace ns
};
}
BOOST_FUSION_ADAPT_ASSOC_ADT_NAMED(
ns::point,
point,
(int, int, obj.get_x(), obj.set_x(val), ns::x_member)
(int, int, obj.get_y(), obj.set_y(val), ns::y_member)
)
#if BOOST_PP_VARIADICS
BOOST_FUSION_ADAPT_ASSOC_ADT_NAMED(
ns::point,
point,
(obj.get_x(), obj.set_x(val), ns::x_member)
(int, int, obj.get_y(), obj.set_y(val), ns::y_member)
)
#else // BOOST_PP_VARIADICS
BOOST_FUSION_ADAPT_ASSOC_ADT_NAMED(
ns::point,
point,
(auto, auto, obj.get_x(), obj.set_x(val), ns::x_member)
(int, int, obj.get_y(), obj.set_y(val), ns::y_member)
)
#endif
class empty_adt{};
BOOST_FUSION_ADAPT_ASSOC_ADT_NAMED(empty_adt, renamed_empty_adt,)