]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/mpl/include/boost/mpl/aux_/preprocessed/plain/apply.hpp
bump version to 12.2.2-pve1
[ceph.git] / ceph / src / boost / libs / mpl / include / boost / mpl / aux_ / preprocessed / plain / apply.hpp
1
2 // Copyright Aleksey Gurtovoy 2000-2004
3 //
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)
7 //
8
9 // Preprocessed version of "boost/mpl/apply.hpp" header
10 // -- DO NOT modify by hand!
11
12 namespace boost { namespace mpl {
13
14 template<
15 typename F
16 >
17 struct apply0
18
19 : apply_wrap0<
20 typename lambda<F>::type
21
22 >
23 {
24 };
25
26 template<
27 typename F
28 >
29 struct apply< F,na,na,na,na,na >
30 : apply0<F>
31 {
32 };
33
34 template<
35 typename F, typename T1
36 >
37 struct apply1
38
39 : apply_wrap1<
40 typename lambda<F>::type
41 , T1
42 >
43 {
44 };
45
46 template<
47 typename F, typename T1
48 >
49 struct apply< F,T1,na,na,na,na >
50 : apply1< F,T1 >
51 {
52 };
53
54 template<
55 typename F, typename T1, typename T2
56 >
57 struct apply2
58
59 : apply_wrap2<
60 typename lambda<F>::type
61 , T1, T2
62 >
63 {
64 };
65
66 template<
67 typename F, typename T1, typename T2
68 >
69 struct apply< F,T1,T2,na,na,na >
70 : apply2< F,T1,T2 >
71 {
72 };
73
74 template<
75 typename F, typename T1, typename T2, typename T3
76 >
77 struct apply3
78
79 : apply_wrap3<
80 typename lambda<F>::type
81 , T1, T2, T3
82 >
83 {
84 };
85
86 template<
87 typename F, typename T1, typename T2, typename T3
88 >
89 struct apply< F,T1,T2,T3,na,na >
90 : apply3< F,T1,T2,T3 >
91 {
92 };
93
94 template<
95 typename F, typename T1, typename T2, typename T3, typename T4
96 >
97 struct apply4
98
99 : apply_wrap4<
100 typename lambda<F>::type
101 , T1, T2, T3, T4
102 >
103 {
104 };
105
106 template<
107 typename F, typename T1, typename T2, typename T3, typename T4
108 >
109 struct apply< F,T1,T2,T3,T4,na >
110 : apply4< F,T1,T2,T3,T4 >
111 {
112 };
113
114 template<
115 typename F, typename T1, typename T2, typename T3, typename T4
116 , typename T5
117 >
118 struct apply5
119
120 : apply_wrap5<
121 typename lambda<F>::type
122 , T1, T2, T3, T4, T5
123 >
124 {
125 };
126
127 /// primary template (not a specialization!)
128
129 template<
130 typename F, typename T1, typename T2, typename T3, typename T4
131 , typename T5
132 >
133 struct apply
134 : apply5< F,T1,T2,T3,T4,T5 >
135 {
136 };
137
138 }}
139