]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/boost/function_types/detail/synthesize_impl/arity30_1.hpp
update sources to v12.2.3
[ceph.git] / ceph / src / boost / boost / function_types / detail / synthesize_impl / arity30_1.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_1.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) (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 detail::cv_traits<
62 typename mpl::deref< iter_1 > ::type > ::type
63 , typename mpl::deref< iter_2 > ::type
64 , typename mpl::deref< iter_3 > ::type
65 , typename mpl::deref< iter_4 > ::type
66 , typename mpl::deref< iter_5 > ::type
67 , typename mpl::deref< iter_6 > ::type
68 , typename mpl::deref< iter_7 > ::type
69 , typename mpl::deref< iter_8 > ::type
70 , typename mpl::deref< iter_9 > ::type
71 , typename mpl::deref< iter_10 > ::type
72 , typename mpl::deref< iter_11 > ::type
73 , typename mpl::deref< iter_12 > ::type
74 , typename mpl::deref< iter_13 > ::type
75 , typename mpl::deref< iter_14 > ::type
76 , typename mpl::deref< iter_15 > ::type
77 , typename mpl::deref< iter_16 > ::type
78 , typename mpl::deref< iter_17 > ::type
79 , typename mpl::deref< iter_18 > ::type
80 , typename mpl::deref< iter_19 > ::type
81 , typename mpl::deref< iter_20 > ::type
82 , typename mpl::deref< iter_21 > ::type
83 > ::type type;
84 };
85 };
86 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 >
87 struct BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,22)
88 {
89 typedef BOOST_FT_syntax(BOOST_FT_cc,type BOOST_PP_EMPTY) (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 ;
90 };
91 template< >
92 struct synthesize_impl_o< BOOST_FT_flags, BOOST_FT_cc_id, 23 >
93 {
94 template<typename S> struct synthesize_impl_i
95 {
96 private:
97 typedef typename mpl::begin<S> ::type iter_0;
98 typedef typename mpl::next< iter_0 > ::type iter_1;
99 typedef typename mpl::next< iter_1 > ::type iter_2;
100 typedef typename mpl::next< iter_2 > ::type iter_3;
101 typedef typename mpl::next< iter_3 > ::type iter_4;
102 typedef typename mpl::next< iter_4 > ::type iter_5;
103 typedef typename mpl::next< iter_5 > ::type iter_6;
104 typedef typename mpl::next< iter_6 > ::type iter_7;
105 typedef typename mpl::next< iter_7 > ::type iter_8;
106 typedef typename mpl::next< iter_8 > ::type iter_9;
107 typedef typename mpl::next< iter_9 > ::type iter_10;
108 typedef typename mpl::next< iter_10 > ::type iter_11;
109 typedef typename mpl::next< iter_11 > ::type iter_12;
110 typedef typename mpl::next< iter_12 > ::type iter_13;
111 typedef typename mpl::next< iter_13 > ::type iter_14;
112 typedef typename mpl::next< iter_14 > ::type iter_15;
113 typedef typename mpl::next< iter_15 > ::type iter_16;
114 typedef typename mpl::next< iter_16 > ::type iter_17;
115 typedef typename mpl::next< iter_17 > ::type iter_18;
116 typedef typename mpl::next< iter_18 > ::type iter_19;
117 typedef typename mpl::next< iter_19 > ::type iter_20;
118 typedef typename mpl::next< iter_20 > ::type iter_21;
119 typedef typename mpl::next< iter_21 > ::type iter_22;
120 public:
121 typedef typename detail::BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,22)
122 < typename mpl::deref< iter_0 > ::type
123 , typename detail::cv_traits<
124 typename mpl::deref< iter_1 > ::type > ::type
125 , typename mpl::deref< iter_2 > ::type
126 , typename mpl::deref< iter_3 > ::type
127 , typename mpl::deref< iter_4 > ::type
128 , typename mpl::deref< iter_5 > ::type
129 , typename mpl::deref< iter_6 > ::type
130 , typename mpl::deref< iter_7 > ::type
131 , typename mpl::deref< iter_8 > ::type
132 , typename mpl::deref< iter_9 > ::type
133 , typename mpl::deref< iter_10 > ::type
134 , typename mpl::deref< iter_11 > ::type
135 , typename mpl::deref< iter_12 > ::type
136 , typename mpl::deref< iter_13 > ::type
137 , typename mpl::deref< iter_14 > ::type
138 , typename mpl::deref< iter_15 > ::type
139 , typename mpl::deref< iter_16 > ::type
140 , typename mpl::deref< iter_17 > ::type
141 , typename mpl::deref< iter_18 > ::type
142 , typename mpl::deref< iter_19 > ::type
143 , typename mpl::deref< iter_20 > ::type
144 , typename mpl::deref< iter_21 > ::type
145 , typename mpl::deref< iter_22 > ::type
146 > ::type type;
147 };
148 };
149 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 >
150 struct BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,23)
151 {
152 typedef BOOST_FT_syntax(BOOST_FT_cc,type BOOST_PP_EMPTY) (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 ;
153 };
154 template< >
155 struct synthesize_impl_o< BOOST_FT_flags, BOOST_FT_cc_id, 24 >
156 {
157 template<typename S> struct synthesize_impl_i
158 {
159 private:
160 typedef typename mpl::begin<S> ::type iter_0;
161 typedef typename mpl::next< iter_0 > ::type iter_1;
162 typedef typename mpl::next< iter_1 > ::type iter_2;
163 typedef typename mpl::next< iter_2 > ::type iter_3;
164 typedef typename mpl::next< iter_3 > ::type iter_4;
165 typedef typename mpl::next< iter_4 > ::type iter_5;
166 typedef typename mpl::next< iter_5 > ::type iter_6;
167 typedef typename mpl::next< iter_6 > ::type iter_7;
168 typedef typename mpl::next< iter_7 > ::type iter_8;
169 typedef typename mpl::next< iter_8 > ::type iter_9;
170 typedef typename mpl::next< iter_9 > ::type iter_10;
171 typedef typename mpl::next< iter_10 > ::type iter_11;
172 typedef typename mpl::next< iter_11 > ::type iter_12;
173 typedef typename mpl::next< iter_12 > ::type iter_13;
174 typedef typename mpl::next< iter_13 > ::type iter_14;
175 typedef typename mpl::next< iter_14 > ::type iter_15;
176 typedef typename mpl::next< iter_15 > ::type iter_16;
177 typedef typename mpl::next< iter_16 > ::type iter_17;
178 typedef typename mpl::next< iter_17 > ::type iter_18;
179 typedef typename mpl::next< iter_18 > ::type iter_19;
180 typedef typename mpl::next< iter_19 > ::type iter_20;
181 typedef typename mpl::next< iter_20 > ::type iter_21;
182 typedef typename mpl::next< iter_21 > ::type iter_22;
183 typedef typename mpl::next< iter_22 > ::type iter_23;
184 public:
185 typedef typename detail::BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,23)
186 < typename mpl::deref< iter_0 > ::type
187 , typename detail::cv_traits<
188 typename mpl::deref< iter_1 > ::type > ::type
189 , typename mpl::deref< iter_2 > ::type
190 , typename mpl::deref< iter_3 > ::type
191 , typename mpl::deref< iter_4 > ::type
192 , typename mpl::deref< iter_5 > ::type
193 , typename mpl::deref< iter_6 > ::type
194 , typename mpl::deref< iter_7 > ::type
195 , typename mpl::deref< iter_8 > ::type
196 , typename mpl::deref< iter_9 > ::type
197 , typename mpl::deref< iter_10 > ::type
198 , typename mpl::deref< iter_11 > ::type
199 , typename mpl::deref< iter_12 > ::type
200 , typename mpl::deref< iter_13 > ::type
201 , typename mpl::deref< iter_14 > ::type
202 , typename mpl::deref< iter_15 > ::type
203 , typename mpl::deref< iter_16 > ::type
204 , typename mpl::deref< iter_17 > ::type
205 , typename mpl::deref< iter_18 > ::type
206 , typename mpl::deref< iter_19 > ::type
207 , typename mpl::deref< iter_20 > ::type
208 , typename mpl::deref< iter_21 > ::type
209 , typename mpl::deref< iter_22 > ::type
210 , typename mpl::deref< iter_23 > ::type
211 > ::type type;
212 };
213 };
214 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 >
215 struct BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,24)
216 {
217 typedef BOOST_FT_syntax(BOOST_FT_cc,type BOOST_PP_EMPTY) (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 ;
218 };
219 template< >
220 struct synthesize_impl_o< BOOST_FT_flags, BOOST_FT_cc_id, 25 >
221 {
222 template<typename S> struct synthesize_impl_i
223 {
224 private:
225 typedef typename mpl::begin<S> ::type iter_0;
226 typedef typename mpl::next< iter_0 > ::type iter_1;
227 typedef typename mpl::next< iter_1 > ::type iter_2;
228 typedef typename mpl::next< iter_2 > ::type iter_3;
229 typedef typename mpl::next< iter_3 > ::type iter_4;
230 typedef typename mpl::next< iter_4 > ::type iter_5;
231 typedef typename mpl::next< iter_5 > ::type iter_6;
232 typedef typename mpl::next< iter_6 > ::type iter_7;
233 typedef typename mpl::next< iter_7 > ::type iter_8;
234 typedef typename mpl::next< iter_8 > ::type iter_9;
235 typedef typename mpl::next< iter_9 > ::type iter_10;
236 typedef typename mpl::next< iter_10 > ::type iter_11;
237 typedef typename mpl::next< iter_11 > ::type iter_12;
238 typedef typename mpl::next< iter_12 > ::type iter_13;
239 typedef typename mpl::next< iter_13 > ::type iter_14;
240 typedef typename mpl::next< iter_14 > ::type iter_15;
241 typedef typename mpl::next< iter_15 > ::type iter_16;
242 typedef typename mpl::next< iter_16 > ::type iter_17;
243 typedef typename mpl::next< iter_17 > ::type iter_18;
244 typedef typename mpl::next< iter_18 > ::type iter_19;
245 typedef typename mpl::next< iter_19 > ::type iter_20;
246 typedef typename mpl::next< iter_20 > ::type iter_21;
247 typedef typename mpl::next< iter_21 > ::type iter_22;
248 typedef typename mpl::next< iter_22 > ::type iter_23;
249 typedef typename mpl::next< iter_23 > ::type iter_24;
250 public:
251 typedef typename detail::BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,24)
252 < typename mpl::deref< iter_0 > ::type
253 , typename detail::cv_traits<
254 typename mpl::deref< iter_1 > ::type > ::type
255 , typename mpl::deref< iter_2 > ::type
256 , typename mpl::deref< iter_3 > ::type
257 , typename mpl::deref< iter_4 > ::type
258 , typename mpl::deref< iter_5 > ::type
259 , typename mpl::deref< iter_6 > ::type
260 , typename mpl::deref< iter_7 > ::type
261 , typename mpl::deref< iter_8 > ::type
262 , typename mpl::deref< iter_9 > ::type
263 , typename mpl::deref< iter_10 > ::type
264 , typename mpl::deref< iter_11 > ::type
265 , typename mpl::deref< iter_12 > ::type
266 , typename mpl::deref< iter_13 > ::type
267 , typename mpl::deref< iter_14 > ::type
268 , typename mpl::deref< iter_15 > ::type
269 , typename mpl::deref< iter_16 > ::type
270 , typename mpl::deref< iter_17 > ::type
271 , typename mpl::deref< iter_18 > ::type
272 , typename mpl::deref< iter_19 > ::type
273 , typename mpl::deref< iter_20 > ::type
274 , typename mpl::deref< iter_21 > ::type
275 , typename mpl::deref< iter_22 > ::type
276 , typename mpl::deref< iter_23 > ::type
277 , typename mpl::deref< iter_24 > ::type
278 > ::type type;
279 };
280 };
281 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 >
282 struct BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,25)
283 {
284 typedef BOOST_FT_syntax(BOOST_FT_cc,type BOOST_PP_EMPTY) (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 ;
285 };
286 template< >
287 struct synthesize_impl_o< BOOST_FT_flags, BOOST_FT_cc_id, 26 >
288 {
289 template<typename S> struct synthesize_impl_i
290 {
291 private:
292 typedef typename mpl::begin<S> ::type iter_0;
293 typedef typename mpl::next< iter_0 > ::type iter_1;
294 typedef typename mpl::next< iter_1 > ::type iter_2;
295 typedef typename mpl::next< iter_2 > ::type iter_3;
296 typedef typename mpl::next< iter_3 > ::type iter_4;
297 typedef typename mpl::next< iter_4 > ::type iter_5;
298 typedef typename mpl::next< iter_5 > ::type iter_6;
299 typedef typename mpl::next< iter_6 > ::type iter_7;
300 typedef typename mpl::next< iter_7 > ::type iter_8;
301 typedef typename mpl::next< iter_8 > ::type iter_9;
302 typedef typename mpl::next< iter_9 > ::type iter_10;
303 typedef typename mpl::next< iter_10 > ::type iter_11;
304 typedef typename mpl::next< iter_11 > ::type iter_12;
305 typedef typename mpl::next< iter_12 > ::type iter_13;
306 typedef typename mpl::next< iter_13 > ::type iter_14;
307 typedef typename mpl::next< iter_14 > ::type iter_15;
308 typedef typename mpl::next< iter_15 > ::type iter_16;
309 typedef typename mpl::next< iter_16 > ::type iter_17;
310 typedef typename mpl::next< iter_17 > ::type iter_18;
311 typedef typename mpl::next< iter_18 > ::type iter_19;
312 typedef typename mpl::next< iter_19 > ::type iter_20;
313 typedef typename mpl::next< iter_20 > ::type iter_21;
314 typedef typename mpl::next< iter_21 > ::type iter_22;
315 typedef typename mpl::next< iter_22 > ::type iter_23;
316 typedef typename mpl::next< iter_23 > ::type iter_24;
317 typedef typename mpl::next< iter_24 > ::type iter_25;
318 public:
319 typedef typename detail::BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,25)
320 < typename mpl::deref< iter_0 > ::type
321 , typename detail::cv_traits<
322 typename mpl::deref< iter_1 > ::type > ::type
323 , typename mpl::deref< iter_2 > ::type
324 , typename mpl::deref< iter_3 > ::type
325 , typename mpl::deref< iter_4 > ::type
326 , typename mpl::deref< iter_5 > ::type
327 , typename mpl::deref< iter_6 > ::type
328 , typename mpl::deref< iter_7 > ::type
329 , typename mpl::deref< iter_8 > ::type
330 , typename mpl::deref< iter_9 > ::type
331 , typename mpl::deref< iter_10 > ::type
332 , typename mpl::deref< iter_11 > ::type
333 , typename mpl::deref< iter_12 > ::type
334 , typename mpl::deref< iter_13 > ::type
335 , typename mpl::deref< iter_14 > ::type
336 , typename mpl::deref< iter_15 > ::type
337 , typename mpl::deref< iter_16 > ::type
338 , typename mpl::deref< iter_17 > ::type
339 , typename mpl::deref< iter_18 > ::type
340 , typename mpl::deref< iter_19 > ::type
341 , typename mpl::deref< iter_20 > ::type
342 , typename mpl::deref< iter_21 > ::type
343 , typename mpl::deref< iter_22 > ::type
344 , typename mpl::deref< iter_23 > ::type
345 , typename mpl::deref< iter_24 > ::type
346 , typename mpl::deref< iter_25 > ::type
347 > ::type type;
348 };
349 };
350 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 >
351 struct BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,26)
352 {
353 typedef BOOST_FT_syntax(BOOST_FT_cc,type BOOST_PP_EMPTY) (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 ;
354 };
355 template< >
356 struct synthesize_impl_o< BOOST_FT_flags, BOOST_FT_cc_id, 27 >
357 {
358 template<typename S> struct synthesize_impl_i
359 {
360 private:
361 typedef typename mpl::begin<S> ::type iter_0;
362 typedef typename mpl::next< iter_0 > ::type iter_1;
363 typedef typename mpl::next< iter_1 > ::type iter_2;
364 typedef typename mpl::next< iter_2 > ::type iter_3;
365 typedef typename mpl::next< iter_3 > ::type iter_4;
366 typedef typename mpl::next< iter_4 > ::type iter_5;
367 typedef typename mpl::next< iter_5 > ::type iter_6;
368 typedef typename mpl::next< iter_6 > ::type iter_7;
369 typedef typename mpl::next< iter_7 > ::type iter_8;
370 typedef typename mpl::next< iter_8 > ::type iter_9;
371 typedef typename mpl::next< iter_9 > ::type iter_10;
372 typedef typename mpl::next< iter_10 > ::type iter_11;
373 typedef typename mpl::next< iter_11 > ::type iter_12;
374 typedef typename mpl::next< iter_12 > ::type iter_13;
375 typedef typename mpl::next< iter_13 > ::type iter_14;
376 typedef typename mpl::next< iter_14 > ::type iter_15;
377 typedef typename mpl::next< iter_15 > ::type iter_16;
378 typedef typename mpl::next< iter_16 > ::type iter_17;
379 typedef typename mpl::next< iter_17 > ::type iter_18;
380 typedef typename mpl::next< iter_18 > ::type iter_19;
381 typedef typename mpl::next< iter_19 > ::type iter_20;
382 typedef typename mpl::next< iter_20 > ::type iter_21;
383 typedef typename mpl::next< iter_21 > ::type iter_22;
384 typedef typename mpl::next< iter_22 > ::type iter_23;
385 typedef typename mpl::next< iter_23 > ::type iter_24;
386 typedef typename mpl::next< iter_24 > ::type iter_25;
387 typedef typename mpl::next< iter_25 > ::type iter_26;
388 public:
389 typedef typename detail::BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,26)
390 < typename mpl::deref< iter_0 > ::type
391 , typename detail::cv_traits<
392 typename mpl::deref< iter_1 > ::type > ::type
393 , typename mpl::deref< iter_2 > ::type
394 , typename mpl::deref< iter_3 > ::type
395 , typename mpl::deref< iter_4 > ::type
396 , typename mpl::deref< iter_5 > ::type
397 , typename mpl::deref< iter_6 > ::type
398 , typename mpl::deref< iter_7 > ::type
399 , typename mpl::deref< iter_8 > ::type
400 , typename mpl::deref< iter_9 > ::type
401 , typename mpl::deref< iter_10 > ::type
402 , typename mpl::deref< iter_11 > ::type
403 , typename mpl::deref< iter_12 > ::type
404 , typename mpl::deref< iter_13 > ::type
405 , typename mpl::deref< iter_14 > ::type
406 , typename mpl::deref< iter_15 > ::type
407 , typename mpl::deref< iter_16 > ::type
408 , typename mpl::deref< iter_17 > ::type
409 , typename mpl::deref< iter_18 > ::type
410 , typename mpl::deref< iter_19 > ::type
411 , typename mpl::deref< iter_20 > ::type
412 , typename mpl::deref< iter_21 > ::type
413 , typename mpl::deref< iter_22 > ::type
414 , typename mpl::deref< iter_23 > ::type
415 , typename mpl::deref< iter_24 > ::type
416 , typename mpl::deref< iter_25 > ::type
417 , typename mpl::deref< iter_26 > ::type
418 > ::type type;
419 };
420 };
421 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 >
422 struct BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,27)
423 {
424 typedef BOOST_FT_syntax(BOOST_FT_cc,type BOOST_PP_EMPTY) (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 ;
425 };
426 template< >
427 struct synthesize_impl_o< BOOST_FT_flags, BOOST_FT_cc_id, 28 >
428 {
429 template<typename S> struct synthesize_impl_i
430 {
431 private:
432 typedef typename mpl::begin<S> ::type iter_0;
433 typedef typename mpl::next< iter_0 > ::type iter_1;
434 typedef typename mpl::next< iter_1 > ::type iter_2;
435 typedef typename mpl::next< iter_2 > ::type iter_3;
436 typedef typename mpl::next< iter_3 > ::type iter_4;
437 typedef typename mpl::next< iter_4 > ::type iter_5;
438 typedef typename mpl::next< iter_5 > ::type iter_6;
439 typedef typename mpl::next< iter_6 > ::type iter_7;
440 typedef typename mpl::next< iter_7 > ::type iter_8;
441 typedef typename mpl::next< iter_8 > ::type iter_9;
442 typedef typename mpl::next< iter_9 > ::type iter_10;
443 typedef typename mpl::next< iter_10 > ::type iter_11;
444 typedef typename mpl::next< iter_11 > ::type iter_12;
445 typedef typename mpl::next< iter_12 > ::type iter_13;
446 typedef typename mpl::next< iter_13 > ::type iter_14;
447 typedef typename mpl::next< iter_14 > ::type iter_15;
448 typedef typename mpl::next< iter_15 > ::type iter_16;
449 typedef typename mpl::next< iter_16 > ::type iter_17;
450 typedef typename mpl::next< iter_17 > ::type iter_18;
451 typedef typename mpl::next< iter_18 > ::type iter_19;
452 typedef typename mpl::next< iter_19 > ::type iter_20;
453 typedef typename mpl::next< iter_20 > ::type iter_21;
454 typedef typename mpl::next< iter_21 > ::type iter_22;
455 typedef typename mpl::next< iter_22 > ::type iter_23;
456 typedef typename mpl::next< iter_23 > ::type iter_24;
457 typedef typename mpl::next< iter_24 > ::type iter_25;
458 typedef typename mpl::next< iter_25 > ::type iter_26;
459 typedef typename mpl::next< iter_26 > ::type iter_27;
460 public:
461 typedef typename detail::BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,27)
462 < typename mpl::deref< iter_0 > ::type
463 , typename detail::cv_traits<
464 typename mpl::deref< iter_1 > ::type > ::type
465 , typename mpl::deref< iter_2 > ::type
466 , typename mpl::deref< iter_3 > ::type
467 , typename mpl::deref< iter_4 > ::type
468 , typename mpl::deref< iter_5 > ::type
469 , typename mpl::deref< iter_6 > ::type
470 , typename mpl::deref< iter_7 > ::type
471 , typename mpl::deref< iter_8 > ::type
472 , typename mpl::deref< iter_9 > ::type
473 , typename mpl::deref< iter_10 > ::type
474 , typename mpl::deref< iter_11 > ::type
475 , typename mpl::deref< iter_12 > ::type
476 , typename mpl::deref< iter_13 > ::type
477 , typename mpl::deref< iter_14 > ::type
478 , typename mpl::deref< iter_15 > ::type
479 , typename mpl::deref< iter_16 > ::type
480 , typename mpl::deref< iter_17 > ::type
481 , typename mpl::deref< iter_18 > ::type
482 , typename mpl::deref< iter_19 > ::type
483 , typename mpl::deref< iter_20 > ::type
484 , typename mpl::deref< iter_21 > ::type
485 , typename mpl::deref< iter_22 > ::type
486 , typename mpl::deref< iter_23 > ::type
487 , typename mpl::deref< iter_24 > ::type
488 , typename mpl::deref< iter_25 > ::type
489 , typename mpl::deref< iter_26 > ::type
490 , typename mpl::deref< iter_27 > ::type
491 > ::type type;
492 };
493 };
494 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 >
495 struct BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,28)
496 {
497 typedef BOOST_FT_syntax(BOOST_FT_cc,type BOOST_PP_EMPTY) (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 ;
498 };
499 template< >
500 struct synthesize_impl_o< BOOST_FT_flags, BOOST_FT_cc_id, 29 >
501 {
502 template<typename S> struct synthesize_impl_i
503 {
504 private:
505 typedef typename mpl::begin<S> ::type iter_0;
506 typedef typename mpl::next< iter_0 > ::type iter_1;
507 typedef typename mpl::next< iter_1 > ::type iter_2;
508 typedef typename mpl::next< iter_2 > ::type iter_3;
509 typedef typename mpl::next< iter_3 > ::type iter_4;
510 typedef typename mpl::next< iter_4 > ::type iter_5;
511 typedef typename mpl::next< iter_5 > ::type iter_6;
512 typedef typename mpl::next< iter_6 > ::type iter_7;
513 typedef typename mpl::next< iter_7 > ::type iter_8;
514 typedef typename mpl::next< iter_8 > ::type iter_9;
515 typedef typename mpl::next< iter_9 > ::type iter_10;
516 typedef typename mpl::next< iter_10 > ::type iter_11;
517 typedef typename mpl::next< iter_11 > ::type iter_12;
518 typedef typename mpl::next< iter_12 > ::type iter_13;
519 typedef typename mpl::next< iter_13 > ::type iter_14;
520 typedef typename mpl::next< iter_14 > ::type iter_15;
521 typedef typename mpl::next< iter_15 > ::type iter_16;
522 typedef typename mpl::next< iter_16 > ::type iter_17;
523 typedef typename mpl::next< iter_17 > ::type iter_18;
524 typedef typename mpl::next< iter_18 > ::type iter_19;
525 typedef typename mpl::next< iter_19 > ::type iter_20;
526 typedef typename mpl::next< iter_20 > ::type iter_21;
527 typedef typename mpl::next< iter_21 > ::type iter_22;
528 typedef typename mpl::next< iter_22 > ::type iter_23;
529 typedef typename mpl::next< iter_23 > ::type iter_24;
530 typedef typename mpl::next< iter_24 > ::type iter_25;
531 typedef typename mpl::next< iter_25 > ::type iter_26;
532 typedef typename mpl::next< iter_26 > ::type iter_27;
533 typedef typename mpl::next< iter_27 > ::type iter_28;
534 public:
535 typedef typename detail::BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,28)
536 < typename mpl::deref< iter_0 > ::type
537 , typename detail::cv_traits<
538 typename mpl::deref< iter_1 > ::type > ::type
539 , typename mpl::deref< iter_2 > ::type
540 , typename mpl::deref< iter_3 > ::type
541 , typename mpl::deref< iter_4 > ::type
542 , typename mpl::deref< iter_5 > ::type
543 , typename mpl::deref< iter_6 > ::type
544 , typename mpl::deref< iter_7 > ::type
545 , typename mpl::deref< iter_8 > ::type
546 , typename mpl::deref< iter_9 > ::type
547 , typename mpl::deref< iter_10 > ::type
548 , typename mpl::deref< iter_11 > ::type
549 , typename mpl::deref< iter_12 > ::type
550 , typename mpl::deref< iter_13 > ::type
551 , typename mpl::deref< iter_14 > ::type
552 , typename mpl::deref< iter_15 > ::type
553 , typename mpl::deref< iter_16 > ::type
554 , typename mpl::deref< iter_17 > ::type
555 , typename mpl::deref< iter_18 > ::type
556 , typename mpl::deref< iter_19 > ::type
557 , typename mpl::deref< iter_20 > ::type
558 , typename mpl::deref< iter_21 > ::type
559 , typename mpl::deref< iter_22 > ::type
560 , typename mpl::deref< iter_23 > ::type
561 , typename mpl::deref< iter_24 > ::type
562 , typename mpl::deref< iter_25 > ::type
563 , typename mpl::deref< iter_26 > ::type
564 , typename mpl::deref< iter_27 > ::type
565 , typename mpl::deref< iter_28 > ::type
566 > ::type type;
567 };
568 };
569 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 >
570 struct BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,29)
571 {
572 typedef BOOST_FT_syntax(BOOST_FT_cc,type BOOST_PP_EMPTY) (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 ;
573 };
574 template< >
575 struct synthesize_impl_o< BOOST_FT_flags, BOOST_FT_cc_id, 30 >
576 {
577 template<typename S> struct synthesize_impl_i
578 {
579 private:
580 typedef typename mpl::begin<S> ::type iter_0;
581 typedef typename mpl::next< iter_0 > ::type iter_1;
582 typedef typename mpl::next< iter_1 > ::type iter_2;
583 typedef typename mpl::next< iter_2 > ::type iter_3;
584 typedef typename mpl::next< iter_3 > ::type iter_4;
585 typedef typename mpl::next< iter_4 > ::type iter_5;
586 typedef typename mpl::next< iter_5 > ::type iter_6;
587 typedef typename mpl::next< iter_6 > ::type iter_7;
588 typedef typename mpl::next< iter_7 > ::type iter_8;
589 typedef typename mpl::next< iter_8 > ::type iter_9;
590 typedef typename mpl::next< iter_9 > ::type iter_10;
591 typedef typename mpl::next< iter_10 > ::type iter_11;
592 typedef typename mpl::next< iter_11 > ::type iter_12;
593 typedef typename mpl::next< iter_12 > ::type iter_13;
594 typedef typename mpl::next< iter_13 > ::type iter_14;
595 typedef typename mpl::next< iter_14 > ::type iter_15;
596 typedef typename mpl::next< iter_15 > ::type iter_16;
597 typedef typename mpl::next< iter_16 > ::type iter_17;
598 typedef typename mpl::next< iter_17 > ::type iter_18;
599 typedef typename mpl::next< iter_18 > ::type iter_19;
600 typedef typename mpl::next< iter_19 > ::type iter_20;
601 typedef typename mpl::next< iter_20 > ::type iter_21;
602 typedef typename mpl::next< iter_21 > ::type iter_22;
603 typedef typename mpl::next< iter_22 > ::type iter_23;
604 typedef typename mpl::next< iter_23 > ::type iter_24;
605 typedef typename mpl::next< iter_24 > ::type iter_25;
606 typedef typename mpl::next< iter_25 > ::type iter_26;
607 typedef typename mpl::next< iter_26 > ::type iter_27;
608 typedef typename mpl::next< iter_27 > ::type iter_28;
609 typedef typename mpl::next< iter_28 > ::type iter_29;
610 public:
611 typedef typename detail::BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,29)
612 < typename mpl::deref< iter_0 > ::type
613 , typename detail::cv_traits<
614 typename mpl::deref< iter_1 > ::type > ::type
615 , typename mpl::deref< iter_2 > ::type
616 , typename mpl::deref< iter_3 > ::type
617 , typename mpl::deref< iter_4 > ::type
618 , typename mpl::deref< iter_5 > ::type
619 , typename mpl::deref< iter_6 > ::type
620 , typename mpl::deref< iter_7 > ::type
621 , typename mpl::deref< iter_8 > ::type
622 , typename mpl::deref< iter_9 > ::type
623 , typename mpl::deref< iter_10 > ::type
624 , typename mpl::deref< iter_11 > ::type
625 , typename mpl::deref< iter_12 > ::type
626 , typename mpl::deref< iter_13 > ::type
627 , typename mpl::deref< iter_14 > ::type
628 , typename mpl::deref< iter_15 > ::type
629 , typename mpl::deref< iter_16 > ::type
630 , typename mpl::deref< iter_17 > ::type
631 , typename mpl::deref< iter_18 > ::type
632 , typename mpl::deref< iter_19 > ::type
633 , typename mpl::deref< iter_20 > ::type
634 , typename mpl::deref< iter_21 > ::type
635 , typename mpl::deref< iter_22 > ::type
636 , typename mpl::deref< iter_23 > ::type
637 , typename mpl::deref< iter_24 > ::type
638 , typename mpl::deref< iter_25 > ::type
639 , typename mpl::deref< iter_26 > ::type
640 , typename mpl::deref< iter_27 > ::type
641 , typename mpl::deref< iter_28 > ::type
642 , typename mpl::deref< iter_29 > ::type
643 > ::type type;
644 };
645 };
646 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 >
647 struct BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,30)
648 {
649 typedef BOOST_FT_syntax(BOOST_FT_cc,type BOOST_PP_EMPTY) (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 ;
650 };
651 template< >
652 struct synthesize_impl_o< BOOST_FT_flags, BOOST_FT_cc_id, 31 >
653 {
654 template<typename S> struct synthesize_impl_i
655 {
656 private:
657 typedef typename mpl::begin<S> ::type iter_0;
658 typedef typename mpl::next< iter_0 > ::type iter_1;
659 typedef typename mpl::next< iter_1 > ::type iter_2;
660 typedef typename mpl::next< iter_2 > ::type iter_3;
661 typedef typename mpl::next< iter_3 > ::type iter_4;
662 typedef typename mpl::next< iter_4 > ::type iter_5;
663 typedef typename mpl::next< iter_5 > ::type iter_6;
664 typedef typename mpl::next< iter_6 > ::type iter_7;
665 typedef typename mpl::next< iter_7 > ::type iter_8;
666 typedef typename mpl::next< iter_8 > ::type iter_9;
667 typedef typename mpl::next< iter_9 > ::type iter_10;
668 typedef typename mpl::next< iter_10 > ::type iter_11;
669 typedef typename mpl::next< iter_11 > ::type iter_12;
670 typedef typename mpl::next< iter_12 > ::type iter_13;
671 typedef typename mpl::next< iter_13 > ::type iter_14;
672 typedef typename mpl::next< iter_14 > ::type iter_15;
673 typedef typename mpl::next< iter_15 > ::type iter_16;
674 typedef typename mpl::next< iter_16 > ::type iter_17;
675 typedef typename mpl::next< iter_17 > ::type iter_18;
676 typedef typename mpl::next< iter_18 > ::type iter_19;
677 typedef typename mpl::next< iter_19 > ::type iter_20;
678 typedef typename mpl::next< iter_20 > ::type iter_21;
679 typedef typename mpl::next< iter_21 > ::type iter_22;
680 typedef typename mpl::next< iter_22 > ::type iter_23;
681 typedef typename mpl::next< iter_23 > ::type iter_24;
682 typedef typename mpl::next< iter_24 > ::type iter_25;
683 typedef typename mpl::next< iter_25 > ::type iter_26;
684 typedef typename mpl::next< iter_26 > ::type iter_27;
685 typedef typename mpl::next< iter_27 > ::type iter_28;
686 typedef typename mpl::next< iter_28 > ::type iter_29;
687 typedef typename mpl::next< iter_29 > ::type iter_30;
688 public:
689 typedef typename detail::BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,30)
690 < typename mpl::deref< iter_0 > ::type
691 , typename detail::cv_traits<
692 typename mpl::deref< iter_1 > ::type > ::type
693 , typename mpl::deref< iter_2 > ::type
694 , typename mpl::deref< iter_3 > ::type
695 , typename mpl::deref< iter_4 > ::type
696 , typename mpl::deref< iter_5 > ::type
697 , typename mpl::deref< iter_6 > ::type
698 , typename mpl::deref< iter_7 > ::type
699 , typename mpl::deref< iter_8 > ::type
700 , typename mpl::deref< iter_9 > ::type
701 , typename mpl::deref< iter_10 > ::type
702 , typename mpl::deref< iter_11 > ::type
703 , typename mpl::deref< iter_12 > ::type
704 , typename mpl::deref< iter_13 > ::type
705 , typename mpl::deref< iter_14 > ::type
706 , typename mpl::deref< iter_15 > ::type
707 , typename mpl::deref< iter_16 > ::type
708 , typename mpl::deref< iter_17 > ::type
709 , typename mpl::deref< iter_18 > ::type
710 , typename mpl::deref< iter_19 > ::type
711 , typename mpl::deref< iter_20 > ::type
712 , typename mpl::deref< iter_21 > ::type
713 , typename mpl::deref< iter_22 > ::type
714 , typename mpl::deref< iter_23 > ::type
715 , typename mpl::deref< iter_24 > ::type
716 , typename mpl::deref< iter_25 > ::type
717 , typename mpl::deref< iter_26 > ::type
718 , typename mpl::deref< iter_27 > ::type
719 , typename mpl::deref< iter_28 > ::type
720 , typename mpl::deref< iter_29 > ::type
721 , typename mpl::deref< iter_30 > ::type
722 > ::type type;
723 };
724 };
725 # undef BOOST_FT_make_type
726 # undef BOOST_FT_make_type_impl
727