1# /* **************************************************************************
2# * *
3# * (C) Copyright Paul Mensonides 2002.
4# * Distributed under the Boost Software License, Version 1.0. (See
5# * accompanying file LICENSE_1_0.txt or copy at
6# * http://www.boost.org/LICENSE_1_0.txt)
7# * *
8# ************************************************************************** */
9#
10# /* See http://www.boost.org for most recent version. */
11#
12# include <boost/preprocessor/slot/detail/shared.hpp>
13#
14# undef BOOST_PP_ITERATION_START_1
15#
16# undef BOOST_PP_ITERATION_START_1_DIGIT_1
17# undef BOOST_PP_ITERATION_START_1_DIGIT_2
18# undef BOOST_PP_ITERATION_START_1_DIGIT_3
19# undef BOOST_PP_ITERATION_START_1_DIGIT_4
20# undef BOOST_PP_ITERATION_START_1_DIGIT_5
21# undef BOOST_PP_ITERATION_START_1_DIGIT_6
22# undef BOOST_PP_ITERATION_START_1_DIGIT_7
23# undef BOOST_PP_ITERATION_START_1_DIGIT_8
24# undef BOOST_PP_ITERATION_START_1_DIGIT_9
25# undef BOOST_PP_ITERATION_START_1_DIGIT_10
26#
27# if BOOST_PP_SLOT_TEMP_3 == 0
28# define BOOST_PP_ITERATION_START_1_DIGIT_3 0
29# elif BOOST_PP_SLOT_TEMP_3 == 1
30# define BOOST_PP_ITERATION_START_1_DIGIT_3 1
31# elif BOOST_PP_SLOT_TEMP_3 == 2
32# define BOOST_PP_ITERATION_START_1_DIGIT_3 2
33# elif BOOST_PP_SLOT_TEMP_3 == 3
34# define BOOST_PP_ITERATION_START_1_DIGIT_3 3
35# elif BOOST_PP_SLOT_TEMP_3 == 4
36# define BOOST_PP_ITERATION_START_1_DIGIT_3 4
37# elif BOOST_PP_SLOT_TEMP_3 == 5
38# define BOOST_PP_ITERATION_START_1_DIGIT_3 5
39# elif BOOST_PP_SLOT_TEMP_3 == 6
40# define BOOST_PP_ITERATION_START_1_DIGIT_3 6
41# elif BOOST_PP_SLOT_TEMP_3 == 7
42# define BOOST_PP_ITERATION_START_1_DIGIT_3 7
43# elif BOOST_PP_SLOT_TEMP_3 == 8
44# define BOOST_PP_ITERATION_START_1_DIGIT_3 8
45# elif BOOST_PP_SLOT_TEMP_3 == 9
46# define BOOST_PP_ITERATION_START_1_DIGIT_3 9
47# endif
48#
49# if BOOST_PP_SLOT_TEMP_2 == 0
50# define BOOST_PP_ITERATION_START_1_DIGIT_2 0
51# elif BOOST_PP_SLOT_TEMP_2 == 1
52# define BOOST_PP_ITERATION_START_1_DIGIT_2 1
53# elif BOOST_PP_SLOT_TEMP_2 == 2
54# define BOOST_PP_ITERATION_START_1_DIGIT_2 2
55# elif BOOST_PP_SLOT_TEMP_2 == 3
56# define BOOST_PP_ITERATION_START_1_DIGIT_2 3
57# elif BOOST_PP_SLOT_TEMP_2 == 4
58# define BOOST_PP_ITERATION_START_1_DIGIT_2 4
59# elif BOOST_PP_SLOT_TEMP_2 == 5
60# define BOOST_PP_ITERATION_START_1_DIGIT_2 5
61# elif BOOST_PP_SLOT_TEMP_2 == 6
62# define BOOST_PP_ITERATION_START_1_DIGIT_2 6
63# elif BOOST_PP_SLOT_TEMP_2 == 7
64# define BOOST_PP_ITERATION_START_1_DIGIT_2 7
65# elif BOOST_PP_SLOT_TEMP_2 == 8
66# define BOOST_PP_ITERATION_START_1_DIGIT_2 8
67# elif BOOST_PP_SLOT_TEMP_2 == 9
68# define BOOST_PP_ITERATION_START_1_DIGIT_2 9
69# endif
70#
71# if BOOST_PP_SLOT_TEMP_1 == 0
72# define BOOST_PP_ITERATION_START_1_DIGIT_1 0
73# elif BOOST_PP_SLOT_TEMP_1 == 1
74# define BOOST_PP_ITERATION_START_1_DIGIT_1 1
75# elif BOOST_PP_SLOT_TEMP_1 == 2
76# define BOOST_PP_ITERATION_START_1_DIGIT_1 2
77# elif BOOST_PP_SLOT_TEMP_1 == 3
78# define BOOST_PP_ITERATION_START_1_DIGIT_1 3
79# elif BOOST_PP_SLOT_TEMP_1 == 4
80# define BOOST_PP_ITERATION_START_1_DIGIT_1 4
81# elif BOOST_PP_SLOT_TEMP_1 == 5
82# define BOOST_PP_ITERATION_START_1_DIGIT_1 5
83# elif BOOST_PP_SLOT_TEMP_1 == 6
84# define BOOST_PP_ITERATION_START_1_DIGIT_1 6
85# elif BOOST_PP_SLOT_TEMP_1 == 7
86# define BOOST_PP_ITERATION_START_1_DIGIT_1 7
87# elif BOOST_PP_SLOT_TEMP_1 == 8
88# define BOOST_PP_ITERATION_START_1_DIGIT_1 8
89# elif BOOST_PP_SLOT_TEMP_1 == 9
90# define BOOST_PP_ITERATION_START_1_DIGIT_1 9
91# endif
92#
93# if BOOST_PP_ITERATION_START_1_DIGIT_3
94# define BOOST_PP_ITERATION_START_1 BOOST_PP_SLOT_CC_3(BOOST_PP_ITERATION_START_1_DIGIT_3, BOOST_PP_ITERATION_START_1_DIGIT_2, BOOST_PP_ITERATION_START_1_DIGIT_1)
95# elif BOOST_PP_ITERATION_START_1_DIGIT_2
96# define BOOST_PP_ITERATION_START_1 BOOST_PP_SLOT_CC_2(BOOST_PP_ITERATION_START_1_DIGIT_2, BOOST_PP_ITERATION_START_1_DIGIT_1)
97# else
98# define BOOST_PP_ITERATION_START_1 BOOST_PP_ITERATION_START_1_DIGIT_1
99# endif
100