Chris@16
|
1 ///////////////////////////////////////////////////////////////////////////////
|
Chris@16
|
2 // template_arity_helper.hpp
|
Chris@16
|
3 // Overloads of template_arity_helper, used by the template_arity\<\> class template
|
Chris@16
|
4 //
|
Chris@16
|
5 // Copyright 2008 Eric Niebler. Distributed under the Boost
|
Chris@16
|
6 // Software License, Version 1.0. (See accompanying file
|
Chris@16
|
7 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
Chris@16
|
8 template<
|
Chris@16
|
9 template<typename P0> class F
|
Chris@16
|
10 , typename T0
|
Chris@16
|
11 >
|
Chris@16
|
12 sized_type<2>::type
|
Chris@16
|
13 template_arity_helper(F<T0> **, mpl::int_<1> *);
|
Chris@16
|
14 template<
|
Chris@16
|
15 template<typename P0 , typename P1> class F
|
Chris@16
|
16 , typename T0 , typename T1
|
Chris@16
|
17 >
|
Chris@16
|
18 sized_type<3>::type
|
Chris@16
|
19 template_arity_helper(F<T0 , T1> **, mpl::int_<2> *);
|
Chris@16
|
20 template<
|
Chris@16
|
21 template<typename P0 , typename P1 , typename P2> class F
|
Chris@16
|
22 , typename T0 , typename T1 , typename T2
|
Chris@16
|
23 >
|
Chris@16
|
24 sized_type<4>::type
|
Chris@16
|
25 template_arity_helper(F<T0 , T1 , T2> **, mpl::int_<3> *);
|
Chris@16
|
26 template<
|
Chris@16
|
27 template<typename P0 , typename P1 , typename P2 , typename P3> class F
|
Chris@16
|
28 , typename T0 , typename T1 , typename T2 , typename T3
|
Chris@16
|
29 >
|
Chris@16
|
30 sized_type<5>::type
|
Chris@16
|
31 template_arity_helper(F<T0 , T1 , T2 , T3> **, mpl::int_<4> *);
|
Chris@16
|
32 template<
|
Chris@16
|
33 template<typename P0 , typename P1 , typename P2 , typename P3 , typename P4> class F
|
Chris@16
|
34 , typename T0 , typename T1 , typename T2 , typename T3 , typename T4
|
Chris@16
|
35 >
|
Chris@16
|
36 sized_type<6>::type
|
Chris@16
|
37 template_arity_helper(F<T0 , T1 , T2 , T3 , T4> **, mpl::int_<5> *);
|
Chris@16
|
38 template<
|
Chris@16
|
39 template<typename P0 , typename P1 , typename P2 , typename P3 , typename P4 , typename P5> class F
|
Chris@16
|
40 , typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5
|
Chris@16
|
41 >
|
Chris@16
|
42 sized_type<7>::type
|
Chris@16
|
43 template_arity_helper(F<T0 , T1 , T2 , T3 , T4 , T5> **, mpl::int_<6> *);
|
Chris@16
|
44 template<
|
Chris@16
|
45 template<typename P0 , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6> class F
|
Chris@16
|
46 , typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6
|
Chris@16
|
47 >
|
Chris@16
|
48 sized_type<8>::type
|
Chris@16
|
49 template_arity_helper(F<T0 , T1 , T2 , T3 , T4 , T5 , T6> **, mpl::int_<7> *);
|
Chris@16
|
50 template<
|
Chris@16
|
51 template<typename P0 , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7> class F
|
Chris@16
|
52 , typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7
|
Chris@16
|
53 >
|
Chris@16
|
54 sized_type<9>::type
|
Chris@16
|
55 template_arity_helper(F<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7> **, mpl::int_<8> *);
|
Chris@16
|
56 template<
|
Chris@16
|
57 template<typename P0 , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8> class F
|
Chris@16
|
58 , typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8
|
Chris@16
|
59 >
|
Chris@16
|
60 sized_type<10>::type
|
Chris@16
|
61 template_arity_helper(F<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8> **, mpl::int_<9> *);
|
Chris@16
|
62 template<
|
Chris@16
|
63 template<typename P0 , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 , typename P7 , typename P8 , typename P9> class F
|
Chris@16
|
64 , typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9
|
Chris@16
|
65 >
|
Chris@16
|
66 sized_type<11>::type
|
Chris@16
|
67 template_arity_helper(F<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9> **, mpl::int_<10> *);
|