forked from boostorg/preprocessor
Metrowerks speedup
[SVN r15248]
This commit is contained in:
@ -33,17 +33,23 @@
|
||||
# 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
|
||||
# //ifdef TESTING_MODE
|
||||
# include <boost/preprocessor/tuple/detail/mwcw/elem.hpp>
|
||||
# //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
|
||||
# endif
|
||||
#
|
||||
# if ~BOOST_PP_CONFIG_FLAGS & BOOST_PP_CONFIG_MWCW //|| !defined TESTING_MODE
|
||||
#
|
||||
# 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))
|
||||
@ -98,3 +104,5 @@
|
||||
# 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
|
||||
#
|
||||
# endif
|
||||
|
Reference in New Issue
Block a user