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

Private GIT Repository
c3d1b07e6516fdb3f70fd1f1b5db144ecea6e788
[canny.git] / stc / exp / ml_stc_linux_make_v1.0 / include / boost / preprocessor / iteration / iterate.hpp
1 # /* **************************************************************************\r
2 #  *                                                                          *\r
3 #  *     (C) Copyright Paul Mensonides 2002.\r
4 #  *     Distributed under the Boost Software License, Version 1.0. (See\r
5 #  *     accompanying file LICENSE_1_0.txt or copy at\r
6 #  *     http://www.boost.org/LICENSE_1_0.txt)\r
7 #  *                                                                          *\r
8 #  ************************************************************************** */\r
9 #\r
10 # /* See http://www.boost.org for most recent version. */\r
11 #\r
12 # ifndef BOOST_PREPROCESSOR_ITERATION_ITERATE_HPP\r
13 # define BOOST_PREPROCESSOR_ITERATION_ITERATE_HPP\r
14 #\r
15 # include <boost/preprocessor/arithmetic/dec.hpp>\r
16 # include <boost/preprocessor/arithmetic/inc.hpp>\r
17 # include <boost/preprocessor/array/elem.hpp>\r
18 # include <boost/preprocessor/array/size.hpp>\r
19 # include <boost/preprocessor/cat.hpp>\r
20 # include <boost/preprocessor/slot/slot.hpp>\r
21 # include <boost/preprocessor/tuple/elem.hpp>\r
22 #\r
23 # /* BOOST_PP_ITERATION_DEPTH */\r
24 #\r
25 # define BOOST_PP_ITERATION_DEPTH() 0\r
26 #\r
27 # /* BOOST_PP_ITERATION */\r
28 #\r
29 # define BOOST_PP_ITERATION() BOOST_PP_CAT(BOOST_PP_ITERATION_, BOOST_PP_ITERATION_DEPTH())\r
30 #\r
31 # /* BOOST_PP_ITERATION_START && BOOST_PP_ITERATION_FINISH */\r
32 #\r
33 # define BOOST_PP_ITERATION_START() BOOST_PP_CAT(BOOST_PP_ITERATION_START_, BOOST_PP_ITERATION_DEPTH())\r
34 # define BOOST_PP_ITERATION_FINISH() BOOST_PP_CAT(BOOST_PP_ITERATION_FINISH_, BOOST_PP_ITERATION_DEPTH())\r
35 #\r
36 # /* BOOST_PP_ITERATION_FLAGS */\r
37 #\r
38 # define BOOST_PP_ITERATION_FLAGS() (BOOST_PP_CAT(BOOST_PP_ITERATION_FLAGS_, BOOST_PP_ITERATION_DEPTH()))\r
39 #\r
40 # /* BOOST_PP_FRAME_ITERATION */\r
41 #\r
42 # define BOOST_PP_FRAME_ITERATION(i) BOOST_PP_CAT(BOOST_PP_ITERATION_, i)\r
43 #\r
44 # /* BOOST_PP_FRAME_START && BOOST_PP_FRAME_FINISH */\r
45 #\r
46 # define BOOST_PP_FRAME_START(i) BOOST_PP_CAT(BOOST_PP_ITERATION_START_, i)\r
47 # define BOOST_PP_FRAME_FINISH(i) BOOST_PP_CAT(BOOST_PP_ITERATION_FINISH_, i)\r
48 #\r
49 # /* BOOST_PP_FRAME_FLAGS */\r
50 #\r
51 # define BOOST_PP_FRAME_FLAGS(i) (BOOST_PP_CAT(BOOST_PP_ITERATION_FLAGS_, i))\r
52 #\r
53 # /* BOOST_PP_RELATIVE_ITERATION */\r
54 #\r
55 # define BOOST_PP_RELATIVE_ITERATION(i) BOOST_PP_CAT(BOOST_PP_RELATIVE_, i)(BOOST_PP_ITERATION_)\r
56 #\r
57 # define BOOST_PP_RELATIVE_0(m) BOOST_PP_CAT(m, BOOST_PP_ITERATION_DEPTH())\r
58 # define BOOST_PP_RELATIVE_1(m) BOOST_PP_CAT(m, BOOST_PP_DEC(BOOST_PP_ITERATION_DEPTH()))\r
59 # define BOOST_PP_RELATIVE_2(m) BOOST_PP_CAT(m, BOOST_PP_DEC(BOOST_PP_DEC(BOOST_PP_ITERATION_DEPTH())))\r
60 # define BOOST_PP_RELATIVE_3(m) BOOST_PP_CAT(m, BOOST_PP_DEC(BOOST_PP_DEC(BOOST_PP_DEC(BOOST_PP_ITERATION_DEPTH()))))\r
61 # define BOOST_PP_RELATIVE_4(m) BOOST_PP_CAT(m, BOOST_PP_DEC(BOOST_PP_DEC(BOOST_PP_DEC(BOOST_PP_DEC(BOOST_PP_ITERATION_DEPTH())))))\r
62 #\r
63 # /* BOOST_PP_RELATIVE_START && BOOST_PP_RELATIVE_FINISH */\r
64 #\r
65 # define BOOST_PP_RELATIVE_START(i) BOOST_PP_CAT(BOOST_PP_RELATIVE_, i)(BOOST_PP_ITERATION_START_)\r
66 # define BOOST_PP_RELATIVE_FINISH(i) BOOST_PP_CAT(BOOST_PP_RELATIVE_, i)(BOOST_PP_ITERATION_FINISH_)\r
67 #\r
68 # /* BOOST_PP_RELATIVE_FLAGS */\r
69 #\r
70 # define BOOST_PP_RELATIVE_FLAGS(i) (BOOST_PP_CAT(BOOST_PP_RELATIVE_, i)(BOOST_PP_ITERATION_FLAGS_))\r
71 #\r
72 # /* BOOST_PP_ITERATE */\r
73 #\r
74 # define BOOST_PP_ITERATE() BOOST_PP_CAT(BOOST_PP_ITERATE_, BOOST_PP_INC(BOOST_PP_ITERATION_DEPTH()))\r
75 #\r
76 # define BOOST_PP_ITERATE_1 <boost/preprocessor/iteration/detail/iter/forward1.hpp>\r
77 # define BOOST_PP_ITERATE_2 <boost/preprocessor/iteration/detail/iter/forward2.hpp>\r
78 # define BOOST_PP_ITERATE_3 <boost/preprocessor/iteration/detail/iter/forward3.hpp>\r
79 # define BOOST_PP_ITERATE_4 <boost/preprocessor/iteration/detail/iter/forward4.hpp>\r
80 # define BOOST_PP_ITERATE_5 <boost/preprocessor/iteration/detail/iter/forward5.hpp>\r
81 #\r
82 # endif\r