]> AND Private Git Repository - canny.git/blob - stc/exp/ml_stc_linux_make_v1.0/include/boost/preprocessor/list/enum.hpp
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
7ef241260aa12685edcd1f35dc89e946185b03ab
[canny.git] / stc / exp / ml_stc_linux_make_v1.0 / include / boost / preprocessor / list / enum.hpp
1 # /* Copyright (C) 2001\r
2 #  * Housemarque Oy\r
3 #  * http://www.housemarque.com\r
4 #  *\r
5 #  * Distributed under the Boost Software License, Version 1.0. (See\r
6 #  * accompanying file LICENSE_1_0.txt or copy at\r
7 #  * http://www.boost.org/LICENSE_1_0.txt)\r
8 #  */\r
9 #\r
10 # /* Revised by Paul Mensonides (2002) */\r
11 #\r
12 # /* See http://www.boost.org for most recent version. */\r
13 #\r
14 # ifndef BOOST_PREPROCESSOR_LIST_ENUM_HPP\r
15 # define BOOST_PREPROCESSOR_LIST_ENUM_HPP\r
16 #\r
17 # include <boost/preprocessor/config/config.hpp>\r
18 # include <boost/preprocessor/list/for_each_i.hpp>\r
19 # include <boost/preprocessor/punctuation/comma_if.hpp>\r
20 #\r
21 # /* BOOST_PP_LIST_ENUM */\r
22 #\r
23 # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG()\r
24 #    define BOOST_PP_LIST_ENUM(list) BOOST_PP_LIST_FOR_EACH_I(BOOST_PP_LIST_ENUM_O, BOOST_PP_NIL, list)\r
25 # else\r
26 #    define BOOST_PP_LIST_ENUM(list) BOOST_PP_LIST_ENUM_I(list)\r
27 #    define BOOST_PP_LIST_ENUM_I(list) BOOST_PP_LIST_FOR_EACH_I(BOOST_PP_LIST_ENUM_O, BOOST_PP_NIL, list)\r
28 # endif\r
29 #\r
30 # define BOOST_PP_LIST_ENUM_O(r, _, i, elem) BOOST_PP_COMMA_IF(i) elem\r
31 #\r
32 # /* BOOST_PP_LIST_ENUM_R */\r
33 #\r
34 # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG()\r
35 #    define BOOST_PP_LIST_ENUM_R(r, list) BOOST_PP_LIST_FOR_EACH_I_R(r, BOOST_PP_LIST_ENUM_O, BOOST_PP_NIL, list)\r
36 # else\r
37 #    define BOOST_PP_LIST_ENUM_R(r, list) BOOST_PP_LIST_ENUM_R_I(r, list)\r
38 #    define BOOST_PP_LIST_ENUM_R_I(r, list) BOOST_PP_LIST_FOR_EACH_I_R(r, BOOST_PP_LIST_ENUM_O, BOOST_PP_NIL, list)\r
39 # endif\r
40 #\r
41 # endif\r