source: NonGTP/Boost/boost/mpl/aux_/preprocessed/msvc60/apply.hpp @ 857

Revision 857, 2.8 KB checked in by igarcia, 19 years ago (diff)
Line 
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
12namespace boost { namespace mpl {
13
14template<
15      typename F
16    >
17struct apply0
18
19{
20    typedef typename apply_wrap0<
21          typename lambda<F>::type
22       
23        >::type type;
24
25    BOOST_MPL_AUX_LAMBDA_SUPPORT(
26          1
27        , apply0
28        , (F )
29        )
30};
31
32/// workaround for ETI bug
33template<>
34struct apply0<int>
35{
36    typedef int type;
37};
38
39template<
40      typename F, typename T1
41    >
42struct apply1
43
44{
45    typedef typename apply_wrap1<
46          typename lambda<F>::type
47        , T1
48        >::type type;
49
50    BOOST_MPL_AUX_LAMBDA_SUPPORT(
51          2
52        , apply1
53        , (F, T1)
54        )
55};
56
57/// workaround for ETI bug
58template<>
59struct apply1< int,int >
60{
61    typedef int type;
62};
63
64template<
65      typename F, typename T1, typename T2
66    >
67struct apply2
68
69{
70    typedef typename apply_wrap2<
71          typename lambda<F>::type
72        , T1, T2
73        >::type type;
74
75    BOOST_MPL_AUX_LAMBDA_SUPPORT(
76          3
77        , apply2
78        , (F, T1, T2)
79        )
80};
81
82/// workaround for ETI bug
83template<>
84struct apply2< int,int,int >
85{
86    typedef int type;
87};
88
89template<
90      typename F, typename T1, typename T2, typename T3
91    >
92struct apply3
93
94{
95    typedef typename apply_wrap3<
96          typename lambda<F>::type
97        , T1, T2, T3
98        >::type type;
99
100    BOOST_MPL_AUX_LAMBDA_SUPPORT(
101          4
102        , apply3
103        , (F, T1, T2, T3)
104        )
105};
106
107/// workaround for ETI bug
108template<>
109struct apply3< int,int,int,int >
110{
111    typedef int type;
112};
113
114template<
115      typename F, typename T1, typename T2, typename T3, typename T4
116    >
117struct apply4
118
119{
120    typedef typename apply_wrap4<
121          typename lambda<F>::type
122        , T1, T2, T3, T4
123        >::type type;
124
125    BOOST_MPL_AUX_LAMBDA_SUPPORT(
126          5
127        , apply4
128        , (F, T1, T2, T3, T4)
129        )
130};
131
132/// workaround for ETI bug
133template<>
134struct apply4< int,int,int,int,int >
135{
136    typedef int type;
137};
138
139template<
140      typename F, typename T1, typename T2, typename T3, typename T4
141    , typename T5
142    >
143struct apply5
144
145{
146    typedef typename apply_wrap5<
147          typename lambda<F>::type
148        , T1, T2, T3, T4, T5
149        >::type type;
150
151    BOOST_MPL_AUX_LAMBDA_SUPPORT(
152          6
153        , apply5
154        , (F, T1, T2, T3, T4, T5)
155        )
156};
157
158/// workaround for ETI bug
159template<>
160struct apply5< int,int,int,int,int,int >
161{
162    typedef int type;
163};
164
165}}
166
Note: See TracBrowser for help on using the repository browser.