2 // Copyright Aleksey Gurtovoy 2000-2004
4 // Distributed under the Boost Software License, Version 1.0.
5 // (See accompanying file LICENSE_1_0.txt or copy at
6 // http://www.boost.org/LICENSE_1_0.txt)
9 // Preprocessed version of "boost/mpl/set_c.hpp" header
10 // -- DO NOT modify by hand!
12 namespace boost { namespace mpl {
23 struct set_c_chooser<0>
26 typename T, long C0, long C1, long C2, long C3, long C4, long C5
27 , long C6, long C7, long C8, long C9, long C10, long C11, long C12
28 , long C13, long C14, long C15, long C16, long C17, long C18, long C19
32 typedef typename set0_c<
44 struct set_c_chooser<1>
47 typename T, long C0, long C1, long C2, long C3, long C4, long C5
48 , long C6, long C7, long C8, long C9, long C10, long C11, long C12
49 , long C13, long C14, long C15, long C16, long C17, long C18, long C19
53 typedef typename set1_c<
65 struct set_c_chooser<2>
68 typename T, long C0, long C1, long C2, long C3, long C4, long C5
69 , long C6, long C7, long C8, long C9, long C10, long C11, long C12
70 , long C13, long C14, long C15, long C16, long C17, long C18, long C19
74 typedef typename set2_c<
86 struct set_c_chooser<3>
89 typename T, long C0, long C1, long C2, long C3, long C4, long C5
90 , long C6, long C7, long C8, long C9, long C10, long C11, long C12
91 , long C13, long C14, long C15, long C16, long C17, long C18, long C19
95 typedef typename set3_c<
107 struct set_c_chooser<4>
110 typename T, long C0, long C1, long C2, long C3, long C4, long C5
111 , long C6, long C7, long C8, long C9, long C10, long C11, long C12
112 , long C13, long C14, long C15, long C16, long C17, long C18, long C19
116 typedef typename set4_c<
128 struct set_c_chooser<5>
131 typename T, long C0, long C1, long C2, long C3, long C4, long C5
132 , long C6, long C7, long C8, long C9, long C10, long C11, long C12
133 , long C13, long C14, long C15, long C16, long C17, long C18, long C19
137 typedef typename set5_c<
138 T, C0, C1, C2, C3, C4
149 struct set_c_chooser<6>
152 typename T, long C0, long C1, long C2, long C3, long C4, long C5
153 , long C6, long C7, long C8, long C9, long C10, long C11, long C12
154 , long C13, long C14, long C15, long C16, long C17, long C18, long C19
158 typedef typename set6_c<
159 T, C0, C1, C2, C3, C4, C5
170 struct set_c_chooser<7>
173 typename T, long C0, long C1, long C2, long C3, long C4, long C5
174 , long C6, long C7, long C8, long C9, long C10, long C11, long C12
175 , long C13, long C14, long C15, long C16, long C17, long C18, long C19
179 typedef typename set7_c<
180 T, C0, C1, C2, C3, C4, C5, C6
191 struct set_c_chooser<8>
194 typename T, long C0, long C1, long C2, long C3, long C4, long C5
195 , long C6, long C7, long C8, long C9, long C10, long C11, long C12
196 , long C13, long C14, long C15, long C16, long C17, long C18, long C19
200 typedef typename set8_c<
201 T, C0, C1, C2, C3, C4, C5, C6, C7
212 struct set_c_chooser<9>
215 typename T, long C0, long C1, long C2, long C3, long C4, long C5
216 , long C6, long C7, long C8, long C9, long C10, long C11, long C12
217 , long C13, long C14, long C15, long C16, long C17, long C18, long C19
221 typedef typename set9_c<
222 T, C0, C1, C2, C3, C4, C5, C6, C7, C8
233 struct set_c_chooser<10>
236 typename T, long C0, long C1, long C2, long C3, long C4, long C5
237 , long C6, long C7, long C8, long C9, long C10, long C11, long C12
238 , long C13, long C14, long C15, long C16, long C17, long C18, long C19
242 typedef typename set10_c<
243 T, C0, C1, C2, C3, C4, C5, C6, C7, C8, C9
254 struct set_c_chooser<11>
257 typename T, long C0, long C1, long C2, long C3, long C4, long C5
258 , long C6, long C7, long C8, long C9, long C10, long C11, long C12
259 , long C13, long C14, long C15, long C16, long C17, long C18, long C19
263 typedef typename set11_c<
264 T, C0, C1, C2, C3, C4, C5, C6, C7, C8, C9, C10
275 struct set_c_chooser<12>
278 typename T, long C0, long C1, long C2, long C3, long C4, long C5
279 , long C6, long C7, long C8, long C9, long C10, long C11, long C12
280 , long C13, long C14, long C15, long C16, long C17, long C18, long C19
284 typedef typename set12_c<
285 T, C0, C1, C2, C3, C4, C5, C6, C7, C8, C9, C10, C11
296 struct set_c_chooser<13>
299 typename T, long C0, long C1, long C2, long C3, long C4, long C5
300 , long C6, long C7, long C8, long C9, long C10, long C11, long C12
301 , long C13, long C14, long C15, long C16, long C17, long C18, long C19
305 typedef typename set13_c<
306 T, C0, C1, C2, C3, C4, C5, C6, C7, C8, C9, C10, C11, C12
317 struct set_c_chooser<14>
320 typename T, long C0, long C1, long C2, long C3, long C4, long C5
321 , long C6, long C7, long C8, long C9, long C10, long C11, long C12
322 , long C13, long C14, long C15, long C16, long C17, long C18, long C19
326 typedef typename set14_c<
327 T, C0, C1, C2, C3, C4, C5, C6, C7, C8, C9, C10, C11, C12, C13
338 struct set_c_chooser<15>
341 typename T, long C0, long C1, long C2, long C3, long C4, long C5
342 , long C6, long C7, long C8, long C9, long C10, long C11, long C12
343 , long C13, long C14, long C15, long C16, long C17, long C18, long C19
347 typedef typename set15_c<
348 T, C0, C1, C2, C3, C4, C5, C6, C7, C8, C9, C10, C11, C12, C13, C14
359 struct set_c_chooser<16>
362 typename T, long C0, long C1, long C2, long C3, long C4, long C5
363 , long C6, long C7, long C8, long C9, long C10, long C11, long C12
364 , long C13, long C14, long C15, long C16, long C17, long C18, long C19
368 typedef typename set16_c<
369 T, C0, C1, C2, C3, C4, C5, C6, C7, C8, C9, C10, C11, C12, C13, C14, C15
380 struct set_c_chooser<17>
383 typename T, long C0, long C1, long C2, long C3, long C4, long C5
384 , long C6, long C7, long C8, long C9, long C10, long C11, long C12
385 , long C13, long C14, long C15, long C16, long C17, long C18, long C19
389 typedef typename set17_c<
390 T, C0, C1, C2, C3, C4, C5, C6, C7, C8, C9, C10, C11, C12, C13, C14, C15, C16
401 struct set_c_chooser<18>
404 typename T, long C0, long C1, long C2, long C3, long C4, long C5
405 , long C6, long C7, long C8, long C9, long C10, long C11, long C12
406 , long C13, long C14, long C15, long C16, long C17, long C18, long C19
410 typedef typename set18_c<
411 T, C0, C1, C2, C3, C4, C5, C6, C7, C8, C9, C10, C11, C12, C13, C14, C15, C16, C17
422 struct set_c_chooser<19>
425 typename T, long C0, long C1, long C2, long C3, long C4, long C5
426 , long C6, long C7, long C8, long C9, long C10, long C11, long C12
427 , long C13, long C14, long C15, long C16, long C17, long C18, long C19
431 typedef typename set19_c<
432 T, C0, C1, C2, C3, C4, C5, C6, C7, C8, C9, C10, C11, C12, C13, C14, C15, C16, C17, C18
443 struct set_c_chooser<20>
446 typename T, long C0, long C1, long C2, long C3, long C4, long C5
447 , long C6, long C7, long C8, long C9, long C10, long C11, long C12
448 , long C13, long C14, long C15, long C16, long C17, long C18, long C19
452 typedef typename set20_c<
453 T, C0, C1, C2, C3, C4, C5, C6, C7, C8, C9, C10, C11, C12, C13, C14, C15, C16, C17, C18, C19
466 BOOST_STATIC_CONSTANT(bool, value = true);
470 struct is_set_c_arg<LONG_MAX>
472 BOOST_STATIC_CONSTANT(bool, value = false);
476 long C1, long C2, long C3, long C4, long C5, long C6, long C7, long C8
477 , long C9, long C10, long C11, long C12, long C13, long C14, long C15
478 , long C16, long C17, long C18, long C19, long C20
480 struct set_c_count_args
482 BOOST_STATIC_CONSTANT(int, value =
483 is_set_c_arg<C1>::value + is_set_c_arg<C2>::value
484 + is_set_c_arg<C3>::value + is_set_c_arg<C4>::value
485 + is_set_c_arg<C5>::value + is_set_c_arg<C6>::value
486 + is_set_c_arg<C7>::value + is_set_c_arg<C8>::value
487 + is_set_c_arg<C9>::value + is_set_c_arg<C10>::value
488 + is_set_c_arg<C11>::value + is_set_c_arg<C12>::value
489 + is_set_c_arg<C13>::value + is_set_c_arg<C14>::value
490 + is_set_c_arg<C15>::value + is_set_c_arg<C16>::value
491 + is_set_c_arg<C17>::value + is_set_c_arg<C18>::value
492 + is_set_c_arg<C19>::value + is_set_c_arg<C20>::value
498 typename T, long C0, long C1, long C2, long C3, long C4, long C5
499 , long C6, long C7, long C8, long C9, long C10, long C11, long C12
500 , long C13, long C14, long C15, long C16, long C17, long C18, long C19
504 typedef aux::set_c_count_args<
505 C0, C1, C2, C3, C4, C5, C6, C7, C8, C9, C10, C11, C12, C13, C14, C15, C16, C17, C18, C19
508 typedef typename aux::set_c_chooser< arg_num_::value >
509 ::template result_< T,C0,C1,C2,C3,C4,C5,C6,C7,C8,C9,C10,C11,C12,C13,C14,C15,C16,C17,C18,C19 >::type type;
515 typename T, long C0 = LONG_MAX, long C1 = LONG_MAX, long C2 = LONG_MAX
516 , long C3 = LONG_MAX, long C4 = LONG_MAX, long C5 = LONG_MAX
517 , long C6 = LONG_MAX, long C7 = LONG_MAX, long C8 = LONG_MAX
518 , long C9 = LONG_MAX, long C10 = LONG_MAX, long C11 = LONG_MAX
519 , long C12 = LONG_MAX, long C13 = LONG_MAX, long C14 = LONG_MAX
520 , long C15 = LONG_MAX, long C16 = LONG_MAX, long C17 = LONG_MAX
521 , long C18 = LONG_MAX, long C19 = LONG_MAX
525 T, C0, C1, C2, C3, C4, C5, C6, C7, C8, C9, C10, C11, C12, C13, C14, C15, C16, C17, C18, C19
528 typedef typename aux::set_c_impl<
529 T, C0, C1, C2, C3, C4, C5, C6, C7, C8, C9, C10, C11, C12, C13, C14, C15, C16, C17, C18, C19