]>
Commit | Line | Data |
---|---|---|
7c673cae FG |
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 |