]> git.sesse.net Git - casparcg/blob - dependencies/boost/boost/mpl/map/aux_/preprocessed/plain/map10.hpp
Manually merged pull request #222
[casparcg] / dependencies / boost / boost / mpl / map / aux_ / preprocessed / plain / map10.hpp
1
2 // Copyright Aleksey Gurtovoy 2000-2004
3 // Copyright David Abrahams 2003-2004
4 //
5 // Distributed under the Boost Software License, Version 1.0. 
6 // (See accompanying file LICENSE_1_0.txt or copy at 
7 // http://www.boost.org/LICENSE_1_0.txt)
8 //
9
10 // Preprocessed version of "boost/mpl/map/map10.hpp" header
11 // -- DO NOT modify by hand!
12
13 namespace boost { namespace mpl {
14
15 template< typename Map>
16 struct m_at< Map,0 >
17 {
18     typedef typename Map::item0 type;
19 };
20
21 template< typename Key, typename T, typename Base >
22 struct m_item< 1,Key,T,Base >
23     : m_item_< Key,T,Base >
24 {
25     typedef pair< Key,T > item0;
26 };
27
28 template<
29       typename P0
30     >
31 struct map1
32     : m_item<
33           1
34         , typename P0::first
35         , typename P0::second
36         , map0<  >
37         >
38 {
39     typedef map1 type;
40 };
41
42 template< typename Map>
43 struct m_at< Map,1 >
44 {
45     typedef typename Map::item1 type;
46 };
47
48 template< typename Key, typename T, typename Base >
49 struct m_item< 2,Key,T,Base >
50     : m_item_< Key,T,Base >
51 {
52     typedef pair< Key,T > item1;
53 };
54
55 template<
56       typename P0, typename P1
57     >
58 struct map2
59     : m_item<
60           2
61         , typename P1::first
62         , typename P1::second
63         , map1<P0>
64         >
65 {
66     typedef map2 type;
67 };
68
69 template< typename Map>
70 struct m_at< Map,2 >
71 {
72     typedef typename Map::item2 type;
73 };
74
75 template< typename Key, typename T, typename Base >
76 struct m_item< 3,Key,T,Base >
77     : m_item_< Key,T,Base >
78 {
79     typedef pair< Key,T > item2;
80 };
81
82 template<
83       typename P0, typename P1, typename P2
84     >
85 struct map3
86     : m_item<
87           3
88         , typename P2::first
89         , typename P2::second
90         , map2< P0,P1 >
91         >
92 {
93     typedef map3 type;
94 };
95
96 template< typename Map>
97 struct m_at< Map,3 >
98 {
99     typedef typename Map::item3 type;
100 };
101
102 template< typename Key, typename T, typename Base >
103 struct m_item< 4,Key,T,Base >
104     : m_item_< Key,T,Base >
105 {
106     typedef pair< Key,T > item3;
107 };
108
109 template<
110       typename P0, typename P1, typename P2, typename P3
111     >
112 struct map4
113     : m_item<
114           4
115         , typename P3::first
116         , typename P3::second
117         , map3< P0,P1,P2 >
118         >
119 {
120     typedef map4 type;
121 };
122
123 template< typename Map>
124 struct m_at< Map,4 >
125 {
126     typedef typename Map::item4 type;
127 };
128
129 template< typename Key, typename T, typename Base >
130 struct m_item< 5,Key,T,Base >
131     : m_item_< Key,T,Base >
132 {
133     typedef pair< Key,T > item4;
134 };
135
136 template<
137       typename P0, typename P1, typename P2, typename P3, typename P4
138     >
139 struct map5
140     : m_item<
141           5
142         , typename P4::first
143         , typename P4::second
144         , map4< P0,P1,P2,P3 >
145         >
146 {
147     typedef map5 type;
148 };
149
150 template< typename Map>
151 struct m_at< Map,5 >
152 {
153     typedef typename Map::item5 type;
154 };
155
156 template< typename Key, typename T, typename Base >
157 struct m_item< 6,Key,T,Base >
158     : m_item_< Key,T,Base >
159 {
160     typedef pair< Key,T > item5;
161 };
162
163 template<
164       typename P0, typename P1, typename P2, typename P3, typename P4
165     , typename P5
166     >
167 struct map6
168     : m_item<
169           6
170         , typename P5::first
171         , typename P5::second
172         , map5< P0,P1,P2,P3,P4 >
173         >
174 {
175     typedef map6 type;
176 };
177
178 template< typename Map>
179 struct m_at< Map,6 >
180 {
181     typedef typename Map::item6 type;
182 };
183
184 template< typename Key, typename T, typename Base >
185 struct m_item< 7,Key,T,Base >
186     : m_item_< Key,T,Base >
187 {
188     typedef pair< Key,T > item6;
189 };
190
191 template<
192       typename P0, typename P1, typename P2, typename P3, typename P4
193     , typename P5, typename P6
194     >
195 struct map7
196     : m_item<
197           7
198         , typename P6::first
199         , typename P6::second
200         , map6< P0,P1,P2,P3,P4,P5 >
201         >
202 {
203     typedef map7 type;
204 };
205
206 template< typename Map>
207 struct m_at< Map,7 >
208 {
209     typedef typename Map::item7 type;
210 };
211
212 template< typename Key, typename T, typename Base >
213 struct m_item< 8,Key,T,Base >
214     : m_item_< Key,T,Base >
215 {
216     typedef pair< Key,T > item7;
217 };
218
219 template<
220       typename P0, typename P1, typename P2, typename P3, typename P4
221     , typename P5, typename P6, typename P7
222     >
223 struct map8
224     : m_item<
225           8
226         , typename P7::first
227         , typename P7::second
228         , map7< P0,P1,P2,P3,P4,P5,P6 >
229         >
230 {
231     typedef map8 type;
232 };
233
234 template< typename Map>
235 struct m_at< Map,8 >
236 {
237     typedef typename Map::item8 type;
238 };
239
240 template< typename Key, typename T, typename Base >
241 struct m_item< 9,Key,T,Base >
242     : m_item_< Key,T,Base >
243 {
244     typedef pair< Key,T > item8;
245 };
246
247 template<
248       typename P0, typename P1, typename P2, typename P3, typename P4
249     , typename P5, typename P6, typename P7, typename P8
250     >
251 struct map9
252     : m_item<
253           9
254         , typename P8::first
255         , typename P8::second
256         , map8< P0,P1,P2,P3,P4,P5,P6,P7 >
257         >
258 {
259     typedef map9 type;
260 };
261
262 template< typename Map>
263 struct m_at< Map,9 >
264 {
265     typedef typename Map::item9 type;
266 };
267
268 template< typename Key, typename T, typename Base >
269 struct m_item< 10,Key,T,Base >
270     : m_item_< Key,T,Base >
271 {
272     typedef pair< Key,T > item9;
273 };
274
275 template<
276       typename P0, typename P1, typename P2, typename P3, typename P4
277     , typename P5, typename P6, typename P7, typename P8, typename P9
278     >
279 struct map10
280     : m_item<
281           10
282         , typename P9::first
283         , typename P9::second
284         , map9< P0,P1,P2,P3,P4,P5,P6,P7,P8 >
285         >
286 {
287     typedef map10 type;
288 };
289
290 }}