#include <boost/preprocessor/cat.hpp> #include <boost/preprocessor/seq/elem.hpp> #include <boost/preprocessor/seq/fold_right.hpp> #include <boost/preprocessor/seq/pop_back.hpp> #define SEQ (t)(s)(o)(o)(b) #define OP(s, state, x) BOOST_PP_CAT(state, x) BOOST_PP_SEQ_FOLD_RIGHT(OP, BOOST_PP_SEQ_ELEM(4, SEQ), BOOST_PP_SEQ_POP_BACK(SEQ)) // expands to boost
Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at www.boost.org/LICENSE_1_0.txt)