]> git.sesse.net Git - casparcg/blob - dependencies/boost/boost/function_types/detail/synthesize_impl/arity30_0.hpp
Manually merged pull request #222
[casparcg] / dependencies / boost / boost / function_types / detail / synthesize_impl / arity30_0.hpp
1
2 // (C) Copyright Tobias Schwinger
3 //
4 // Use modification and distribution are subject to the boost Software License,
5 // Version 1.0. (See http://www.boost.org/LICENSE_1_0.txt).
6
7 //------------------------------------------------------------------------------
8
9 // no include guards, this file is intended for multiple inclusion
10
11 // input:  BOOST_FT_syntax     type macro to use
12 // input:  BOOST_FT_cc         empty or cc specifier 
13 // input:  BOOST_FT_ell        empty or "..."
14 // input:  BOOST_FT_cv         empty or cv qualifiers
15 // input:  BOOST_FT_flags      single decimal integer encoding the flags
16 // output: BOOST_FT_n          number of component types (arity+1)
17 // output: BOOST_FT_arity      current arity
18 // output: BOOST_FT_type       macro that expands to the type
19 // output: BOOST_FT_tplargs(p) template arguments with given prefix
20 // output: BOOST_FT_params(p)  parameters with given prefix
21
22 # include <boost/function_types/detail/synthesize_impl/arity20_0.hpp>
23 # define BOOST_FT_make_type(flags,cc,arity) BOOST_FT_make_type_impl(flags,cc,arity)
24 # define BOOST_FT_make_type_impl(flags,cc,arity) make_type_ ## flags ## _ ## cc ## _ ## arity
25 template< typename R , typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 >
26 struct BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,21)
27 {
28 typedef BOOST_FT_syntax(BOOST_FT_cc,type BOOST_PP_EMPTY) (T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 BOOST_FT_ell) BOOST_FT_cv ;
29 };
30 template< > 
31 struct synthesize_impl_o< BOOST_FT_flags, BOOST_FT_cc_id, 22 > 
32
33 template<typename S> struct synthesize_impl_i
34 {
35 private:
36 typedef typename mpl::begin<S> ::type iter_0;
37 typedef typename mpl::next< iter_0 > ::type iter_1;
38 typedef typename mpl::next< iter_1 > ::type iter_2;
39 typedef typename mpl::next< iter_2 > ::type iter_3;
40 typedef typename mpl::next< iter_3 > ::type iter_4;
41 typedef typename mpl::next< iter_4 > ::type iter_5;
42 typedef typename mpl::next< iter_5 > ::type iter_6;
43 typedef typename mpl::next< iter_6 > ::type iter_7;
44 typedef typename mpl::next< iter_7 > ::type iter_8;
45 typedef typename mpl::next< iter_8 > ::type iter_9;
46 typedef typename mpl::next< iter_9 > ::type iter_10;
47 typedef typename mpl::next< iter_10 > ::type iter_11;
48 typedef typename mpl::next< iter_11 > ::type iter_12;
49 typedef typename mpl::next< iter_12 > ::type iter_13;
50 typedef typename mpl::next< iter_13 > ::type iter_14;
51 typedef typename mpl::next< iter_14 > ::type iter_15;
52 typedef typename mpl::next< iter_15 > ::type iter_16;
53 typedef typename mpl::next< iter_16 > ::type iter_17;
54 typedef typename mpl::next< iter_17 > ::type iter_18;
55 typedef typename mpl::next< iter_18 > ::type iter_19;
56 typedef typename mpl::next< iter_19 > ::type iter_20;
57 typedef typename mpl::next< iter_20 > ::type iter_21;
58 public:
59 typedef typename detail::BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,21) 
60 < typename mpl::deref< iter_0 > ::type 
61 , typename mpl::deref< iter_1 > ::type
62 , typename mpl::deref< iter_2 > ::type
63 , typename mpl::deref< iter_3 > ::type
64 , typename mpl::deref< iter_4 > ::type
65 , typename mpl::deref< iter_5 > ::type
66 , typename mpl::deref< iter_6 > ::type
67 , typename mpl::deref< iter_7 > ::type
68 , typename mpl::deref< iter_8 > ::type
69 , typename mpl::deref< iter_9 > ::type
70 , typename mpl::deref< iter_10 > ::type
71 , typename mpl::deref< iter_11 > ::type
72 , typename mpl::deref< iter_12 > ::type
73 , typename mpl::deref< iter_13 > ::type
74 , typename mpl::deref< iter_14 > ::type
75 , typename mpl::deref< iter_15 > ::type
76 , typename mpl::deref< iter_16 > ::type
77 , typename mpl::deref< iter_17 > ::type
78 , typename mpl::deref< iter_18 > ::type
79 , typename mpl::deref< iter_19 > ::type
80 , typename mpl::deref< iter_20 > ::type
81 , typename mpl::deref< iter_21 > ::type
82 > ::type type;
83 };
84 };
85 template< typename R , typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 >
86 struct BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,22)
87 {
88 typedef BOOST_FT_syntax(BOOST_FT_cc,type BOOST_PP_EMPTY) (T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 BOOST_FT_ell) BOOST_FT_cv ;
89 };
90 template< > 
91 struct synthesize_impl_o< BOOST_FT_flags, BOOST_FT_cc_id, 23 > 
92
93 template<typename S> struct synthesize_impl_i
94 {
95 private:
96 typedef typename mpl::begin<S> ::type iter_0;
97 typedef typename mpl::next< iter_0 > ::type iter_1;
98 typedef typename mpl::next< iter_1 > ::type iter_2;
99 typedef typename mpl::next< iter_2 > ::type iter_3;
100 typedef typename mpl::next< iter_3 > ::type iter_4;
101 typedef typename mpl::next< iter_4 > ::type iter_5;
102 typedef typename mpl::next< iter_5 > ::type iter_6;
103 typedef typename mpl::next< iter_6 > ::type iter_7;
104 typedef typename mpl::next< iter_7 > ::type iter_8;
105 typedef typename mpl::next< iter_8 > ::type iter_9;
106 typedef typename mpl::next< iter_9 > ::type iter_10;
107 typedef typename mpl::next< iter_10 > ::type iter_11;
108 typedef typename mpl::next< iter_11 > ::type iter_12;
109 typedef typename mpl::next< iter_12 > ::type iter_13;
110 typedef typename mpl::next< iter_13 > ::type iter_14;
111 typedef typename mpl::next< iter_14 > ::type iter_15;
112 typedef typename mpl::next< iter_15 > ::type iter_16;
113 typedef typename mpl::next< iter_16 > ::type iter_17;
114 typedef typename mpl::next< iter_17 > ::type iter_18;
115 typedef typename mpl::next< iter_18 > ::type iter_19;
116 typedef typename mpl::next< iter_19 > ::type iter_20;
117 typedef typename mpl::next< iter_20 > ::type iter_21;
118 typedef typename mpl::next< iter_21 > ::type iter_22;
119 public:
120 typedef typename detail::BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,22) 
121 < typename mpl::deref< iter_0 > ::type 
122 , typename mpl::deref< iter_1 > ::type
123 , typename mpl::deref< iter_2 > ::type
124 , typename mpl::deref< iter_3 > ::type
125 , typename mpl::deref< iter_4 > ::type
126 , typename mpl::deref< iter_5 > ::type
127 , typename mpl::deref< iter_6 > ::type
128 , typename mpl::deref< iter_7 > ::type
129 , typename mpl::deref< iter_8 > ::type
130 , typename mpl::deref< iter_9 > ::type
131 , typename mpl::deref< iter_10 > ::type
132 , typename mpl::deref< iter_11 > ::type
133 , typename mpl::deref< iter_12 > ::type
134 , typename mpl::deref< iter_13 > ::type
135 , typename mpl::deref< iter_14 > ::type
136 , typename mpl::deref< iter_15 > ::type
137 , typename mpl::deref< iter_16 > ::type
138 , typename mpl::deref< iter_17 > ::type
139 , typename mpl::deref< iter_18 > ::type
140 , typename mpl::deref< iter_19 > ::type
141 , typename mpl::deref< iter_20 > ::type
142 , typename mpl::deref< iter_21 > ::type
143 , typename mpl::deref< iter_22 > ::type
144 > ::type type;
145 };
146 };
147 template< typename R , typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 >
148 struct BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,23)
149 {
150 typedef BOOST_FT_syntax(BOOST_FT_cc,type BOOST_PP_EMPTY) (T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 BOOST_FT_ell) BOOST_FT_cv ;
151 };
152 template< > 
153 struct synthesize_impl_o< BOOST_FT_flags, BOOST_FT_cc_id, 24 > 
154
155 template<typename S> struct synthesize_impl_i
156 {
157 private:
158 typedef typename mpl::begin<S> ::type iter_0;
159 typedef typename mpl::next< iter_0 > ::type iter_1;
160 typedef typename mpl::next< iter_1 > ::type iter_2;
161 typedef typename mpl::next< iter_2 > ::type iter_3;
162 typedef typename mpl::next< iter_3 > ::type iter_4;
163 typedef typename mpl::next< iter_4 > ::type iter_5;
164 typedef typename mpl::next< iter_5 > ::type iter_6;
165 typedef typename mpl::next< iter_6 > ::type iter_7;
166 typedef typename mpl::next< iter_7 > ::type iter_8;
167 typedef typename mpl::next< iter_8 > ::type iter_9;
168 typedef typename mpl::next< iter_9 > ::type iter_10;
169 typedef typename mpl::next< iter_10 > ::type iter_11;
170 typedef typename mpl::next< iter_11 > ::type iter_12;
171 typedef typename mpl::next< iter_12 > ::type iter_13;
172 typedef typename mpl::next< iter_13 > ::type iter_14;
173 typedef typename mpl::next< iter_14 > ::type iter_15;
174 typedef typename mpl::next< iter_15 > ::type iter_16;
175 typedef typename mpl::next< iter_16 > ::type iter_17;
176 typedef typename mpl::next< iter_17 > ::type iter_18;
177 typedef typename mpl::next< iter_18 > ::type iter_19;
178 typedef typename mpl::next< iter_19 > ::type iter_20;
179 typedef typename mpl::next< iter_20 > ::type iter_21;
180 typedef typename mpl::next< iter_21 > ::type iter_22;
181 typedef typename mpl::next< iter_22 > ::type iter_23;
182 public:
183 typedef typename detail::BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,23) 
184 < typename mpl::deref< iter_0 > ::type 
185 , typename mpl::deref< iter_1 > ::type
186 , typename mpl::deref< iter_2 > ::type
187 , typename mpl::deref< iter_3 > ::type
188 , typename mpl::deref< iter_4 > ::type
189 , typename mpl::deref< iter_5 > ::type
190 , typename mpl::deref< iter_6 > ::type
191 , typename mpl::deref< iter_7 > ::type
192 , typename mpl::deref< iter_8 > ::type
193 , typename mpl::deref< iter_9 > ::type
194 , typename mpl::deref< iter_10 > ::type
195 , typename mpl::deref< iter_11 > ::type
196 , typename mpl::deref< iter_12 > ::type
197 , typename mpl::deref< iter_13 > ::type
198 , typename mpl::deref< iter_14 > ::type
199 , typename mpl::deref< iter_15 > ::type
200 , typename mpl::deref< iter_16 > ::type
201 , typename mpl::deref< iter_17 > ::type
202 , typename mpl::deref< iter_18 > ::type
203 , typename mpl::deref< iter_19 > ::type
204 , typename mpl::deref< iter_20 > ::type
205 , typename mpl::deref< iter_21 > ::type
206 , typename mpl::deref< iter_22 > ::type
207 , typename mpl::deref< iter_23 > ::type
208 > ::type type;
209 };
210 };
211 template< typename R , typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 >
212 struct BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,24)
213 {
214 typedef BOOST_FT_syntax(BOOST_FT_cc,type BOOST_PP_EMPTY) (T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 BOOST_FT_ell) BOOST_FT_cv ;
215 };
216 template< > 
217 struct synthesize_impl_o< BOOST_FT_flags, BOOST_FT_cc_id, 25 > 
218
219 template<typename S> struct synthesize_impl_i
220 {
221 private:
222 typedef typename mpl::begin<S> ::type iter_0;
223 typedef typename mpl::next< iter_0 > ::type iter_1;
224 typedef typename mpl::next< iter_1 > ::type iter_2;
225 typedef typename mpl::next< iter_2 > ::type iter_3;
226 typedef typename mpl::next< iter_3 > ::type iter_4;
227 typedef typename mpl::next< iter_4 > ::type iter_5;
228 typedef typename mpl::next< iter_5 > ::type iter_6;
229 typedef typename mpl::next< iter_6 > ::type iter_7;
230 typedef typename mpl::next< iter_7 > ::type iter_8;
231 typedef typename mpl::next< iter_8 > ::type iter_9;
232 typedef typename mpl::next< iter_9 > ::type iter_10;
233 typedef typename mpl::next< iter_10 > ::type iter_11;
234 typedef typename mpl::next< iter_11 > ::type iter_12;
235 typedef typename mpl::next< iter_12 > ::type iter_13;
236 typedef typename mpl::next< iter_13 > ::type iter_14;
237 typedef typename mpl::next< iter_14 > ::type iter_15;
238 typedef typename mpl::next< iter_15 > ::type iter_16;
239 typedef typename mpl::next< iter_16 > ::type iter_17;
240 typedef typename mpl::next< iter_17 > ::type iter_18;
241 typedef typename mpl::next< iter_18 > ::type iter_19;
242 typedef typename mpl::next< iter_19 > ::type iter_20;
243 typedef typename mpl::next< iter_20 > ::type iter_21;
244 typedef typename mpl::next< iter_21 > ::type iter_22;
245 typedef typename mpl::next< iter_22 > ::type iter_23;
246 typedef typename mpl::next< iter_23 > ::type iter_24;
247 public:
248 typedef typename detail::BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,24) 
249 < typename mpl::deref< iter_0 > ::type 
250 , typename mpl::deref< iter_1 > ::type
251 , typename mpl::deref< iter_2 > ::type
252 , typename mpl::deref< iter_3 > ::type
253 , typename mpl::deref< iter_4 > ::type
254 , typename mpl::deref< iter_5 > ::type
255 , typename mpl::deref< iter_6 > ::type
256 , typename mpl::deref< iter_7 > ::type
257 , typename mpl::deref< iter_8 > ::type
258 , typename mpl::deref< iter_9 > ::type
259 , typename mpl::deref< iter_10 > ::type
260 , typename mpl::deref< iter_11 > ::type
261 , typename mpl::deref< iter_12 > ::type
262 , typename mpl::deref< iter_13 > ::type
263 , typename mpl::deref< iter_14 > ::type
264 , typename mpl::deref< iter_15 > ::type
265 , typename mpl::deref< iter_16 > ::type
266 , typename mpl::deref< iter_17 > ::type
267 , typename mpl::deref< iter_18 > ::type
268 , typename mpl::deref< iter_19 > ::type
269 , typename mpl::deref< iter_20 > ::type
270 , typename mpl::deref< iter_21 > ::type
271 , typename mpl::deref< iter_22 > ::type
272 , typename mpl::deref< iter_23 > ::type
273 , typename mpl::deref< iter_24 > ::type
274 > ::type type;
275 };
276 };
277 template< typename R , typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 >
278 struct BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,25)
279 {
280 typedef BOOST_FT_syntax(BOOST_FT_cc,type BOOST_PP_EMPTY) (T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 BOOST_FT_ell) BOOST_FT_cv ;
281 };
282 template< > 
283 struct synthesize_impl_o< BOOST_FT_flags, BOOST_FT_cc_id, 26 > 
284
285 template<typename S> struct synthesize_impl_i
286 {
287 private:
288 typedef typename mpl::begin<S> ::type iter_0;
289 typedef typename mpl::next< iter_0 > ::type iter_1;
290 typedef typename mpl::next< iter_1 > ::type iter_2;
291 typedef typename mpl::next< iter_2 > ::type iter_3;
292 typedef typename mpl::next< iter_3 > ::type iter_4;
293 typedef typename mpl::next< iter_4 > ::type iter_5;
294 typedef typename mpl::next< iter_5 > ::type iter_6;
295 typedef typename mpl::next< iter_6 > ::type iter_7;
296 typedef typename mpl::next< iter_7 > ::type iter_8;
297 typedef typename mpl::next< iter_8 > ::type iter_9;
298 typedef typename mpl::next< iter_9 > ::type iter_10;
299 typedef typename mpl::next< iter_10 > ::type iter_11;
300 typedef typename mpl::next< iter_11 > ::type iter_12;
301 typedef typename mpl::next< iter_12 > ::type iter_13;
302 typedef typename mpl::next< iter_13 > ::type iter_14;
303 typedef typename mpl::next< iter_14 > ::type iter_15;
304 typedef typename mpl::next< iter_15 > ::type iter_16;
305 typedef typename mpl::next< iter_16 > ::type iter_17;
306 typedef typename mpl::next< iter_17 > ::type iter_18;
307 typedef typename mpl::next< iter_18 > ::type iter_19;
308 typedef typename mpl::next< iter_19 > ::type iter_20;
309 typedef typename mpl::next< iter_20 > ::type iter_21;
310 typedef typename mpl::next< iter_21 > ::type iter_22;
311 typedef typename mpl::next< iter_22 > ::type iter_23;
312 typedef typename mpl::next< iter_23 > ::type iter_24;
313 typedef typename mpl::next< iter_24 > ::type iter_25;
314 public:
315 typedef typename detail::BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,25) 
316 < typename mpl::deref< iter_0 > ::type 
317 , typename mpl::deref< iter_1 > ::type
318 , typename mpl::deref< iter_2 > ::type
319 , typename mpl::deref< iter_3 > ::type
320 , typename mpl::deref< iter_4 > ::type
321 , typename mpl::deref< iter_5 > ::type
322 , typename mpl::deref< iter_6 > ::type
323 , typename mpl::deref< iter_7 > ::type
324 , typename mpl::deref< iter_8 > ::type
325 , typename mpl::deref< iter_9 > ::type
326 , typename mpl::deref< iter_10 > ::type
327 , typename mpl::deref< iter_11 > ::type
328 , typename mpl::deref< iter_12 > ::type
329 , typename mpl::deref< iter_13 > ::type
330 , typename mpl::deref< iter_14 > ::type
331 , typename mpl::deref< iter_15 > ::type
332 , typename mpl::deref< iter_16 > ::type
333 , typename mpl::deref< iter_17 > ::type
334 , typename mpl::deref< iter_18 > ::type
335 , typename mpl::deref< iter_19 > ::type
336 , typename mpl::deref< iter_20 > ::type
337 , typename mpl::deref< iter_21 > ::type
338 , typename mpl::deref< iter_22 > ::type
339 , typename mpl::deref< iter_23 > ::type
340 , typename mpl::deref< iter_24 > ::type
341 , typename mpl::deref< iter_25 > ::type
342 > ::type type;
343 };
344 };
345 template< typename R , typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 >
346 struct BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,26)
347 {
348 typedef BOOST_FT_syntax(BOOST_FT_cc,type BOOST_PP_EMPTY) (T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 BOOST_FT_ell) BOOST_FT_cv ;
349 };
350 template< > 
351 struct synthesize_impl_o< BOOST_FT_flags, BOOST_FT_cc_id, 27 > 
352
353 template<typename S> struct synthesize_impl_i
354 {
355 private:
356 typedef typename mpl::begin<S> ::type iter_0;
357 typedef typename mpl::next< iter_0 > ::type iter_1;
358 typedef typename mpl::next< iter_1 > ::type iter_2;
359 typedef typename mpl::next< iter_2 > ::type iter_3;
360 typedef typename mpl::next< iter_3 > ::type iter_4;
361 typedef typename mpl::next< iter_4 > ::type iter_5;
362 typedef typename mpl::next< iter_5 > ::type iter_6;
363 typedef typename mpl::next< iter_6 > ::type iter_7;
364 typedef typename mpl::next< iter_7 > ::type iter_8;
365 typedef typename mpl::next< iter_8 > ::type iter_9;
366 typedef typename mpl::next< iter_9 > ::type iter_10;
367 typedef typename mpl::next< iter_10 > ::type iter_11;
368 typedef typename mpl::next< iter_11 > ::type iter_12;
369 typedef typename mpl::next< iter_12 > ::type iter_13;
370 typedef typename mpl::next< iter_13 > ::type iter_14;
371 typedef typename mpl::next< iter_14 > ::type iter_15;
372 typedef typename mpl::next< iter_15 > ::type iter_16;
373 typedef typename mpl::next< iter_16 > ::type iter_17;
374 typedef typename mpl::next< iter_17 > ::type iter_18;
375 typedef typename mpl::next< iter_18 > ::type iter_19;
376 typedef typename mpl::next< iter_19 > ::type iter_20;
377 typedef typename mpl::next< iter_20 > ::type iter_21;
378 typedef typename mpl::next< iter_21 > ::type iter_22;
379 typedef typename mpl::next< iter_22 > ::type iter_23;
380 typedef typename mpl::next< iter_23 > ::type iter_24;
381 typedef typename mpl::next< iter_24 > ::type iter_25;
382 typedef typename mpl::next< iter_25 > ::type iter_26;
383 public:
384 typedef typename detail::BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,26) 
385 < typename mpl::deref< iter_0 > ::type 
386 , typename mpl::deref< iter_1 > ::type
387 , typename mpl::deref< iter_2 > ::type
388 , typename mpl::deref< iter_3 > ::type
389 , typename mpl::deref< iter_4 > ::type
390 , typename mpl::deref< iter_5 > ::type
391 , typename mpl::deref< iter_6 > ::type
392 , typename mpl::deref< iter_7 > ::type
393 , typename mpl::deref< iter_8 > ::type
394 , typename mpl::deref< iter_9 > ::type
395 , typename mpl::deref< iter_10 > ::type
396 , typename mpl::deref< iter_11 > ::type
397 , typename mpl::deref< iter_12 > ::type
398 , typename mpl::deref< iter_13 > ::type
399 , typename mpl::deref< iter_14 > ::type
400 , typename mpl::deref< iter_15 > ::type
401 , typename mpl::deref< iter_16 > ::type
402 , typename mpl::deref< iter_17 > ::type
403 , typename mpl::deref< iter_18 > ::type
404 , typename mpl::deref< iter_19 > ::type
405 , typename mpl::deref< iter_20 > ::type
406 , typename mpl::deref< iter_21 > ::type
407 , typename mpl::deref< iter_22 > ::type
408 , typename mpl::deref< iter_23 > ::type
409 , typename mpl::deref< iter_24 > ::type
410 , typename mpl::deref< iter_25 > ::type
411 , typename mpl::deref< iter_26 > ::type
412 > ::type type;
413 };
414 };
415 template< typename R , typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 >
416 struct BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,27)
417 {
418 typedef BOOST_FT_syntax(BOOST_FT_cc,type BOOST_PP_EMPTY) (T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 BOOST_FT_ell) BOOST_FT_cv ;
419 };
420 template< > 
421 struct synthesize_impl_o< BOOST_FT_flags, BOOST_FT_cc_id, 28 > 
422
423 template<typename S> struct synthesize_impl_i
424 {
425 private:
426 typedef typename mpl::begin<S> ::type iter_0;
427 typedef typename mpl::next< iter_0 > ::type iter_1;
428 typedef typename mpl::next< iter_1 > ::type iter_2;
429 typedef typename mpl::next< iter_2 > ::type iter_3;
430 typedef typename mpl::next< iter_3 > ::type iter_4;
431 typedef typename mpl::next< iter_4 > ::type iter_5;
432 typedef typename mpl::next< iter_5 > ::type iter_6;
433 typedef typename mpl::next< iter_6 > ::type iter_7;
434 typedef typename mpl::next< iter_7 > ::type iter_8;
435 typedef typename mpl::next< iter_8 > ::type iter_9;
436 typedef typename mpl::next< iter_9 > ::type iter_10;
437 typedef typename mpl::next< iter_10 > ::type iter_11;
438 typedef typename mpl::next< iter_11 > ::type iter_12;
439 typedef typename mpl::next< iter_12 > ::type iter_13;
440 typedef typename mpl::next< iter_13 > ::type iter_14;
441 typedef typename mpl::next< iter_14 > ::type iter_15;
442 typedef typename mpl::next< iter_15 > ::type iter_16;
443 typedef typename mpl::next< iter_16 > ::type iter_17;
444 typedef typename mpl::next< iter_17 > ::type iter_18;
445 typedef typename mpl::next< iter_18 > ::type iter_19;
446 typedef typename mpl::next< iter_19 > ::type iter_20;
447 typedef typename mpl::next< iter_20 > ::type iter_21;
448 typedef typename mpl::next< iter_21 > ::type iter_22;
449 typedef typename mpl::next< iter_22 > ::type iter_23;
450 typedef typename mpl::next< iter_23 > ::type iter_24;
451 typedef typename mpl::next< iter_24 > ::type iter_25;
452 typedef typename mpl::next< iter_25 > ::type iter_26;
453 typedef typename mpl::next< iter_26 > ::type iter_27;
454 public:
455 typedef typename detail::BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,27) 
456 < typename mpl::deref< iter_0 > ::type 
457 , typename mpl::deref< iter_1 > ::type
458 , typename mpl::deref< iter_2 > ::type
459 , typename mpl::deref< iter_3 > ::type
460 , typename mpl::deref< iter_4 > ::type
461 , typename mpl::deref< iter_5 > ::type
462 , typename mpl::deref< iter_6 > ::type
463 , typename mpl::deref< iter_7 > ::type
464 , typename mpl::deref< iter_8 > ::type
465 , typename mpl::deref< iter_9 > ::type
466 , typename mpl::deref< iter_10 > ::type
467 , typename mpl::deref< iter_11 > ::type
468 , typename mpl::deref< iter_12 > ::type
469 , typename mpl::deref< iter_13 > ::type
470 , typename mpl::deref< iter_14 > ::type
471 , typename mpl::deref< iter_15 > ::type
472 , typename mpl::deref< iter_16 > ::type
473 , typename mpl::deref< iter_17 > ::type
474 , typename mpl::deref< iter_18 > ::type
475 , typename mpl::deref< iter_19 > ::type
476 , typename mpl::deref< iter_20 > ::type
477 , typename mpl::deref< iter_21 > ::type
478 , typename mpl::deref< iter_22 > ::type
479 , typename mpl::deref< iter_23 > ::type
480 , typename mpl::deref< iter_24 > ::type
481 , typename mpl::deref< iter_25 > ::type
482 , typename mpl::deref< iter_26 > ::type
483 , typename mpl::deref< iter_27 > ::type
484 > ::type type;
485 };
486 };
487 template< typename R , typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 >
488 struct BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,28)
489 {
490 typedef BOOST_FT_syntax(BOOST_FT_cc,type BOOST_PP_EMPTY) (T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 BOOST_FT_ell) BOOST_FT_cv ;
491 };
492 template< > 
493 struct synthesize_impl_o< BOOST_FT_flags, BOOST_FT_cc_id, 29 > 
494
495 template<typename S> struct synthesize_impl_i
496 {
497 private:
498 typedef typename mpl::begin<S> ::type iter_0;
499 typedef typename mpl::next< iter_0 > ::type iter_1;
500 typedef typename mpl::next< iter_1 > ::type iter_2;
501 typedef typename mpl::next< iter_2 > ::type iter_3;
502 typedef typename mpl::next< iter_3 > ::type iter_4;
503 typedef typename mpl::next< iter_4 > ::type iter_5;
504 typedef typename mpl::next< iter_5 > ::type iter_6;
505 typedef typename mpl::next< iter_6 > ::type iter_7;
506 typedef typename mpl::next< iter_7 > ::type iter_8;
507 typedef typename mpl::next< iter_8 > ::type iter_9;
508 typedef typename mpl::next< iter_9 > ::type iter_10;
509 typedef typename mpl::next< iter_10 > ::type iter_11;
510 typedef typename mpl::next< iter_11 > ::type iter_12;
511 typedef typename mpl::next< iter_12 > ::type iter_13;
512 typedef typename mpl::next< iter_13 > ::type iter_14;
513 typedef typename mpl::next< iter_14 > ::type iter_15;
514 typedef typename mpl::next< iter_15 > ::type iter_16;
515 typedef typename mpl::next< iter_16 > ::type iter_17;
516 typedef typename mpl::next< iter_17 > ::type iter_18;
517 typedef typename mpl::next< iter_18 > ::type iter_19;
518 typedef typename mpl::next< iter_19 > ::type iter_20;
519 typedef typename mpl::next< iter_20 > ::type iter_21;
520 typedef typename mpl::next< iter_21 > ::type iter_22;
521 typedef typename mpl::next< iter_22 > ::type iter_23;
522 typedef typename mpl::next< iter_23 > ::type iter_24;
523 typedef typename mpl::next< iter_24 > ::type iter_25;
524 typedef typename mpl::next< iter_25 > ::type iter_26;
525 typedef typename mpl::next< iter_26 > ::type iter_27;
526 typedef typename mpl::next< iter_27 > ::type iter_28;
527 public:
528 typedef typename detail::BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,28) 
529 < typename mpl::deref< iter_0 > ::type 
530 , typename mpl::deref< iter_1 > ::type
531 , typename mpl::deref< iter_2 > ::type
532 , typename mpl::deref< iter_3 > ::type
533 , typename mpl::deref< iter_4 > ::type
534 , typename mpl::deref< iter_5 > ::type
535 , typename mpl::deref< iter_6 > ::type
536 , typename mpl::deref< iter_7 > ::type
537 , typename mpl::deref< iter_8 > ::type
538 , typename mpl::deref< iter_9 > ::type
539 , typename mpl::deref< iter_10 > ::type
540 , typename mpl::deref< iter_11 > ::type
541 , typename mpl::deref< iter_12 > ::type
542 , typename mpl::deref< iter_13 > ::type
543 , typename mpl::deref< iter_14 > ::type
544 , typename mpl::deref< iter_15 > ::type
545 , typename mpl::deref< iter_16 > ::type
546 , typename mpl::deref< iter_17 > ::type
547 , typename mpl::deref< iter_18 > ::type
548 , typename mpl::deref< iter_19 > ::type
549 , typename mpl::deref< iter_20 > ::type
550 , typename mpl::deref< iter_21 > ::type
551 , typename mpl::deref< iter_22 > ::type
552 , typename mpl::deref< iter_23 > ::type
553 , typename mpl::deref< iter_24 > ::type
554 , typename mpl::deref< iter_25 > ::type
555 , typename mpl::deref< iter_26 > ::type
556 , typename mpl::deref< iter_27 > ::type
557 , typename mpl::deref< iter_28 > ::type
558 > ::type type;
559 };
560 };
561 template< typename R , typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 >
562 struct BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,29)
563 {
564 typedef BOOST_FT_syntax(BOOST_FT_cc,type BOOST_PP_EMPTY) (T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 BOOST_FT_ell) BOOST_FT_cv ;
565 };
566 template< > 
567 struct synthesize_impl_o< BOOST_FT_flags, BOOST_FT_cc_id, 30 > 
568
569 template<typename S> struct synthesize_impl_i
570 {
571 private:
572 typedef typename mpl::begin<S> ::type iter_0;
573 typedef typename mpl::next< iter_0 > ::type iter_1;
574 typedef typename mpl::next< iter_1 > ::type iter_2;
575 typedef typename mpl::next< iter_2 > ::type iter_3;
576 typedef typename mpl::next< iter_3 > ::type iter_4;
577 typedef typename mpl::next< iter_4 > ::type iter_5;
578 typedef typename mpl::next< iter_5 > ::type iter_6;
579 typedef typename mpl::next< iter_6 > ::type iter_7;
580 typedef typename mpl::next< iter_7 > ::type iter_8;
581 typedef typename mpl::next< iter_8 > ::type iter_9;
582 typedef typename mpl::next< iter_9 > ::type iter_10;
583 typedef typename mpl::next< iter_10 > ::type iter_11;
584 typedef typename mpl::next< iter_11 > ::type iter_12;
585 typedef typename mpl::next< iter_12 > ::type iter_13;
586 typedef typename mpl::next< iter_13 > ::type iter_14;
587 typedef typename mpl::next< iter_14 > ::type iter_15;
588 typedef typename mpl::next< iter_15 > ::type iter_16;
589 typedef typename mpl::next< iter_16 > ::type iter_17;
590 typedef typename mpl::next< iter_17 > ::type iter_18;
591 typedef typename mpl::next< iter_18 > ::type iter_19;
592 typedef typename mpl::next< iter_19 > ::type iter_20;
593 typedef typename mpl::next< iter_20 > ::type iter_21;
594 typedef typename mpl::next< iter_21 > ::type iter_22;
595 typedef typename mpl::next< iter_22 > ::type iter_23;
596 typedef typename mpl::next< iter_23 > ::type iter_24;
597 typedef typename mpl::next< iter_24 > ::type iter_25;
598 typedef typename mpl::next< iter_25 > ::type iter_26;
599 typedef typename mpl::next< iter_26 > ::type iter_27;
600 typedef typename mpl::next< iter_27 > ::type iter_28;
601 typedef typename mpl::next< iter_28 > ::type iter_29;
602 public:
603 typedef typename detail::BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,29) 
604 < typename mpl::deref< iter_0 > ::type 
605 , typename mpl::deref< iter_1 > ::type
606 , typename mpl::deref< iter_2 > ::type
607 , typename mpl::deref< iter_3 > ::type
608 , typename mpl::deref< iter_4 > ::type
609 , typename mpl::deref< iter_5 > ::type
610 , typename mpl::deref< iter_6 > ::type
611 , typename mpl::deref< iter_7 > ::type
612 , typename mpl::deref< iter_8 > ::type
613 , typename mpl::deref< iter_9 > ::type
614 , typename mpl::deref< iter_10 > ::type
615 , typename mpl::deref< iter_11 > ::type
616 , typename mpl::deref< iter_12 > ::type
617 , typename mpl::deref< iter_13 > ::type
618 , typename mpl::deref< iter_14 > ::type
619 , typename mpl::deref< iter_15 > ::type
620 , typename mpl::deref< iter_16 > ::type
621 , typename mpl::deref< iter_17 > ::type
622 , typename mpl::deref< iter_18 > ::type
623 , typename mpl::deref< iter_19 > ::type
624 , typename mpl::deref< iter_20 > ::type
625 , typename mpl::deref< iter_21 > ::type
626 , typename mpl::deref< iter_22 > ::type
627 , typename mpl::deref< iter_23 > ::type
628 , typename mpl::deref< iter_24 > ::type
629 , typename mpl::deref< iter_25 > ::type
630 , typename mpl::deref< iter_26 > ::type
631 , typename mpl::deref< iter_27 > ::type
632 , typename mpl::deref< iter_28 > ::type
633 , typename mpl::deref< iter_29 > ::type
634 > ::type type;
635 };
636 };
637 template< typename R , typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 , typename T20 , typename T21 , typename T22 , typename T23 , typename T24 , typename T25 , typename T26 , typename T27 , typename T28 , typename T29 >
638 struct BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,30)
639 {
640 typedef BOOST_FT_syntax(BOOST_FT_cc,type BOOST_PP_EMPTY) (T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 , T20 , T21 , T22 , T23 , T24 , T25 , T26 , T27 , T28 , T29 BOOST_FT_ell) BOOST_FT_cv ;
641 };
642 template< > 
643 struct synthesize_impl_o< BOOST_FT_flags, BOOST_FT_cc_id, 31 > 
644
645 template<typename S> struct synthesize_impl_i
646 {
647 private:
648 typedef typename mpl::begin<S> ::type iter_0;
649 typedef typename mpl::next< iter_0 > ::type iter_1;
650 typedef typename mpl::next< iter_1 > ::type iter_2;
651 typedef typename mpl::next< iter_2 > ::type iter_3;
652 typedef typename mpl::next< iter_3 > ::type iter_4;
653 typedef typename mpl::next< iter_4 > ::type iter_5;
654 typedef typename mpl::next< iter_5 > ::type iter_6;
655 typedef typename mpl::next< iter_6 > ::type iter_7;
656 typedef typename mpl::next< iter_7 > ::type iter_8;
657 typedef typename mpl::next< iter_8 > ::type iter_9;
658 typedef typename mpl::next< iter_9 > ::type iter_10;
659 typedef typename mpl::next< iter_10 > ::type iter_11;
660 typedef typename mpl::next< iter_11 > ::type iter_12;
661 typedef typename mpl::next< iter_12 > ::type iter_13;
662 typedef typename mpl::next< iter_13 > ::type iter_14;
663 typedef typename mpl::next< iter_14 > ::type iter_15;
664 typedef typename mpl::next< iter_15 > ::type iter_16;
665 typedef typename mpl::next< iter_16 > ::type iter_17;
666 typedef typename mpl::next< iter_17 > ::type iter_18;
667 typedef typename mpl::next< iter_18 > ::type iter_19;
668 typedef typename mpl::next< iter_19 > ::type iter_20;
669 typedef typename mpl::next< iter_20 > ::type iter_21;
670 typedef typename mpl::next< iter_21 > ::type iter_22;
671 typedef typename mpl::next< iter_22 > ::type iter_23;
672 typedef typename mpl::next< iter_23 > ::type iter_24;
673 typedef typename mpl::next< iter_24 > ::type iter_25;
674 typedef typename mpl::next< iter_25 > ::type iter_26;
675 typedef typename mpl::next< iter_26 > ::type iter_27;
676 typedef typename mpl::next< iter_27 > ::type iter_28;
677 typedef typename mpl::next< iter_28 > ::type iter_29;
678 typedef typename mpl::next< iter_29 > ::type iter_30;
679 public:
680 typedef typename detail::BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,30) 
681 < typename mpl::deref< iter_0 > ::type 
682 , typename mpl::deref< iter_1 > ::type
683 , typename mpl::deref< iter_2 > ::type
684 , typename mpl::deref< iter_3 > ::type
685 , typename mpl::deref< iter_4 > ::type
686 , typename mpl::deref< iter_5 > ::type
687 , typename mpl::deref< iter_6 > ::type
688 , typename mpl::deref< iter_7 > ::type
689 , typename mpl::deref< iter_8 > ::type
690 , typename mpl::deref< iter_9 > ::type
691 , typename mpl::deref< iter_10 > ::type
692 , typename mpl::deref< iter_11 > ::type
693 , typename mpl::deref< iter_12 > ::type
694 , typename mpl::deref< iter_13 > ::type
695 , typename mpl::deref< iter_14 > ::type
696 , typename mpl::deref< iter_15 > ::type
697 , typename mpl::deref< iter_16 > ::type
698 , typename mpl::deref< iter_17 > ::type
699 , typename mpl::deref< iter_18 > ::type
700 , typename mpl::deref< iter_19 > ::type
701 , typename mpl::deref< iter_20 > ::type
702 , typename mpl::deref< iter_21 > ::type
703 , typename mpl::deref< iter_22 > ::type
704 , typename mpl::deref< iter_23 > ::type
705 , typename mpl::deref< iter_24 > ::type
706 , typename mpl::deref< iter_25 > ::type
707 , typename mpl::deref< iter_26 > ::type
708 , typename mpl::deref< iter_27 > ::type
709 , typename mpl::deref< iter_28 > ::type
710 , typename mpl::deref< iter_29 > ::type
711 , typename mpl::deref< iter_30 > ::type
712 > ::type type;
713 };
714 };
715 # undef BOOST_FT_make_type
716 # undef BOOST_FT_make_type_impl
717