2 // Copyright Peter Dimov 2001-2002
\r
3 // Copyright Aleksey Gurtovoy 2001-2004
\r
5 // Distributed under the Boost Software License, Version 1.0.
\r
6 // (See accompanying file LICENSE_1_0.txt or copy at
\r
7 // http://www.boost.org/LICENSE_1_0.txt)
\r
10 // *Preprocessed* version of the main "arg.hpp" header
\r
11 // -- DO NOT modify by hand!
\r
13 BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_OPEN
\r
14 template<> struct arg< -1 >
\r
16 BOOST_STATIC_CONSTANT(int, value = -1);
\r
17 BOOST_MPL_AUX_ARG_TYPEDEF(na, tag)
\r
18 BOOST_MPL_AUX_ARG_TYPEDEF(na, type)
\r
21 typename U1, typename U2, typename U3, typename U4, typename U5
\r
26 BOOST_MPL_AUX_ASSERT_NOT_NA(type);
\r
30 template<> struct arg<1>
\r
32 BOOST_STATIC_CONSTANT(int, value = 1);
\r
33 typedef arg<2> next;
\r
34 BOOST_MPL_AUX_ARG_TYPEDEF(na, tag)
\r
35 BOOST_MPL_AUX_ARG_TYPEDEF(na, type)
\r
38 typename U1, typename U2, typename U3, typename U4, typename U5
\r
43 BOOST_MPL_AUX_ASSERT_NOT_NA(type);
\r
47 template<> struct arg<2>
\r
49 BOOST_STATIC_CONSTANT(int, value = 2);
\r
50 typedef arg<3> next;
\r
51 BOOST_MPL_AUX_ARG_TYPEDEF(na, tag)
\r
52 BOOST_MPL_AUX_ARG_TYPEDEF(na, type)
\r
55 typename U1, typename U2, typename U3, typename U4, typename U5
\r
60 BOOST_MPL_AUX_ASSERT_NOT_NA(type);
\r
64 template<> struct arg<3>
\r
66 BOOST_STATIC_CONSTANT(int, value = 3);
\r
67 typedef arg<4> next;
\r
68 BOOST_MPL_AUX_ARG_TYPEDEF(na, tag)
\r
69 BOOST_MPL_AUX_ARG_TYPEDEF(na, type)
\r
72 typename U1, typename U2, typename U3, typename U4, typename U5
\r
77 BOOST_MPL_AUX_ASSERT_NOT_NA(type);
\r
81 template<> struct arg<4>
\r
83 BOOST_STATIC_CONSTANT(int, value = 4);
\r
84 typedef arg<5> next;
\r
85 BOOST_MPL_AUX_ARG_TYPEDEF(na, tag)
\r
86 BOOST_MPL_AUX_ARG_TYPEDEF(na, type)
\r
89 typename U1, typename U2, typename U3, typename U4, typename U5
\r
94 BOOST_MPL_AUX_ASSERT_NOT_NA(type);
\r
98 template<> struct arg<5>
\r
100 BOOST_STATIC_CONSTANT(int, value = 5);
\r
101 typedef arg<6> next;
\r
102 BOOST_MPL_AUX_ARG_TYPEDEF(na, tag)
\r
103 BOOST_MPL_AUX_ARG_TYPEDEF(na, type)
\r
106 typename U1, typename U2, typename U3, typename U4, typename U5
\r
111 BOOST_MPL_AUX_ASSERT_NOT_NA(type);
\r
115 BOOST_MPL_AUX_NONTYPE_ARITY_SPEC(1,int, arg)
\r
117 BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_CLOSE
\r