File indexing completed on 2026-09-17 09:03:11
0001 #
0002
0003
0004
0005
0006
0007
0008
0009 0010 ">#
0011 #
0012 #
0013 0014 ">#
0015 #
0016 0017 ">#
0018 # ifndef BOOST_PREPROCESSOR_LIST_FOLD_RIGHT_HPP
0019 # define BOOST_PREPROCESSOR_LIST_FOLD_RIGHT_HPP
0020 0021 ">#
0022 # include <boost/preprocessor/config/config.hpp>
0023 0024 ">#
0025 # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT()
0026 0027 ">#
0028 # include <boost/preprocessor/cat.hpp>
0029 # include <boost/preprocessor/control/while.hpp>
0030 # include <boost/preprocessor/debug/error.hpp>
0031 # include <boost/preprocessor/detail/auto_rec.hpp>
0032 0033 ">#
0034 # if 0
0035 # define BOOST_PP_LIST_FOLD_RIGHT(op, state, list)
0036 # endif
0037 0038 ">#
0039 # define BOOST_PP_LIST_FOLD_RIGHT BOOST_PP_CAT(BOOST_PP_LIST_FOLD_RIGHT_, BOOST_PP_AUTO_REC(BOOST_PP_WHILE_P, 256))
0040 0041 ">#
0042 # define BOOST_PP_LIST_FOLD_RIGHT_257(o, s, l) BOOST_PP_ERROR(0x0004)
0043 0044 ">#
0045 # define BOOST_PP_LIST_FOLD_RIGHT_D(d, o, s, l) BOOST_PP_LIST_FOLD_RIGHT_ ## d(o, s, l)
0046 # define BOOST_PP_LIST_FOLD_RIGHT_2ND BOOST_PP_LIST_FOLD_RIGHT
0047 # define BOOST_PP_LIST_FOLD_RIGHT_2ND_D BOOST_PP_LIST_FOLD_RIGHT_D
0048 0049 ">#
0050 # if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG()
0051 # include <boost/preprocessor/list/detail/edg/fold_right.hpp>
0052 # else
0053 # include <boost/preprocessor/list/detail/fold_right.hpp>
0054 # endif
0055 0056 ">#
0057 # else
0058 0059 ">#
0060 # include <boost/preprocessor/arithmetic/dec.hpp>
0061 # include <boost/preprocessor/cat.hpp>
0062 # include <boost/preprocessor/control/while.hpp>
0063 # include <boost/preprocessor/debug/error.hpp>
0064 # include <boost/preprocessor/detail/auto_rec.hpp>
0065 0066 ">#
0067 # if 0
0068 # define BOOST_PP_LIST_FOLD_RIGHT(op, state, list)
0069 # endif
0070 0071 ">#
0072 # include <boost/preprocessor/config/limits.hpp>
0073 0074 ">#
0075 # if BOOST_PP_LIMIT_WHILE == 256
0076 # define BOOST_PP_LIST_FOLD_RIGHT BOOST_PP_CAT(BOOST_PP_LIST_FOLD_RIGHT_, BOOST_PP_DEC(BOOST_PP_AUTO_REC(BOOST_PP_WHILE_P, 256)))
0077 # define BOOST_PP_LIST_FOLD_RIGHT_257(o, s, l) BOOST_PP_ERROR(0x0004)
0078 # elif BOOST_PP_LIMIT_WHILE == 512
0079 # define BOOST_PP_LIST_FOLD_RIGHT BOOST_PP_CAT(BOOST_PP_LIST_FOLD_RIGHT_, BOOST_PP_DEC(BOOST_PP_AUTO_REC(BOOST_PP_WHILE_P, 512)))
0080 # define BOOST_PP_LIST_FOLD_RIGHT_513(o, s, l) BOOST_PP_ERROR(0x0004)
0081 # elif BOOST_PP_LIMIT_WHILE == 1024
0082 # define BOOST_PP_LIST_FOLD_RIGHT BOOST_PP_CAT(BOOST_PP_LIST_FOLD_RIGHT_, BOOST_PP_DEC(BOOST_PP_AUTO_REC(BOOST_PP_WHILE_P, 1024)))
0083 # define BOOST_PP_LIST_FOLD_RIGHT_1025(o, s, l) BOOST_PP_ERROR(0x0004)
0084 # else
0085 # error Incorrect value for the BOOST_PP_LIMIT_WHILE limit
0086 # endif
0087 0088 ">#
0089 # define BOOST_PP_LIST_FOLD_RIGHT_D(d, o, s, l) BOOST_PP_LIST_FOLD_RIGHT_ ## d(o, s, l)
0090 # define BOOST_PP_LIST_FOLD_RIGHT_2ND BOOST_PP_LIST_FOLD_RIGHT
0091 # define BOOST_PP_LIST_FOLD_RIGHT_2ND_D BOOST_PP_LIST_FOLD_RIGHT_D
0092 0093 ">#
0094 # if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG()
0095 # include <boost/preprocessor/list/detail/edg/fold_right.hpp>
0096 # else
0097 # include <boost/preprocessor/list/detail/fold_right.hpp>
0098 # endif
0099 0100 ">#
0101 # endif
0102 0103 ">#
0104 # endif