Warning, file /include/boost/local_function/detail/preprocessor/keyword/facility/remove.hpp was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008 #ifndef BOOST_LOCAL_FUNCTION_DETAIL_PP_KEYWORD_FACILITY_REMOVE_HPP_
0009 #define BOOST_LOCAL_FUNCTION_DETAIL_PP_KEYWORD_FACILITY_REMOVE_HPP_
0010
0011 #include <boost/preprocessor/control/iif.hpp>
0012 #include <boost/preprocessor/tuple/eat.hpp>
0013 #include <boost/preprocessor/config/config.hpp>
0014 #include <boost/preprocessor/cat.hpp>
0015
0016
0017
0018
0019 #if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() && \
0020 ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_DMC()
0021 # define BOOST_LOCAL_FUNCTION_DETAIL_PP_KEYWORD_FACILITY_REMOVE_EXPAND_(x) \
0022 BOOST_LOCAL_FUNCTION_DETAIL_PP_KEYWORD_FACILITY_REMOVE_EXPAND_I_(x)
0023 #else
0024 # define BOOST_LOCAL_FUNCTION_DETAIL_PP_KEYWORD_FACILITY_REMOVE_EXPAND_(x) \
0025 BOOST_LOCAL_FUNCTION_DETAIL_PP_KEYWORD_FACILITY_REMOVE_EXPAND_OO_((x))
0026 # define BOOST_LOCAL_FUNCTION_DETAIL_PP_KEYWORD_FACILITY_REMOVE_EXPAND_OO_( \
0027 par) \
0028 BOOST_LOCAL_FUNCTION_DETAIL_PP_KEYWORD_FACILITY_REMOVE_EXPAND_I_ ## par
0029 #endif
0030 #define BOOST_LOCAL_FUNCTION_DETAIL_PP_KEYWORD_FACILITY_REMOVE_EXPAND_I_(x) x
0031
0032
0033
0034
0035
0036 #define BOOST_LOCAL_FUNCTION_DETAIL_PP_KEYWORD_FACILITY_REMOVE_FRONT( \
0037 tokens, is_front_macro, removing_prefix) \
0038 \
0039 BOOST_LOCAL_FUNCTION_DETAIL_PP_KEYWORD_FACILITY_REMOVE_EXPAND_( \
0040 BOOST_PP_IIF(is_front_macro(tokens), \
0041 BOOST_PP_CAT \
0042 , \
0043 tokens BOOST_PP_TUPLE_EAT(2) \
0044 )(removing_prefix, tokens) \
0045 )
0046
0047
0048
0049 #define BOOST_LOCAL_FUNCTION_DETAIL_PP_KEYWORD_FACILITY_REMOVE_BACK( \
0050 tokens, is_back_macro, removing_prefix) \
0051 BOOST_PP_IIF(is_back_macro(tokens), \
0052 BOOST_PP_CAT \
0053 , \
0054 tokens BOOST_PP_TUPLE_EAT(2) \
0055 )(tokens, removing_postfix)
0056
0057 #endif
0058