forked from boostorg/preprocessor
initial revision
[SVN r15203]
This commit is contained in:
57
include/boost/preprocessor/tuple/eat.hpp
Normal file
57
include/boost/preprocessor/tuple/eat.hpp
Normal file
@ -0,0 +1,57 @@
|
||||
# /* Copyright (C) 2001
|
||||
# * Housemarque Oy
|
||||
# * http://www.housemarque.com
|
||||
# *
|
||||
# * Permission to copy, use, modify, sell and distribute this software is
|
||||
# * granted provided this copyright notice appears in all copies. This
|
||||
# * software is provided "as is" without express or implied warranty, and
|
||||
# * with no claim as to its suitability for any purpose.
|
||||
# */
|
||||
#
|
||||
# /* Revised by Paul Mensonides (2002) */
|
||||
#
|
||||
# /* See http://www.boost.org for most recent version. */
|
||||
#
|
||||
# ifndef BOOST_PREPROCESSOR_TUPLE_EAT_HPP
|
||||
# define BOOST_PREPROCESSOR_TUPLE_EAT_HPP
|
||||
#
|
||||
# include <boost/preprocessor/cat.hpp>
|
||||
# include <boost/preprocessor/config/config.hpp>
|
||||
#
|
||||
# /* BOOST_PP_TUPLE_EAT */
|
||||
#
|
||||
# if ~BOOST_PP_CONFIG_FLAGS & BOOST_PP_CONFIG_EDG
|
||||
# define BOOST_PP_TUPLE_EAT(size) BOOST_PP_CAT(BOOST_PP_TUPLE_EAT_, size)
|
||||
# else
|
||||
# define BOOST_PP_TUPLE_EAT(size) BOOST_PP_TUPLE_EAT_D(size)
|
||||
# define BOOST_PP_TUPLE_EAT_D(size) BOOST_PP_TUPLE_EAT_ ## size
|
||||
# endif
|
||||
#
|
||||
# define BOOST_PP_TUPLE_EAT_0()
|
||||
# define BOOST_PP_TUPLE_EAT_1(a)
|
||||
# define BOOST_PP_TUPLE_EAT_2(a, b)
|
||||
# define BOOST_PP_TUPLE_EAT_3(a, b, c)
|
||||
# define BOOST_PP_TUPLE_EAT_4(a, b, c, d)
|
||||
# define BOOST_PP_TUPLE_EAT_5(a, b, c, d, e)
|
||||
# define BOOST_PP_TUPLE_EAT_6(a, b, c, d, e, f)
|
||||
# define BOOST_PP_TUPLE_EAT_7(a, b, c, d, e, f, g)
|
||||
# define BOOST_PP_TUPLE_EAT_8(a, b, c, d, e, f, g, h)
|
||||
# define BOOST_PP_TUPLE_EAT_9(a, b, c, d, e, f, g, h, i)
|
||||
# define BOOST_PP_TUPLE_EAT_10(a, b, c, d, e, f, g, h, i, j)
|
||||
# define BOOST_PP_TUPLE_EAT_11(a, b, c, d, e, f, g, h, i, j, k)
|
||||
# define BOOST_PP_TUPLE_EAT_12(a, b, c, d, e, f, g, h, i, j, k, l)
|
||||
# define BOOST_PP_TUPLE_EAT_13(a, b, c, d, e, f, g, h, i, j, k, l, m)
|
||||
# define BOOST_PP_TUPLE_EAT_14(a, b, c, d, e, f, g, h, i, j, k, l, m, n)
|
||||
# define BOOST_PP_TUPLE_EAT_15(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o)
|
||||
# define BOOST_PP_TUPLE_EAT_16(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p)
|
||||
# define BOOST_PP_TUPLE_EAT_17(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q)
|
||||
# define BOOST_PP_TUPLE_EAT_18(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r)
|
||||
# define BOOST_PP_TUPLE_EAT_19(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s)
|
||||
# define BOOST_PP_TUPLE_EAT_20(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t)
|
||||
# define BOOST_PP_TUPLE_EAT_21(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u)
|
||||
# define BOOST_PP_TUPLE_EAT_22(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v)
|
||||
# define BOOST_PP_TUPLE_EAT_23(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w)
|
||||
# define BOOST_PP_TUPLE_EAT_24(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x)
|
||||
# define BOOST_PP_TUPLE_EAT_25(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y)
|
||||
#
|
||||
# endif
|
99
include/boost/preprocessor/tuple/elem.hpp
Normal file
99
include/boost/preprocessor/tuple/elem.hpp
Normal file
@ -0,0 +1,99 @@
|
||||
# /* Copyright (C) 2001
|
||||
# * Housemarque Oy
|
||||
# * http://www.housemarque.com
|
||||
# *
|
||||
# * Permission to copy, use, modify, sell and distribute this software is
|
||||
# * granted provided this copyright notice appears in all copies. This
|
||||
# * software is provided "as is" without express or implied warranty, and
|
||||
# * with no claim as to its suitability for any purpose.
|
||||
# */
|
||||
#
|
||||
# /* Revised by Paul Mensonides (2002) */
|
||||
#
|
||||
# /* See http://www.boost.org for most recent version. */
|
||||
#
|
||||
# ifndef BOOST_PREPROCESSOR_TUPLE_ELEM_HPP
|
||||
# define BOOST_PREPROCESSOR_TUPLE_ELEM_HPP
|
||||
#
|
||||
# include <boost/preprocessor/cat.hpp>
|
||||
# include <boost/preprocessor/config/config.hpp>
|
||||
# include <boost/preprocessor/debug/error.hpp>
|
||||
#
|
||||
# /* BOOST_PP_TUPLE_ELEM */
|
||||
#
|
||||
# if BOOST_PP_CONFIG_FLAGS & BOOST_PP_CONFIG_IDEAL
|
||||
# define BOOST_PP_TUPLE_ELEM(size, i, tuple) BOOST_PP_TUPLE_ELEM_D(BOOST_PP_CAT(BOOST_PP_TUPLE_ELEM_EX_, size) tuple, i)
|
||||
# define BOOST_PP_TUPLE_ELEM_D(tuple, i) BOOST_PP_TUPLE_ELEM_ ## i tuple
|
||||
# elif ~BOOST_PP_CONFIG_FLAGS & BOOST_PP_CONFIG_MWCW
|
||||
# define BOOST_PP_TUPLE_ELEM(size, index, tuple) BOOST_PP_TUPLE_ELEM_I(size, index, tuple)
|
||||
# define BOOST_PP_TUPLE_ELEM_I(size, i, tuple) BOOST_PP_TUPLE_ELEM_II(BOOST_PP_TUPLE_ELEM_EX_ ## size, i, tuple)
|
||||
# define BOOST_PP_TUPLE_ELEM_II(exp, i, tuple) BOOST_PP_TUPLE_ELEM_III(exp tuple, i)
|
||||
# define BOOST_PP_TUPLE_ELEM_III(ext, i) BOOST_PP_TUPLE_ELEM_IV(ext, i)
|
||||
# define BOOST_PP_TUPLE_ELEM_IV(ext, i) BOOST_PP_TUPLE_ELEM_V(BOOST_PP_TUPLE_ELEM_ ## i ext)
|
||||
# define BOOST_PP_TUPLE_ELEM_V(res) res
|
||||
# else
|
||||
# define BOOST_PP_TUPLE_ELEM(size, index, tuple) BOOST_PP_TUPLE_ELEM_D((size, index, tuple))
|
||||
# define BOOST_PP_TUPLE_ELEM_D(par) BOOST_PP_TUPLE_ELEM_I ## par
|
||||
# define BOOST_PP_TUPLE_ELEM_I(s, i, t) BOOST_PP_TUPLE_ELEM_II((BOOST_PP_TUPLE_ELEM_EX_ ## s, i, t))
|
||||
# define BOOST_PP_TUPLE_ELEM_II(par) BOOST_PP_TUPLE_ELEM_III ## par
|
||||
# define BOOST_PP_TUPLE_ELEM_III(m, i, t) BOOST_PP_TUPLE_ELEM_IV((m ## t, i))
|
||||
# define BOOST_PP_TUPLE_ELEM_IV(par) BOOST_PP_TUPLE_ELEM_IV_D(par)
|
||||
# define BOOST_PP_TUPLE_ELEM_IV_D(par) BOOST_PP_TUPLE_ELEM_V ## par
|
||||
# define BOOST_PP_TUPLE_ELEM_V(x, i) BOOST_PP_TUPLE_ELEM_VI(BOOST_PP_TUPLE_ELEM_ ## i ## x)
|
||||
# define BOOST_PP_TUPLE_ELEM_VI(res) res
|
||||
# endif
|
||||
#
|
||||
# define BOOST_PP_TUPLE_ELEM_EX_0() (BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000))
|
||||
# define BOOST_PP_TUPLE_ELEM_EX_1(a) (a, BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000))
|
||||
# define BOOST_PP_TUPLE_ELEM_EX_2(a, b) (a, b, BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000))
|
||||
# define BOOST_PP_TUPLE_ELEM_EX_3(a, b, c) (a, b, c, BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000))
|
||||
# define BOOST_PP_TUPLE_ELEM_EX_4(a, b, c, d) (a, b, c, d, BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000))
|
||||
# define BOOST_PP_TUPLE_ELEM_EX_5(a, b, c, d, e) (a, b, c, d, e, BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000))
|
||||
# define BOOST_PP_TUPLE_ELEM_EX_6(a, b, c, d, e, f) (a, b, c, d, e, f, BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000))
|
||||
# define BOOST_PP_TUPLE_ELEM_EX_7(a, b, c, d, e, f, g) (a, b, c, d, e, f, g, BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000))
|
||||
# define BOOST_PP_TUPLE_ELEM_EX_8(a, b, c, d, e, f, g, h) (a, b, c, d, e, f, g, h, BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000))
|
||||
# define BOOST_PP_TUPLE_ELEM_EX_9(a, b, c, d, e, f, g, h, i) (a, b, c, d, e, f, g, h, i, BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000))
|
||||
# define BOOST_PP_TUPLE_ELEM_EX_10(a, b, c, d, e, f, g, h, i, j) (a, b, c, d, e, f, g, h, i, j, BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000))
|
||||
# define BOOST_PP_TUPLE_ELEM_EX_11(a, b, c, d, e, f, g, h, i, j, k) (a, b, c, d, e, f, g, h, i, j, k, BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000))
|
||||
# define BOOST_PP_TUPLE_ELEM_EX_12(a, b, c, d, e, f, g, h, i, j, k, l) (a, b, c, d, e, f, g, h, i, j, k, l, BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000))
|
||||
# define BOOST_PP_TUPLE_ELEM_EX_13(a, b, c, d, e, f, g, h, i, j, k, l, m) (a, b, c, d, e, f, g, h, i, j, k, l, m, BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000))
|
||||
# define BOOST_PP_TUPLE_ELEM_EX_14(a, b, c, d, e, f, g, h, i, j, k, l, m, n) (a, b, c, d, e, f, g, h, i, j, k, l, m, n, BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000))
|
||||
# define BOOST_PP_TUPLE_ELEM_EX_15(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000))
|
||||
# define BOOST_PP_TUPLE_ELEM_EX_16(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p) (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000))
|
||||
# define BOOST_PP_TUPLE_ELEM_EX_17(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q) (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000))
|
||||
# define BOOST_PP_TUPLE_ELEM_EX_18(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r) (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000))
|
||||
# define BOOST_PP_TUPLE_ELEM_EX_19(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s) (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000))
|
||||
# define BOOST_PP_TUPLE_ELEM_EX_20(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t) (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000))
|
||||
# define BOOST_PP_TUPLE_ELEM_EX_21(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u) (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000))
|
||||
# define BOOST_PP_TUPLE_ELEM_EX_22(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v) (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000))
|
||||
# define BOOST_PP_TUPLE_ELEM_EX_23(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w) (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, BOOST_PP_ERROR(0x0000), BOOST_PP_ERROR(0x0000))
|
||||
# define BOOST_PP_TUPLE_ELEM_EX_24(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x) (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, BOOST_PP_ERROR(0x0000))
|
||||
# define BOOST_PP_TUPLE_ELEM_EX_25(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y) (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y)
|
||||
#
|
||||
# define BOOST_PP_TUPLE_ELEM_0(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y) a
|
||||
# define BOOST_PP_TUPLE_ELEM_1(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y) b
|
||||
# define BOOST_PP_TUPLE_ELEM_2(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y) c
|
||||
# define BOOST_PP_TUPLE_ELEM_3(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y) d
|
||||
# define BOOST_PP_TUPLE_ELEM_4(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y) e
|
||||
# define BOOST_PP_TUPLE_ELEM_5(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y) f
|
||||
# define BOOST_PP_TUPLE_ELEM_6(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y) g
|
||||
# define BOOST_PP_TUPLE_ELEM_7(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y) h
|
||||
# define BOOST_PP_TUPLE_ELEM_8(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y) i
|
||||
# define BOOST_PP_TUPLE_ELEM_9(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y) j
|
||||
# define BOOST_PP_TUPLE_ELEM_10(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y) k
|
||||
# define BOOST_PP_TUPLE_ELEM_11(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y) l
|
||||
# define BOOST_PP_TUPLE_ELEM_12(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y) m
|
||||
# define BOOST_PP_TUPLE_ELEM_13(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y) n
|
||||
# define BOOST_PP_TUPLE_ELEM_14(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y) o
|
||||
# define BOOST_PP_TUPLE_ELEM_15(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y) p
|
||||
# define BOOST_PP_TUPLE_ELEM_16(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y) q
|
||||
# define BOOST_PP_TUPLE_ELEM_17(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y) r
|
||||
# define BOOST_PP_TUPLE_ELEM_18(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y) s
|
||||
# define BOOST_PP_TUPLE_ELEM_19(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y) t
|
||||
# define BOOST_PP_TUPLE_ELEM_20(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y) u
|
||||
# define BOOST_PP_TUPLE_ELEM_21(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y) v
|
||||
# define BOOST_PP_TUPLE_ELEM_22(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y) w
|
||||
# define BOOST_PP_TUPLE_ELEM_23(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y) x
|
||||
# define BOOST_PP_TUPLE_ELEM_24(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y) y
|
||||
#
|
||||
# endif
|
55
include/boost/preprocessor/tuple/rem.hpp
Normal file
55
include/boost/preprocessor/tuple/rem.hpp
Normal file
@ -0,0 +1,55 @@
|
||||
# /* **************************************************************************
|
||||
# * *
|
||||
# * (C) Copyright Paul Mensonides 2002. Permission to copy, use, *
|
||||
# * modify, sell, and distribute this software is granted provided *
|
||||
# * this copyright notice appears in all copies. This software is *
|
||||
# * provided "as is" without express or implied warranty, and with *
|
||||
# * no claim at to its suitability for any purpose. *
|
||||
# * *
|
||||
# ************************************************************************** */
|
||||
#
|
||||
# /* See http://www.boost.org for most recent version. */
|
||||
#
|
||||
# ifndef BOOST_PREPROCESSOR_TUPLE_REM_HPP
|
||||
# define BOOST_PREPROCESSOR_TUPLE_REM_HPP
|
||||
#
|
||||
# include <boost/preprocessor/cat.hpp>
|
||||
# include <boost/preprocessor/config/config.hpp>
|
||||
#
|
||||
# /* BOOST_PP_TUPLE_REM */
|
||||
#
|
||||
# if ~BOOST_PP_CONFIG_FLAGS & BOOST_PP_CONFIG_EDG
|
||||
# define BOOST_PP_TUPLE_REM(size) BOOST_PP_CAT(BOOST_PP_TUPLE_REM_, size)
|
||||
# else
|
||||
# define BOOST_PP_TUPLE_REM(size) BOOST_PP_TUPLE_REM_D(size)
|
||||
# define BOOST_PP_TUPLE_REM_D(size) BOOST_PP_TUPLE_REM_ ## size
|
||||
# endif
|
||||
#
|
||||
# define BOOST_PP_TUPLE_REM_0()
|
||||
# define BOOST_PP_TUPLE_REM_1(a) a
|
||||
# define BOOST_PP_TUPLE_REM_2(a, b) a, b
|
||||
# define BOOST_PP_TUPLE_REM_3(a, b, c) a, b, c
|
||||
# define BOOST_PP_TUPLE_REM_4(a, b, c, d) a, b, c, d
|
||||
# define BOOST_PP_TUPLE_REM_5(a, b, c, d, e) a, b, c, d, e
|
||||
# define BOOST_PP_TUPLE_REM_6(a, b, c, d, e, f) a, b, c, d, e, f
|
||||
# define BOOST_PP_TUPLE_REM_7(a, b, c, d, e, f, g) a, b, c, d, e, f, g
|
||||
# define BOOST_PP_TUPLE_REM_8(a, b, c, d, e, f, g, h) a, b, c, d, e, f, g, h
|
||||
# define BOOST_PP_TUPLE_REM_9(a, b, c, d, e, f, g, h, i) a, b, c, d, e, f, g, h, i
|
||||
# define BOOST_PP_TUPLE_REM_10(a, b, c, d, e, f, g, h, i, j) a, b, c, d, e, f, g, h, i, j
|
||||
# define BOOST_PP_TUPLE_REM_11(a, b, c, d, e, f, g, h, i, j, k) a, b, c, d, e, f, g, h, i, j, k
|
||||
# define BOOST_PP_TUPLE_REM_12(a, b, c, d, e, f, g, h, i, j, k, l) a, b, c, d, e, f, g, h, i, j, k, l
|
||||
# define BOOST_PP_TUPLE_REM_13(a, b, c, d, e, f, g, h, i, j, k, l, m) a, b, c, d, e, f, g, h, i, j, k, l, m
|
||||
# define BOOST_PP_TUPLE_REM_14(a, b, c, d, e, f, g, h, i, j, k, l, m, n) a, b, c, d, e, f, g, h, i, j, k, l, m, n
|
||||
# define BOOST_PP_TUPLE_REM_15(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) a, b, c, d, e, f, g, h, i, j, k, l, m, n, o
|
||||
# define BOOST_PP_TUPLE_REM_16(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p) a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p
|
||||
# define BOOST_PP_TUPLE_REM_17(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q) a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q
|
||||
# define BOOST_PP_TUPLE_REM_18(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r) a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r
|
||||
# define BOOST_PP_TUPLE_REM_19(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s) a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s
|
||||
# define BOOST_PP_TUPLE_REM_20(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t) a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t
|
||||
# define BOOST_PP_TUPLE_REM_21(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u) a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u
|
||||
# define BOOST_PP_TUPLE_REM_22(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v) a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v
|
||||
# define BOOST_PP_TUPLE_REM_23(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w) a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w
|
||||
# define BOOST_PP_TUPLE_REM_24(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x) a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x
|
||||
# define BOOST_PP_TUPLE_REM_25(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y) a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y
|
||||
#
|
||||
# endif
|
63
include/boost/preprocessor/tuple/reverse.hpp
Normal file
63
include/boost/preprocessor/tuple/reverse.hpp
Normal file
@ -0,0 +1,63 @@
|
||||
# /* Copyright (C) 2001
|
||||
# * Housemarque Oy
|
||||
# * http://www.housemarque.com
|
||||
# *
|
||||
# * Permission to copy, use, modify, sell and distribute this software is
|
||||
# * granted provided this copyright notice appears in all copies. This
|
||||
# * software is provided "as is" without express or implied warranty, and
|
||||
# * with no claim as to its suitability for any purpose.
|
||||
# */
|
||||
#
|
||||
# /* Revised by Paul Mensonides (2002) */
|
||||
#
|
||||
# /* See http://www.boost.org for most recent version. */
|
||||
#
|
||||
# ifndef BOOST_PREPROCESSOR_TUPLE_REVERSE_HPP
|
||||
# define BOOST_PREPROCESSOR_TUPLE_REVERSE_HPP
|
||||
#
|
||||
# include <boost/preprocessor/cat.hpp>
|
||||
# include <boost/preprocessor/config/config.hpp>
|
||||
#
|
||||
# /* BOOST_PP_TUPLE_REVERSE */
|
||||
#
|
||||
# if ~BOOST_PP_CONFIG_FLAGS & BOOST_PP_CONFIG_IDEAL
|
||||
# define BOOST_PP_TUPLE_REVERSE(size, tuple) BOOST_PP_CAT(BOOST_PP_TUPLE_REVERSE_, size) tuple
|
||||
# elif ~BOOST_PP_CONFIG_FLAGS & BOOST_PP_CONFIG_MWCW
|
||||
# define BOOST_PP_TUPLE_REVERSE(size, tuple) BOOST_PP_TUPLE_REVERSE_D(size, tuple)
|
||||
# define BOOST_PP_TUPLE_REVERSE_D(size, tuple) BOOST_PP_TUPLE_REVERSE_I(BOOST_PP_TUPLE_REVERSE_ ## size, tuple)
|
||||
# define BOOST_PP_TUPLE_REVERSE_I(rev, tuple) rev tuple
|
||||
# else
|
||||
# define BOOST_PP_TUPLE_REVERSE(size, tuple) BOOST_PP_EVIL_TUPLE_REVERSE_I((size, tuple))
|
||||
# define BOOST_PP_EVIL_TUPLE_REVERSE_I(par) BOOST_PP_TUPLE_REVERSE_II ## par
|
||||
# define BOOST_PP_TUPLE_REVERSE_II(size, tuple) BOOST_PP_EVIL_TUPLE_REVERSE_III(BOOST_PP_TUPLE_REVERSE_ ## size, tuple)
|
||||
# define BOOST_PP_EVIL_TUPLE_REVERSE_III(rev, tuple) rev ## tuple
|
||||
# endif
|
||||
#
|
||||
# define BOOST_PP_TUPLE_REVERSE_0() ()
|
||||
# define BOOST_PP_TUPLE_REVERSE_1(a) (a)
|
||||
# define BOOST_PP_TUPLE_REVERSE_2(a, b) (b, a)
|
||||
# define BOOST_PP_TUPLE_REVERSE_3(a, b, c) (c, b, a)
|
||||
# define BOOST_PP_TUPLE_REVERSE_4(a, b, c, d) (d, c, b, a)
|
||||
# define BOOST_PP_TUPLE_REVERSE_5(a, b, c, d, e) (e, d, c, b, a)
|
||||
# define BOOST_PP_TUPLE_REVERSE_6(a, b, c, d, e, f) (f, e, d, c, b, a)
|
||||
# define BOOST_PP_TUPLE_REVERSE_7(a, b, c, d, e, f, g) (g, f, e, d, c, b, a)
|
||||
# define BOOST_PP_TUPLE_REVERSE_8(a, b, c, d, e, f, g, h) (h, g, f, e, d, c, b, a)
|
||||
# define BOOST_PP_TUPLE_REVERSE_9(a, b, c, d, e, f, g, h, i) (i, h, g, f, e, d, c, b, a)
|
||||
# define BOOST_PP_TUPLE_REVERSE_10(a, b, c, d, e, f, g, h, i, j) (j, i, h, g, f, e, d, c, b, a)
|
||||
# define BOOST_PP_TUPLE_REVERSE_11(a, b, c, d, e, f, g, h, i, j, k) (k, j, i, h, g, f, e, d, c, b, a)
|
||||
# define BOOST_PP_TUPLE_REVERSE_12(a, b, c, d, e, f, g, h, i, j, k, l) (l, k, j, i, h, g, f, e, d, c, b, a)
|
||||
# define BOOST_PP_TUPLE_REVERSE_13(a, b, c, d, e, f, g, h, i, j, k, l, m) (m, l, k, j, i, h, g, f, e, d, c, b, a)
|
||||
# define BOOST_PP_TUPLE_REVERSE_14(a, b, c, d, e, f, g, h, i, j, k, l, m, n) (n, m, l, k, j, i, h, g, f, e, d, c, b, a)
|
||||
# define BOOST_PP_TUPLE_REVERSE_15(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) (o, n, m, l, k, j, i, h, g, f, e, d, c, b, a)
|
||||
# define BOOST_PP_TUPLE_REVERSE_16(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p) (p, o, n, m, l, k, j, i, h, g, f, e, d, c, b, a)
|
||||
# define BOOST_PP_TUPLE_REVERSE_17(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q) (q, p, o, n, m, l, k, j, i, h, g, f, e, d, c, b, a)
|
||||
# define BOOST_PP_TUPLE_REVERSE_18(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r) (r, q, p, o, n, m, l, k, j, i, h, g, f, e, d, c, b, a)
|
||||
# define BOOST_PP_TUPLE_REVERSE_19(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s) (s, r, q, p, o, n, m, l, k, j, i, h, g, f, e, d, c, b, a)
|
||||
# define BOOST_PP_TUPLE_REVERSE_20(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t) (t, s, r, q, p, o, n, m, l, k, j, i, h, g, f, e, d, c, b, a)
|
||||
# define BOOST_PP_TUPLE_REVERSE_21(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u) (u, t, s, r, q, p, o, n, m, l, k, j, i, h, g, f, e, d, c, b, a)
|
||||
# define BOOST_PP_TUPLE_REVERSE_22(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v) (v, u, t, s, r, q, p, o, n, m, l, k, j, i, h, g, f, e, d, c, b, a)
|
||||
# define BOOST_PP_TUPLE_REVERSE_23(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w) (w, v, u, t, s, r, q, p, o, n, m, l, k, j, i, h, g, f, e, d, c, b, a)
|
||||
# define BOOST_PP_TUPLE_REVERSE_24(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x) (x, w, v, u, t, s, r, q, p, o, n, m, l, k, j, i, h, g, f, e, d, c, b, a)
|
||||
# define BOOST_PP_TUPLE_REVERSE_25(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y) (y, x, w, v, u, t, s, r, q, p, o, n, m, l, k, j, i, h, g, f, e, d, c, b, a)
|
||||
#
|
||||
# endif
|
63
include/boost/preprocessor/tuple/to_list.hpp
Normal file
63
include/boost/preprocessor/tuple/to_list.hpp
Normal file
@ -0,0 +1,63 @@
|
||||
# /* Copyright (C) 2001
|
||||
# * Housemarque Oy
|
||||
# * http://www.housemarque.com
|
||||
# *
|
||||
# * Permission to copy, use, modify, sell and distribute this software is
|
||||
# * granted provided this copyright notice appears in all copies. This
|
||||
# * software is provided "as is" without express or implied warranty, and
|
||||
# * with no claim as to its suitability for any purpose.
|
||||
# */
|
||||
#
|
||||
# /* Revised by Paul Mensonides (2002) */
|
||||
#
|
||||
# /* See http://www.boost.org for most recent version. */
|
||||
#
|
||||
# ifndef BOOST_PREPROCESSOR_TUPLE_TO_LIST_HPP
|
||||
# define BOOST_PREPROCESSOR_TUPLE_TO_LIST_HPP
|
||||
#
|
||||
# include <boost/preprocessor/cat.hpp>
|
||||
# include <boost/preprocessor/config/config.hpp>
|
||||
#
|
||||
# /* BOOST_PP_TUPLE_TO_LIST */
|
||||
#
|
||||
# if BOOST_PP_CONFIG_FLAGS & BOOST_PP_CONFIG_IDEAL
|
||||
# define BOOST_PP_TUPLE_TO_LIST(size, tuple) BOOST_PP_CAT(BOOST_PP_TUPLE_TO_LIST_, size) tuple
|
||||
# elif ~BOOST_PP_CONFIG_FLAGS & BOOST_PP_CONFIG_MWCW
|
||||
# define BOOST_PP_TUPLE_TO_LIST(size, tuple) BOOST_PP_TUPLE_TO_LIST_I(size, tuple)
|
||||
# define BOOST_PP_TUPLE_TO_LIST_I(size, tuple) BOOST_PP_TUPLE_TO_LIST_II(BOOST_PP_TUPLE_TO_LIST_ ## size, tuple)
|
||||
# define BOOST_PP_TUPLE_TO_LIST_II(tl, tuple) tl tuple
|
||||
# else
|
||||
# define BOOST_PP_TUPLE_TO_LIST(size, tuple) BOOST_PP_EVIL_TUPLE_TO_LIST_I((size, tuple))
|
||||
# define BOOST_PP_EVIL_TUPLE_TO_LIST_I(par) BOOST_PP_TUPLE_TO_LIST_II ## par
|
||||
# define BOOST_PP_TUPLE_TO_LIST_II(size, tuple) BOOST_PP_EVIL_TUPLE_TO_LIST_III(BOOST_PP_TUPLE_TO_LIST_ ## size, tuple)
|
||||
# define BOOST_PP_EVIL_TUPLE_TO_LIST_III(tl, tuple) tl ## tuple
|
||||
# endif
|
||||
#
|
||||
# define BOOST_PP_TUPLE_TO_LIST_0() BOOST_PP_NIL
|
||||
# define BOOST_PP_TUPLE_TO_LIST_1(a) (a, BOOST_PP_NIL)
|
||||
# define BOOST_PP_TUPLE_TO_LIST_2(a, b) (a, (b, BOOST_PP_NIL))
|
||||
# define BOOST_PP_TUPLE_TO_LIST_3(a, b, c) (a, (b, (c, BOOST_PP_NIL)))
|
||||
# define BOOST_PP_TUPLE_TO_LIST_4(a, b, c, d) (a, (b, (c, (d, BOOST_PP_NIL))))
|
||||
# define BOOST_PP_TUPLE_TO_LIST_5(a, b, c, d, e) (a, (b, (c, (d, (e, BOOST_PP_NIL)))))
|
||||
# define BOOST_PP_TUPLE_TO_LIST_6(a, b, c, d, e, f) (a, (b, (c, (d, (e, (f, BOOST_PP_NIL))))))
|
||||
# define BOOST_PP_TUPLE_TO_LIST_7(a, b, c, d, e, f, g) (a, (b, (c, (d, (e, (f, (g, BOOST_PP_NIL)))))))
|
||||
# define BOOST_PP_TUPLE_TO_LIST_8(a, b, c, d, e, f, g, h) (a, (b, (c, (d, (e, (f, (g, (h, BOOST_PP_NIL))))))))
|
||||
# define BOOST_PP_TUPLE_TO_LIST_9(a, b, c, d, e, f, g, h, i) (a, (b, (c, (d, (e, (f, (g, (h, (i, BOOST_PP_NIL)))))))))
|
||||
# define BOOST_PP_TUPLE_TO_LIST_10(a, b, c, d, e, f, g, h, i, j) (a, (b, (c, (d, (e, (f, (g, (h, (i, (j, BOOST_PP_NIL))))))))))
|
||||
# define BOOST_PP_TUPLE_TO_LIST_11(a, b, c, d, e, f, g, h, i, j, k) (a, (b, (c, (d, (e, (f, (g, (h, (i, (j, (k, BOOST_PP_NIL)))))))))))
|
||||
# define BOOST_PP_TUPLE_TO_LIST_12(a, b, c, d, e, f, g, h, i, j, k, l) (a, (b, (c, (d, (e, (f, (g, (h, (i, (j, (k, (l, BOOST_PP_NIL))))))))))))
|
||||
# define BOOST_PP_TUPLE_TO_LIST_13(a, b, c, d, e, f, g, h, i, j, k, l, m) (a, (b, (c, (d, (e, (f, (g, (h, (i, (j, (k, (l, (m, BOOST_PP_NIL)))))))))))))
|
||||
# define BOOST_PP_TUPLE_TO_LIST_14(a, b, c, d, e, f, g, h, i, j, k, l, m, n) (a, (b, (c, (d, (e, (f, (g, (h, (i, (j, (k, (l, (m, (n, BOOST_PP_NIL))))))))))))))
|
||||
# define BOOST_PP_TUPLE_TO_LIST_15(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) (a, (b, (c, (d, (e, (f, (g, (h, (i, (j, (k, (l, (m, (n, (o, BOOST_PP_NIL)))))))))))))))
|
||||
# define BOOST_PP_TUPLE_TO_LIST_16(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p) (a, (b, (c, (d, (e, (f, (g, (h, (i, (j, (k, (l, (m, (n, (o, (p, BOOST_PP_NIL))))))))))))))))
|
||||
# define BOOST_PP_TUPLE_TO_LIST_17(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q) (a, (b, (c, (d, (e, (f, (g, (h, (i, (j, (k, (l, (m, (n, (o, (p, (q, BOOST_PP_NIL)))))))))))))))))
|
||||
# define BOOST_PP_TUPLE_TO_LIST_18(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r) (a, (b, (c, (d, (e, (f, (g, (h, (i, (j, (k, (l, (m, (n, (o, (p, (q, (r, BOOST_PP_NIL))))))))))))))))))
|
||||
# define BOOST_PP_TUPLE_TO_LIST_19(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s) (a, (b, (c, (d, (e, (f, (g, (h, (i, (j, (k, (l, (m, (n, (o, (p, (q, (r, (s, BOOST_PP_NIL)))))))))))))))))))
|
||||
# define BOOST_PP_TUPLE_TO_LIST_20(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t) (a, (b, (c, (d, (e, (f, (g, (h, (i, (j, (k, (l, (m, (n, (o, (p, (q, (r, (s, (t, BOOST_PP_NIL))))))))))))))))))))
|
||||
# define BOOST_PP_TUPLE_TO_LIST_21(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u) (a, (b, (c, (d, (e, (f, (g, (h, (i, (j, (k, (l, (m, (n, (o, (p, (q, (r, (s, (t, (u, BOOST_PP_NIL)))))))))))))))))))))
|
||||
# define BOOST_PP_TUPLE_TO_LIST_22(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v) (a, (b, (c, (d, (e, (f, (g, (h, (i, (j, (k, (l, (m, (n, (o, (p, (q, (r, (s, (t, (u, (v, BOOST_PP_NIL))))))))))))))))))))))
|
||||
# define BOOST_PP_TUPLE_TO_LIST_23(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w) (a, (b, (c, (d, (e, (f, (g, (h, (i, (j, (k, (l, (m, (n, (o, (p, (q, (r, (s, (t, (u, (v, (w, BOOST_PP_NIL)))))))))))))))))))))))
|
||||
# define BOOST_PP_TUPLE_TO_LIST_24(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x) (a, (b, (c, (d, (e, (f, (g, (h, (i, (j, (k, (l, (m, (n, (o, (p, (q, (r, (s, (t, (u, (v, (w, (x, BOOST_PP_NIL))))))))))))))))))))))))
|
||||
# define BOOST_PP_TUPLE_TO_LIST_25(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y) (a, (b, (c, (d, (e, (f, (g, (h, (i, (j, (k, (l, (m, (n, (o, (p, (q, (r, (s, (t, (u, (v, (w, (x, (y, BOOST_PP_NIL)))))))))))))))))))))))))
|
||||
#
|
||||
# endif
|
Reference in New Issue
Block a user