/extlibs/Boost/include/boost/preprocessor/list/fold_right.hpp
C++ Header | 40 lines | 33 code | 0 blank | 7 comment | 2 complexity | d5a853384502a130649350513a7ca437 MD5 | raw file
1# /* Copyright (C) 2001 2# * Housemarque Oy 3# * http://www.housemarque.com 4# * 5# * Distributed under the Boost Software License, Version 1.0. (See 6# * accompanying file LICENSE_1_0.txt or copy at 7# * http://www.boost.org/LICENSE_1_0.txt) 8# */ 9# 10# /* Revised by Paul Mensonides (2002) */ 11# 12# /* See http://www.boost.org for most recent version. */ 13# 14# ifndef BOOST_PREPROCESSOR_LIST_FOLD_RIGHT_HPP 15# define BOOST_PREPROCESSOR_LIST_FOLD_RIGHT_HPP 16# 17# include <boost/preprocessor/cat.hpp> 18# include <boost/preprocessor/control/while.hpp> 19# include <boost/preprocessor/debug/error.hpp> 20# include <boost/preprocessor/detail/auto_rec.hpp> 21# 22# if 0 23# define BOOST_PP_LIST_FOLD_RIGHT(op, state, list) 24# endif 25# 26# define BOOST_PP_LIST_FOLD_RIGHT BOOST_PP_CAT(BOOST_PP_LIST_FOLD_RIGHT_, BOOST_PP_AUTO_REC(BOOST_PP_WHILE_P, 256)) 27# 28# define BOOST_PP_LIST_FOLD_RIGHT_257(o, s, l) BOOST_PP_ERROR(0x0004) 29# 30# define BOOST_PP_LIST_FOLD_RIGHT_D(d, o, s, l) BOOST_PP_LIST_FOLD_RIGHT_ ## d(o, s, l) 31# define BOOST_PP_LIST_FOLD_RIGHT_2ND BOOST_PP_LIST_FOLD_RIGHT 32# define BOOST_PP_LIST_FOLD_RIGHT_2ND_D BOOST_PP_LIST_FOLD_RIGHT_D 33# 34# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() 35# include <boost/preprocessor/list/detail/edg/fold_right.hpp> 36# else 37# include <boost/preprocessor/list/detail/fold_right.hpp> 38# endif 39# 40# endif