]> AND Private Git Repository - canny.git/blob - stc/exp/ml_stc_linux_make_v1.0/include/boost/mpl/aux_/preprocessed/msvc70/apply.hpp
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
7cdd9d639734d678a26c79c677e75343c545f990
[canny.git] / stc / exp / ml_stc_linux_make_v1.0 / include / boost / mpl / aux_ / preprocessed / msvc70 / apply.hpp
1 \r
2 // Copyright Aleksey Gurtovoy 2000-2004\r
3 //\r
4 // Distributed under the Boost Software License, Version 1.0. \r
5 // (See accompanying file LICENSE_1_0.txt or copy at \r
6 // http://www.boost.org/LICENSE_1_0.txt)\r
7 //\r
8 \r
9 // Preprocessed version of "boost/mpl/apply.hpp" header\r
10 // -- DO NOT modify by hand!\r
11 \r
12 namespace boost { namespace mpl {\r
13 \r
14 template<\r
15       typename F\r
16     >\r
17 struct apply0\r
18 \r
19     : apply_wrap0<\r
20           typename lambda<F>::type\r
21        \r
22         >\r
23 {\r
24     BOOST_MPL_AUX_LAMBDA_SUPPORT(\r
25           1\r
26         , apply0\r
27         , (F )\r
28         )\r
29 };\r
30 \r
31 /// workaround for ETI bug\r
32 template<>\r
33 struct apply0<int>\r
34 {\r
35     typedef int type;\r
36 };\r
37 \r
38 template<\r
39       typename F, typename T1\r
40     >\r
41 struct apply1\r
42 \r
43     : apply_wrap1<\r
44           typename lambda<F>::type\r
45         , T1\r
46         >\r
47 {\r
48     BOOST_MPL_AUX_LAMBDA_SUPPORT(\r
49           2\r
50         , apply1\r
51         , (F, T1)\r
52         )\r
53 };\r
54 \r
55 /// workaround for ETI bug\r
56 template<>\r
57 struct apply1< int,int >\r
58 {\r
59     typedef int type;\r
60 };\r
61 \r
62 template<\r
63       typename F, typename T1, typename T2\r
64     >\r
65 struct apply2\r
66 \r
67     : apply_wrap2<\r
68           typename lambda<F>::type\r
69         , T1, T2\r
70         >\r
71 {\r
72     BOOST_MPL_AUX_LAMBDA_SUPPORT(\r
73           3\r
74         , apply2\r
75         , (F, T1, T2)\r
76         )\r
77 };\r
78 \r
79 /// workaround for ETI bug\r
80 template<>\r
81 struct apply2< int,int,int >\r
82 {\r
83     typedef int type;\r
84 };\r
85 \r
86 template<\r
87       typename F, typename T1, typename T2, typename T3\r
88     >\r
89 struct apply3\r
90 \r
91     : apply_wrap3<\r
92           typename lambda<F>::type\r
93         , T1, T2, T3\r
94         >\r
95 {\r
96     BOOST_MPL_AUX_LAMBDA_SUPPORT(\r
97           4\r
98         , apply3\r
99         , (F, T1, T2, T3)\r
100         )\r
101 };\r
102 \r
103 /// workaround for ETI bug\r
104 template<>\r
105 struct apply3< int,int,int,int >\r
106 {\r
107     typedef int type;\r
108 };\r
109 \r
110 template<\r
111       typename F, typename T1, typename T2, typename T3, typename T4\r
112     >\r
113 struct apply4\r
114 \r
115     : apply_wrap4<\r
116           typename lambda<F>::type\r
117         , T1, T2, T3, T4\r
118         >\r
119 {\r
120     BOOST_MPL_AUX_LAMBDA_SUPPORT(\r
121           5\r
122         , apply4\r
123         , (F, T1, T2, T3, T4)\r
124         )\r
125 };\r
126 \r
127 /// workaround for ETI bug\r
128 template<>\r
129 struct apply4< int,int,int,int,int >\r
130 {\r
131     typedef int type;\r
132 };\r
133 \r
134 template<\r
135       typename F, typename T1, typename T2, typename T3, typename T4\r
136     , typename T5\r
137     >\r
138 struct apply5\r
139 \r
140     : apply_wrap5<\r
141           typename lambda<F>::type\r
142         , T1, T2, T3, T4, T5\r
143         >\r
144 {\r
145     BOOST_MPL_AUX_LAMBDA_SUPPORT(\r
146           6\r
147         , apply5\r
148         , (F, T1, T2, T3, T4, T5)\r
149         )\r
150 };\r
151 \r
152 /// workaround for ETI bug\r
153 template<>\r
154 struct apply5< int,int,int,int,int,int >\r
155 {\r
156     typedef int type;\r
157 };\r
158 \r
159 }}\r
160 \r