]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/boost/mpl/aux_/preprocessed/bcc/arg.hpp
update sources to v12.2.3
[ceph.git] / ceph / src / boost / boost / mpl / aux_ / preprocessed / bcc / arg.hpp
1
2 // Copyright Peter Dimov 2001-2002
3 // Copyright Aleksey Gurtovoy 2001-2004
4 //
5 // Distributed under the Boost Software License, Version 1.0.
6 // (See accompanying file LICENSE_1_0.txt or copy at
7 // http://www.boost.org/LICENSE_1_0.txt)
8 //
9
10 // *Preprocessed* version of the main "arg.hpp" header
11 // -- DO NOT modify by hand!
12
13 BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_OPEN
14 template<> struct arg< -1 >
15 {
16 BOOST_STATIC_CONSTANT(int, value = -1);
17 BOOST_MPL_AUX_ARG_TYPEDEF(na, tag)
18 BOOST_MPL_AUX_ARG_TYPEDEF(na, type)
19
20 template<
21 typename U1, typename U2, typename U3, typename U4, typename U5
22 >
23 struct apply
24 {
25 typedef U1 type;
26 BOOST_MPL_AUX_ASSERT_NOT_NA(type);
27 };
28 };
29
30 template<> struct arg<1>
31 {
32 BOOST_STATIC_CONSTANT(int, value = 1);
33 typedef arg<2> next;
34 BOOST_MPL_AUX_ARG_TYPEDEF(na, tag)
35 BOOST_MPL_AUX_ARG_TYPEDEF(na, type)
36
37 template<
38 typename U1, typename U2, typename U3, typename U4, typename U5
39 >
40 struct apply
41 {
42 typedef U1 type;
43 BOOST_MPL_AUX_ASSERT_NOT_NA(type);
44 };
45 };
46
47 template<> struct arg<2>
48 {
49 BOOST_STATIC_CONSTANT(int, value = 2);
50 typedef arg<3> next;
51 BOOST_MPL_AUX_ARG_TYPEDEF(na, tag)
52 BOOST_MPL_AUX_ARG_TYPEDEF(na, type)
53
54 template<
55 typename U1, typename U2, typename U3, typename U4, typename U5
56 >
57 struct apply
58 {
59 typedef U2 type;
60 BOOST_MPL_AUX_ASSERT_NOT_NA(type);
61 };
62 };
63
64 template<> struct arg<3>
65 {
66 BOOST_STATIC_CONSTANT(int, value = 3);
67 typedef arg<4> next;
68 BOOST_MPL_AUX_ARG_TYPEDEF(na, tag)
69 BOOST_MPL_AUX_ARG_TYPEDEF(na, type)
70
71 template<
72 typename U1, typename U2, typename U3, typename U4, typename U5
73 >
74 struct apply
75 {
76 typedef U3 type;
77 BOOST_MPL_AUX_ASSERT_NOT_NA(type);
78 };
79 };
80
81 template<> struct arg<4>
82 {
83 BOOST_STATIC_CONSTANT(int, value = 4);
84 typedef arg<5> next;
85 BOOST_MPL_AUX_ARG_TYPEDEF(na, tag)
86 BOOST_MPL_AUX_ARG_TYPEDEF(na, type)
87
88 template<
89 typename U1, typename U2, typename U3, typename U4, typename U5
90 >
91 struct apply
92 {
93 typedef U4 type;
94 BOOST_MPL_AUX_ASSERT_NOT_NA(type);
95 };
96 };
97
98 template<> struct arg<5>
99 {
100 BOOST_STATIC_CONSTANT(int, value = 5);
101 typedef arg<6> next;
102 BOOST_MPL_AUX_ARG_TYPEDEF(na, tag)
103 BOOST_MPL_AUX_ARG_TYPEDEF(na, type)
104
105 template<
106 typename U1, typename U2, typename U3, typename U4, typename U5
107 >
108 struct apply
109 {
110 typedef U5 type;
111 BOOST_MPL_AUX_ASSERT_NOT_NA(type);
112 };
113 };
114
115 BOOST_MPL_AUX_NONTYPE_ARITY_SPEC(1,int, arg)
116
117 BOOST_MPL_AUX_ADL_BARRIER_NAMESPACE_CLOSE