#include <boost/preprocessor/config/config.hpp>#include <boost/preprocessor/facilities/empty.hpp>#include <boost/preprocessor/seq/fold_left.hpp>

Macros | |
| #define | BOOST_PP_SEQ_REVERSE(seq) BOOST_PP_SEQ_REVERSE_I(seq) | 
| #define | BOOST_PP_SEQ_REVERSE_I(seq) BOOST_PP_SEQ_FOLD_LEFT(BOOST_PP_SEQ_REVERSE_O, BOOST_PP_EMPTY, seq)() | 
| #define | BOOST_PP_SEQ_REVERSE_O(s, state, elem) (elem) state | 
| #define | BOOST_PP_SEQ_REVERSE_S(s, seq) BOOST_PP_SEQ_REVERSE_S_I(s, seq) | 
| #define | BOOST_PP_SEQ_REVERSE_S_I(s, seq) BOOST_PP_SEQ_FOLD_LEFT_ ## s(BOOST_PP_SEQ_REVERSE_O, BOOST_PP_EMPTY, seq)() | 
| #define BOOST_PP_SEQ_REVERSE | ( | seq | ) | BOOST_PP_SEQ_REVERSE_I(seq) | 
| #define BOOST_PP_SEQ_REVERSE_I | ( | seq | ) | BOOST_PP_SEQ_FOLD_LEFT(BOOST_PP_SEQ_REVERSE_O, BOOST_PP_EMPTY, seq)() | 
| #define BOOST_PP_SEQ_REVERSE_O | ( | s, | |
| state, | |||
| elem | |||
| ) | (elem) state | 
| #define BOOST_PP_SEQ_REVERSE_S | ( | s, | |
| seq | |||
| ) | BOOST_PP_SEQ_REVERSE_S_I(s, seq) | 
| #define BOOST_PP_SEQ_REVERSE_S_I | ( | s, | |
| seq | |||
| ) | BOOST_PP_SEQ_FOLD_LEFT_ ## s(BOOST_PP_SEQ_REVERSE_O, BOOST_PP_EMPTY, seq)() |