1
# /* **************************************************************************
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)
8
# ************************************************************************** */
10
# /* See http://www.boost.org for most recent version. */
12
# include <boost/preprocessor/slot/detail/shared.hpp>
14
# undef BOOST_PP_SLOT_2
16
# undef BOOST_PP_SLOT_2_DIGIT_1
17
# undef BOOST_PP_SLOT_2_DIGIT_2
18
# undef BOOST_PP_SLOT_2_DIGIT_3
19
# undef BOOST_PP_SLOT_2_DIGIT_4
20
# undef BOOST_PP_SLOT_2_DIGIT_5
21
# undef BOOST_PP_SLOT_2_DIGIT_6
22
# undef BOOST_PP_SLOT_2_DIGIT_7
23
# undef BOOST_PP_SLOT_2_DIGIT_8
24
# undef BOOST_PP_SLOT_2_DIGIT_9
25
# undef BOOST_PP_SLOT_2_DIGIT_10
27
# if BOOST_PP_SLOT_TEMP_10 == 0
28
# define BOOST_PP_SLOT_2_DIGIT_10 0
29
# elif BOOST_PP_SLOT_TEMP_10 == 1
30
# define BOOST_PP_SLOT_2_DIGIT_10 1
31
# elif BOOST_PP_SLOT_TEMP_10 == 2
32
# define BOOST_PP_SLOT_2_DIGIT_10 2
33
# elif BOOST_PP_SLOT_TEMP_10 == 3
34
# define BOOST_PP_SLOT_2_DIGIT_10 3
35
# elif BOOST_PP_SLOT_TEMP_10 == 4
36
# define BOOST_PP_SLOT_2_DIGIT_10 4
37
# elif BOOST_PP_SLOT_TEMP_10 == 5
38
# define BOOST_PP_SLOT_2_DIGIT_10 5
39
# elif BOOST_PP_SLOT_TEMP_10 == 6
40
# define BOOST_PP_SLOT_2_DIGIT_10 6
41
# elif BOOST_PP_SLOT_TEMP_10 == 7
42
# define BOOST_PP_SLOT_2_DIGIT_10 7
43
# elif BOOST_PP_SLOT_TEMP_10 == 8
44
# define BOOST_PP_SLOT_2_DIGIT_10 8
45
# elif BOOST_PP_SLOT_TEMP_10 == 9
46
# define BOOST_PP_SLOT_2_DIGIT_10 9
49
# if BOOST_PP_SLOT_TEMP_9 == 0
50
# define BOOST_PP_SLOT_2_DIGIT_9 0
51
# elif BOOST_PP_SLOT_TEMP_9 == 1
52
# define BOOST_PP_SLOT_2_DIGIT_9 1
53
# elif BOOST_PP_SLOT_TEMP_9 == 2
54
# define BOOST_PP_SLOT_2_DIGIT_9 2
55
# elif BOOST_PP_SLOT_TEMP_9 == 3
56
# define BOOST_PP_SLOT_2_DIGIT_9 3
57
# elif BOOST_PP_SLOT_TEMP_9 == 4
58
# define BOOST_PP_SLOT_2_DIGIT_9 4
59
# elif BOOST_PP_SLOT_TEMP_9 == 5
60
# define BOOST_PP_SLOT_2_DIGIT_9 5
61
# elif BOOST_PP_SLOT_TEMP_9 == 6
62
# define BOOST_PP_SLOT_2_DIGIT_9 6
63
# elif BOOST_PP_SLOT_TEMP_9 == 7
64
# define BOOST_PP_SLOT_2_DIGIT_9 7
65
# elif BOOST_PP_SLOT_TEMP_9 == 8
66
# define BOOST_PP_SLOT_2_DIGIT_9 8
67
# elif BOOST_PP_SLOT_TEMP_9 == 9
68
# define BOOST_PP_SLOT_2_DIGIT_9 9
71
# if BOOST_PP_SLOT_TEMP_8 == 0
72
# define BOOST_PP_SLOT_2_DIGIT_8 0
73
# elif BOOST_PP_SLOT_TEMP_8 == 1
74
# define BOOST_PP_SLOT_2_DIGIT_8 1
75
# elif BOOST_PP_SLOT_TEMP_8 == 2
76
# define BOOST_PP_SLOT_2_DIGIT_8 2
77
# elif BOOST_PP_SLOT_TEMP_8 == 3
78
# define BOOST_PP_SLOT_2_DIGIT_8 3
79
# elif BOOST_PP_SLOT_TEMP_8 == 4
80
# define BOOST_PP_SLOT_2_DIGIT_8 4
81
# elif BOOST_PP_SLOT_TEMP_8 == 5
82
# define BOOST_PP_SLOT_2_DIGIT_8 5
83
# elif BOOST_PP_SLOT_TEMP_8 == 6
84
# define BOOST_PP_SLOT_2_DIGIT_8 6
85
# elif BOOST_PP_SLOT_TEMP_8 == 7
86
# define BOOST_PP_SLOT_2_DIGIT_8 7
87
# elif BOOST_PP_SLOT_TEMP_8 == 8
88
# define BOOST_PP_SLOT_2_DIGIT_8 8
89
# elif BOOST_PP_SLOT_TEMP_8 == 9
90
# define BOOST_PP_SLOT_2_DIGIT_8 9
93
# if BOOST_PP_SLOT_TEMP_7 == 0
94
# define BOOST_PP_SLOT_2_DIGIT_7 0
95
# elif BOOST_PP_SLOT_TEMP_7 == 1
96
# define BOOST_PP_SLOT_2_DIGIT_7 1
97
# elif BOOST_PP_SLOT_TEMP_7 == 2
98
# define BOOST_PP_SLOT_2_DIGIT_7 2
99
# elif BOOST_PP_SLOT_TEMP_7 == 3
100
# define BOOST_PP_SLOT_2_DIGIT_7 3
101
# elif BOOST_PP_SLOT_TEMP_7 == 4
102
# define BOOST_PP_SLOT_2_DIGIT_7 4
103
# elif BOOST_PP_SLOT_TEMP_7 == 5
104
# define BOOST_PP_SLOT_2_DIGIT_7 5
105
# elif BOOST_PP_SLOT_TEMP_7 == 6
106
# define BOOST_PP_SLOT_2_DIGIT_7 6
107
# elif BOOST_PP_SLOT_TEMP_7 == 7
108
# define BOOST_PP_SLOT_2_DIGIT_7 7
109
# elif BOOST_PP_SLOT_TEMP_7 == 8
110
# define BOOST_PP_SLOT_2_DIGIT_7 8
111
# elif BOOST_PP_SLOT_TEMP_7 == 9
112
# define BOOST_PP_SLOT_2_DIGIT_7 9
115
# if BOOST_PP_SLOT_TEMP_6 == 0
116
# define BOOST_PP_SLOT_2_DIGIT_6 0
117
# elif BOOST_PP_SLOT_TEMP_6 == 1
118
# define BOOST_PP_SLOT_2_DIGIT_6 1
119
# elif BOOST_PP_SLOT_TEMP_6 == 2
120
# define BOOST_PP_SLOT_2_DIGIT_6 2
121
# elif BOOST_PP_SLOT_TEMP_6 == 3
122
# define BOOST_PP_SLOT_2_DIGIT_6 3
123
# elif BOOST_PP_SLOT_TEMP_6 == 4
124
# define BOOST_PP_SLOT_2_DIGIT_6 4
125
# elif BOOST_PP_SLOT_TEMP_6 == 5
126
# define BOOST_PP_SLOT_2_DIGIT_6 5
127
# elif BOOST_PP_SLOT_TEMP_6 == 6
128
# define BOOST_PP_SLOT_2_DIGIT_6 6
129
# elif BOOST_PP_SLOT_TEMP_6 == 7
130
# define BOOST_PP_SLOT_2_DIGIT_6 7
131
# elif BOOST_PP_SLOT_TEMP_6 == 8
132
# define BOOST_PP_SLOT_2_DIGIT_6 8
133
# elif BOOST_PP_SLOT_TEMP_6 == 9
134
# define BOOST_PP_SLOT_2_DIGIT_6 9
137
# if BOOST_PP_SLOT_TEMP_5 == 0
138
# define BOOST_PP_SLOT_2_DIGIT_5 0
139
# elif BOOST_PP_SLOT_TEMP_5 == 1
140
# define BOOST_PP_SLOT_2_DIGIT_5 1
141
# elif BOOST_PP_SLOT_TEMP_5 == 2
142
# define BOOST_PP_SLOT_2_DIGIT_5 2
143
# elif BOOST_PP_SLOT_TEMP_5 == 3
144
# define BOOST_PP_SLOT_2_DIGIT_5 3
145
# elif BOOST_PP_SLOT_TEMP_5 == 4
146
# define BOOST_PP_SLOT_2_DIGIT_5 4
147
# elif BOOST_PP_SLOT_TEMP_5 == 5
148
# define BOOST_PP_SLOT_2_DIGIT_5 5
149
# elif BOOST_PP_SLOT_TEMP_5 == 6
150
# define BOOST_PP_SLOT_2_DIGIT_5 6
151
# elif BOOST_PP_SLOT_TEMP_5 == 7
152
# define BOOST_PP_SLOT_2_DIGIT_5 7
153
# elif BOOST_PP_SLOT_TEMP_5 == 8
154
# define BOOST_PP_SLOT_2_DIGIT_5 8
155
# elif BOOST_PP_SLOT_TEMP_5 == 9
156
# define BOOST_PP_SLOT_2_DIGIT_5 9
159
# if BOOST_PP_SLOT_TEMP_4 == 0
160
# define BOOST_PP_SLOT_2_DIGIT_4 0
161
# elif BOOST_PP_SLOT_TEMP_4 == 1
162
# define BOOST_PP_SLOT_2_DIGIT_4 1
163
# elif BOOST_PP_SLOT_TEMP_4 == 2
164
# define BOOST_PP_SLOT_2_DIGIT_4 2
165
# elif BOOST_PP_SLOT_TEMP_4 == 3
166
# define BOOST_PP_SLOT_2_DIGIT_4 3
167
# elif BOOST_PP_SLOT_TEMP_4 == 4
168
# define BOOST_PP_SLOT_2_DIGIT_4 4
169
# elif BOOST_PP_SLOT_TEMP_4 == 5
170
# define BOOST_PP_SLOT_2_DIGIT_4 5
171
# elif BOOST_PP_SLOT_TEMP_4 == 6
172
# define BOOST_PP_SLOT_2_DIGIT_4 6
173
# elif BOOST_PP_SLOT_TEMP_4 == 7
174
# define BOOST_PP_SLOT_2_DIGIT_4 7
175
# elif BOOST_PP_SLOT_TEMP_4 == 8
176
# define BOOST_PP_SLOT_2_DIGIT_4 8
177
# elif BOOST_PP_SLOT_TEMP_4 == 9
178
# define BOOST_PP_SLOT_2_DIGIT_4 9
181
# if BOOST_PP_SLOT_TEMP_3 == 0
182
# define BOOST_PP_SLOT_2_DIGIT_3 0
183
# elif BOOST_PP_SLOT_TEMP_3 == 1
184
# define BOOST_PP_SLOT_2_DIGIT_3 1
185
# elif BOOST_PP_SLOT_TEMP_3 == 2
186
# define BOOST_PP_SLOT_2_DIGIT_3 2
187
# elif BOOST_PP_SLOT_TEMP_3 == 3
188
# define BOOST_PP_SLOT_2_DIGIT_3 3
189
# elif BOOST_PP_SLOT_TEMP_3 == 4
190
# define BOOST_PP_SLOT_2_DIGIT_3 4
191
# elif BOOST_PP_SLOT_TEMP_3 == 5
192
# define BOOST_PP_SLOT_2_DIGIT_3 5
193
# elif BOOST_PP_SLOT_TEMP_3 == 6
194
# define BOOST_PP_SLOT_2_DIGIT_3 6
195
# elif BOOST_PP_SLOT_TEMP_3 == 7
196
# define BOOST_PP_SLOT_2_DIGIT_3 7
197
# elif BOOST_PP_SLOT_TEMP_3 == 8
198
# define BOOST_PP_SLOT_2_DIGIT_3 8
199
# elif BOOST_PP_SLOT_TEMP_3 == 9
200
# define BOOST_PP_SLOT_2_DIGIT_3 9
203
# if BOOST_PP_SLOT_TEMP_2 == 0
204
# define BOOST_PP_SLOT_2_DIGIT_2 0
205
# elif BOOST_PP_SLOT_TEMP_2 == 1
206
# define BOOST_PP_SLOT_2_DIGIT_2 1
207
# elif BOOST_PP_SLOT_TEMP_2 == 2
208
# define BOOST_PP_SLOT_2_DIGIT_2 2
209
# elif BOOST_PP_SLOT_TEMP_2 == 3
210
# define BOOST_PP_SLOT_2_DIGIT_2 3
211
# elif BOOST_PP_SLOT_TEMP_2 == 4
212
# define BOOST_PP_SLOT_2_DIGIT_2 4
213
# elif BOOST_PP_SLOT_TEMP_2 == 5
214
# define BOOST_PP_SLOT_2_DIGIT_2 5
215
# elif BOOST_PP_SLOT_TEMP_2 == 6
216
# define BOOST_PP_SLOT_2_DIGIT_2 6
217
# elif BOOST_PP_SLOT_TEMP_2 == 7
218
# define BOOST_PP_SLOT_2_DIGIT_2 7
219
# elif BOOST_PP_SLOT_TEMP_2 == 8
220
# define BOOST_PP_SLOT_2_DIGIT_2 8
221
# elif BOOST_PP_SLOT_TEMP_2 == 9
222
# define BOOST_PP_SLOT_2_DIGIT_2 9
225
# if BOOST_PP_SLOT_TEMP_1 == 0
226
# define BOOST_PP_SLOT_2_DIGIT_1 0
227
# elif BOOST_PP_SLOT_TEMP_1 == 1
228
# define BOOST_PP_SLOT_2_DIGIT_1 1
229
# elif BOOST_PP_SLOT_TEMP_1 == 2
230
# define BOOST_PP_SLOT_2_DIGIT_1 2
231
# elif BOOST_PP_SLOT_TEMP_1 == 3
232
# define BOOST_PP_SLOT_2_DIGIT_1 3
233
# elif BOOST_PP_SLOT_TEMP_1 == 4
234
# define BOOST_PP_SLOT_2_DIGIT_1 4
235
# elif BOOST_PP_SLOT_TEMP_1 == 5
236
# define BOOST_PP_SLOT_2_DIGIT_1 5
237
# elif BOOST_PP_SLOT_TEMP_1 == 6
238
# define BOOST_PP_SLOT_2_DIGIT_1 6
239
# elif BOOST_PP_SLOT_TEMP_1 == 7
240
# define BOOST_PP_SLOT_2_DIGIT_1 7
241
# elif BOOST_PP_SLOT_TEMP_1 == 8
242
# define BOOST_PP_SLOT_2_DIGIT_1 8
243
# elif BOOST_PP_SLOT_TEMP_1 == 9
244
# define BOOST_PP_SLOT_2_DIGIT_1 9
247
# if BOOST_PP_SLOT_2_DIGIT_10
248
# define BOOST_PP_SLOT_2() BOOST_PP_SLOT_CC_10(BOOST_PP_SLOT_2_DIGIT_10, BOOST_PP_SLOT_2_DIGIT_9, BOOST_PP_SLOT_2_DIGIT_8, BOOST_PP_SLOT_2_DIGIT_7, BOOST_PP_SLOT_2_DIGIT_6, BOOST_PP_SLOT_2_DIGIT_5, BOOST_PP_SLOT_2_DIGIT_4, BOOST_PP_SLOT_2_DIGIT_3, BOOST_PP_SLOT_2_DIGIT_2, BOOST_PP_SLOT_2_DIGIT_1)
249
# elif BOOST_PP_SLOT_2_DIGIT_9
250
# define BOOST_PP_SLOT_2() BOOST_PP_SLOT_CC_9(BOOST_PP_SLOT_2_DIGIT_9, BOOST_PP_SLOT_2_DIGIT_8, BOOST_PP_SLOT_2_DIGIT_7, BOOST_PP_SLOT_2_DIGIT_6, BOOST_PP_SLOT_2_DIGIT_5, BOOST_PP_SLOT_2_DIGIT_4, BOOST_PP_SLOT_2_DIGIT_3, BOOST_PP_SLOT_2_DIGIT_2, BOOST_PP_SLOT_2_DIGIT_1)
251
# elif BOOST_PP_SLOT_2_DIGIT_8
252
# define BOOST_PP_SLOT_2() BOOST_PP_SLOT_CC_8(BOOST_PP_SLOT_2_DIGIT_8, BOOST_PP_SLOT_2_DIGIT_7, BOOST_PP_SLOT_2_DIGIT_6, BOOST_PP_SLOT_2_DIGIT_5, BOOST_PP_SLOT_2_DIGIT_4, BOOST_PP_SLOT_2_DIGIT_3, BOOST_PP_SLOT_2_DIGIT_2, BOOST_PP_SLOT_2_DIGIT_1)
253
# elif BOOST_PP_SLOT_2_DIGIT_7
254
# define BOOST_PP_SLOT_2() BOOST_PP_SLOT_CC_7(BOOST_PP_SLOT_2_DIGIT_7, BOOST_PP_SLOT_2_DIGIT_6, BOOST_PP_SLOT_2_DIGIT_5, BOOST_PP_SLOT_2_DIGIT_4, BOOST_PP_SLOT_2_DIGIT_3, BOOST_PP_SLOT_2_DIGIT_2, BOOST_PP_SLOT_2_DIGIT_1)
255
# elif BOOST_PP_SLOT_2_DIGIT_6
256
# define BOOST_PP_SLOT_2() BOOST_PP_SLOT_CC_6(BOOST_PP_SLOT_2_DIGIT_6, BOOST_PP_SLOT_2_DIGIT_5, BOOST_PP_SLOT_2_DIGIT_4, BOOST_PP_SLOT_2_DIGIT_3, BOOST_PP_SLOT_2_DIGIT_2, BOOST_PP_SLOT_2_DIGIT_1)
257
# elif BOOST_PP_SLOT_2_DIGIT_5
258
# define BOOST_PP_SLOT_2() BOOST_PP_SLOT_CC_5(BOOST_PP_SLOT_2_DIGIT_5, BOOST_PP_SLOT_2_DIGIT_4, BOOST_PP_SLOT_2_DIGIT_3, BOOST_PP_SLOT_2_DIGIT_2, BOOST_PP_SLOT_2_DIGIT_1)
259
# elif BOOST_PP_SLOT_2_DIGIT_4
260
# define BOOST_PP_SLOT_2() BOOST_PP_SLOT_CC_4(BOOST_PP_SLOT_2_DIGIT_4, BOOST_PP_SLOT_2_DIGIT_3, BOOST_PP_SLOT_2_DIGIT_2, BOOST_PP_SLOT_2_DIGIT_1)
261
# elif BOOST_PP_SLOT_2_DIGIT_3
262
# define BOOST_PP_SLOT_2() BOOST_PP_SLOT_CC_3(BOOST_PP_SLOT_2_DIGIT_3, BOOST_PP_SLOT_2_DIGIT_2, BOOST_PP_SLOT_2_DIGIT_1)
263
# elif BOOST_PP_SLOT_2_DIGIT_2
264
# define BOOST_PP_SLOT_2() BOOST_PP_SLOT_CC_2(BOOST_PP_SLOT_2_DIGIT_2, BOOST_PP_SLOT_2_DIGIT_1)
266
# define BOOST_PP_SLOT_2() BOOST_PP_SLOT_2_DIGIT_1