Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:45:06

0001 /*==============================================================================
0002     Copyright (c) 2001-2010 Joel de Guzman
0003     Copyright (c) 2010 Eric Niebler
0004     Copyright (c) 2010-2011 Thomas Heller
0005 
0006     Distributed under the Boost Software License, Version 1.0. (See accompanying
0007     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
0008 ==============================================================================*/
0009 
0010     #define BOOST_PHOENIX_ARGUMENT_N_TYPE(_, N, name)                           \
0011     typedef                                                                     \
0012         expression::argument<BOOST_PP_INC(N)>::type                             \
0013         BOOST_PP_CAT(BOOST_PP_CAT(name, BOOST_PP_INC(N)), _type)                \
0014         BOOST_ATTRIBUTE_UNUSED;                                                 \
0015     /**/
0016     
0017     #define BOOST_PHOENIX_ARGUMENT_N_INSTANCE(_, N, name)                       \
0018     expression::argument<BOOST_PP_INC(N)>::type const                           \
0019         BOOST_ATTRIBUTE_UNUSED                                                  \
0020         BOOST_PP_CAT(name, BOOST_PP_INC(N)) = {{{}}};                           \
0021     /**/
0022 
0023 
0024     namespace placeholders
0025     {
0026         BOOST_PP_REPEAT(BOOST_PHOENIX_ARG_LIMIT, BOOST_PHOENIX_ARGUMENT_N_TYPE, arg)
0027         BOOST_PP_REPEAT(BOOST_PHOENIX_ARG_LIMIT, BOOST_PHOENIX_ARGUMENT_N_TYPE, _)
0028 #ifndef BOOST_PHOENIX_NO_PREDEFINED_TERMINALS
0029         BOOST_PP_REPEAT(BOOST_PHOENIX_ARG_LIMIT, BOOST_PHOENIX_ARGUMENT_N_INSTANCE, arg)
0030         BOOST_PP_REPEAT(BOOST_PHOENIX_ARG_LIMIT, BOOST_PHOENIX_ARGUMENT_N_INSTANCE, _)
0031 #endif
0032     }
0033 
0034     namespace arg_names
0035     {
0036         BOOST_PP_REPEAT(BOOST_PHOENIX_ARG_LIMIT, BOOST_PHOENIX_ARGUMENT_N_TYPE, arg)
0037         BOOST_PP_REPEAT(BOOST_PHOENIX_ARG_LIMIT, BOOST_PHOENIX_ARGUMENT_N_TYPE, _)
0038 #ifndef BOOST_PHOENIX_NO_PREDEFINED_TERMINALS
0039         BOOST_PP_REPEAT(BOOST_PHOENIX_ARG_LIMIT, BOOST_PHOENIX_ARGUMENT_N_INSTANCE, arg)
0040         BOOST_PP_REPEAT(BOOST_PHOENIX_ARG_LIMIT, BOOST_PHOENIX_ARGUMENT_N_INSTANCE, _)
0041 #endif
0042     }
0043 
0044     #undef BOOST_PHOENIX_ARGUMENT_N_TYPE
0045     #undef BOOST_PHOENIX_ARGUMENT_N_INSTANCE
0046