File indexing completed on 2025-01-18 09:41:37
0001
0002 #ifndef BOOST_MPL_AUX_PREPROCESSOR_TOKEN_EQUAL_HPP_INCLUDED
0003 #define BOOST_MPL_AUX_PREPROCESSOR_TOKEN_EQUAL_HPP_INCLUDED
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018 #include <boost/mpl/aux_/preprocessor/is_seq.hpp>
0019
0020 #include <boost/preprocessor/if.hpp>
0021 #include <boost/preprocessor/logical/bitand.hpp>
0022 #include <boost/preprocessor/logical/compl.hpp>
0023 #include <boost/preprocessor/tuple/eat.hpp>
0024 #include <boost/preprocessor/cat.hpp>
0025
0026
0027
0028
0029
0030
0031
0032
0033
0034
0035
0036
0037 #define BOOST_MPL_PP_TOKEN_EQUAL(a, b) \
0038 BOOST_PP_IIF( \
0039 BOOST_PP_BITAND( \
0040 BOOST_MPL_PP_IS_SEQ( BOOST_PP_CAT(BOOST_MPL_PP_TOKEN_EQUAL_, a)((unused)) ) \
0041 , BOOST_MPL_PP_IS_SEQ( BOOST_PP_CAT(BOOST_MPL_PP_TOKEN_EQUAL_, b)((unused)) ) \
0042 ) \
0043 , BOOST_MPL_PP_TOKEN_EQUAL_I \
0044 , 0 BOOST_PP_TUPLE_EAT(2) \
0045 )(a, b) \
0046
0047
0048 #define BOOST_MPL_PP_TOKEN_EQUAL_I(a, b) \
0049 BOOST_PP_COMPL(BOOST_MPL_PP_IS_SEQ( \
0050 BOOST_MPL_PP_TOKEN_EQUAL_ ## a( \
0051 BOOST_MPL_PP_TOKEN_EQUAL_ ## b \
0052 )((unused)) \
0053 )) \
0054
0055
0056 #endif