]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/mpl/include/boost/mpl/aux_/preprocessed/msvc70/apply_wrap.hpp
add subtree-ish sources for 12.0.3
[ceph.git] / ceph / src / boost / libs / mpl / include / boost / mpl / aux_ / preprocessed / msvc70 / apply_wrap.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_wrap.hpp" header
10 // -- DO NOT modify by hand!
11
12 namespace boost { namespace mpl {
13
14 template<
15 typename F
16
17 , typename has_apply_ = typename aux::has_apply<F>::type
18
19 >
20 struct apply_wrap0
21
22 {
23 typedef typename F::template apply<
24
25 >::type type;
26
27 };
28
29 /// workaround for ETI bug
30 template<>
31 struct apply_wrap0<int>
32 {
33 typedef int type;
34 };
35
36 template<
37 typename F, typename T1
38
39 >
40 struct apply_wrap1
41
42 {
43 typedef typename F::template apply<
44 T1
45 >::type type;
46
47 };
48
49 /// workaround for ETI bug
50 template<>
51 struct apply_wrap1< int,int >
52 {
53 typedef int type;
54 };
55
56 template<
57 typename F, typename T1, typename T2
58
59 >
60 struct apply_wrap2
61
62 {
63 typedef typename F::template apply<
64 T1, T2
65 >::type type;
66
67 };
68
69 /// workaround for ETI bug
70 template<>
71 struct apply_wrap2< int,int,int >
72 {
73 typedef int type;
74 };
75
76 template<
77 typename F, typename T1, typename T2, typename T3
78
79 >
80 struct apply_wrap3
81
82 {
83 typedef typename F::template apply<
84 T1, T2, T3
85 >::type type;
86
87 };
88
89 /// workaround for ETI bug
90 template<>
91 struct apply_wrap3< int,int,int,int >
92 {
93 typedef int type;
94 };
95
96 template<
97 typename F, typename T1, typename T2, typename T3, typename T4
98
99 >
100 struct apply_wrap4
101
102 {
103 typedef typename F::template apply<
104 T1, T2, T3, T4
105 >::type type;
106
107 };
108
109 /// workaround for ETI bug
110 template<>
111 struct apply_wrap4< int,int,int,int,int >
112 {
113 typedef int type;
114 };
115
116 template<
117 typename F, typename T1, typename T2, typename T3, typename T4
118 , typename T5
119
120 >
121 struct apply_wrap5
122
123 {
124 typedef typename F::template apply<
125 T1, T2, T3, T4, T5
126 >::type type;
127
128 };
129
130 /// workaround for ETI bug
131 template<>
132 struct apply_wrap5< int,int,int,int,int,int >
133 {
134 typedef int type;
135 };
136
137 }}
138