More boost dependencies.
[dyninst.git] / external / boost / mpl / aux_ / preprocessed / bcc551 / deque.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/deque.hpp" header
10 // -- DO NOT modify by hand!
11
12 namespace boost { namespace mpl {
13
14 template<
15       typename T0 = na, typename T1 = na, typename T2 = na, typename T3 = na
16     , typename T4 = na, typename T5 = na, typename T6 = na, typename T7 = na
17     , typename T8 = na, typename T9 = na, typename T10 = na, typename T11 = na
18     , typename T12 = na, typename T13 = na, typename T14 = na
19     , typename T15 = na, typename T16 = na, typename T17 = na
20     , typename T18 = na, typename T19 = na
21     >
22 struct deque;
23
24 template<
25      
26     >
27 struct deque<
28           na, na, na, na, na, na, na, na, na, na, na, na, na, na, na, na, na
29         , na, na, na
30         >
31     : vector0<  >
32 {
33     typedef vector0<  >::type type;
34 };
35
36 template<
37       typename T0
38     >
39 struct deque<
40           T0, na, na, na, na, na, na, na, na, na, na, na, na, na, na, na, na
41         , na, na, na
42         >
43     : vector1<T0>
44 {
45     typedef typename vector1<T0>::type type;
46 };
47
48 template<
49       typename T0, typename T1
50     >
51 struct deque<
52           T0, T1, na, na, na, na, na, na, na, na, na, na, na, na, na, na, na
53         , na, na, na
54         >
55     : vector2< T0,T1 >
56 {
57     typedef typename vector2< T0,T1 >::type type;
58 };
59
60 template<
61       typename T0, typename T1, typename T2
62     >
63 struct deque<
64           T0, T1, T2, na, na, na, na, na, na, na, na, na, na, na, na, na, na
65         , na, na, na
66         >
67     : vector3< T0,T1,T2 >
68 {
69     typedef typename vector3< T0,T1,T2 >::type type;
70 };
71
72 template<
73       typename T0, typename T1, typename T2, typename T3
74     >
75 struct deque<
76           T0, T1, T2, T3, na, na, na, na, na, na, na, na, na, na, na, na, na
77         , na, na, na
78         >
79     : vector4< T0,T1,T2,T3 >
80 {
81     typedef typename vector4< T0,T1,T2,T3 >::type type;
82 };
83
84 template<
85       typename T0, typename T1, typename T2, typename T3, typename T4
86     >
87 struct deque<
88           T0, T1, T2, T3, T4, na, na, na, na, na, na, na, na, na, na, na, na
89         , na, na, na
90         >
91     : vector5< T0,T1,T2,T3,T4 >
92 {
93     typedef typename vector5< T0,T1,T2,T3,T4 >::type type;
94 };
95
96 template<
97       typename T0, typename T1, typename T2, typename T3, typename T4
98     , typename T5
99     >
100 struct deque<
101           T0, T1, T2, T3, T4, T5, na, na, na, na, na, na, na, na, na, na, na
102         , na, na, na
103         >
104     : vector6< T0,T1,T2,T3,T4,T5 >
105 {
106     typedef typename vector6< T0,T1,T2,T3,T4,T5 >::type type;
107 };
108
109 template<
110       typename T0, typename T1, typename T2, typename T3, typename T4
111     , typename T5, typename T6
112     >
113 struct deque<
114           T0, T1, T2, T3, T4, T5, T6, na, na, na, na, na, na, na, na, na, na
115         , na, na, na
116         >
117     : vector7< T0,T1,T2,T3,T4,T5,T6 >
118 {
119     typedef typename vector7< T0,T1,T2,T3,T4,T5,T6 >::type type;
120 };
121
122 template<
123       typename T0, typename T1, typename T2, typename T3, typename T4
124     , typename T5, typename T6, typename T7
125     >
126 struct deque<
127           T0, T1, T2, T3, T4, T5, T6, T7, na, na, na, na, na, na, na, na, na
128         , na, na, na
129         >
130     : vector8< T0,T1,T2,T3,T4,T5,T6,T7 >
131 {
132     typedef typename vector8< T0,T1,T2,T3,T4,T5,T6,T7 >::type type;
133 };
134
135 template<
136       typename T0, typename T1, typename T2, typename T3, typename T4
137     , typename T5, typename T6, typename T7, typename T8
138     >
139 struct deque<
140           T0, T1, T2, T3, T4, T5, T6, T7, T8, na, na, na, na, na, na, na, na
141         , na, na, na
142         >
143     : vector9< T0,T1,T2,T3,T4,T5,T6,T7,T8 >
144 {
145     typedef typename vector9< T0,T1,T2,T3,T4,T5,T6,T7,T8 >::type type;
146 };
147
148 template<
149       typename T0, typename T1, typename T2, typename T3, typename T4
150     , typename T5, typename T6, typename T7, typename T8, typename T9
151     >
152 struct deque<
153           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, na, na, na, na, na, na, na
154         , na, na, na
155         >
156     : vector10< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9 >
157 {
158     typedef typename vector10< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9 >::type type;
159 };
160
161 template<
162       typename T0, typename T1, typename T2, typename T3, typename T4
163     , typename T5, typename T6, typename T7, typename T8, typename T9
164     , typename T10
165     >
166 struct deque<
167           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, na, na, na, na, na, na
168         , na, na, na
169         >
170     : vector11< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10 >
171 {
172     typedef typename vector11< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10 >::type type;
173 };
174
175 template<
176       typename T0, typename T1, typename T2, typename T3, typename T4
177     , typename T5, typename T6, typename T7, typename T8, typename T9
178     , typename T10, typename T11
179     >
180 struct deque<
181           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, na, na, na, na
182         , na, na, na, na
183         >
184     : vector12< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11 >
185 {
186     typedef typename vector12< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11 >::type type;
187 };
188
189 template<
190       typename T0, typename T1, typename T2, typename T3, typename T4
191     , typename T5, typename T6, typename T7, typename T8, typename T9
192     , typename T10, typename T11, typename T12
193     >
194 struct deque<
195           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, na, na, na
196         , na, na, na, na
197         >
198     : vector13< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12 >
199 {
200     typedef typename vector13< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12 >::type type;
201 };
202
203 template<
204       typename T0, typename T1, typename T2, typename T3, typename T4
205     , typename T5, typename T6, typename T7, typename T8, typename T9
206     , typename T10, typename T11, typename T12, typename T13
207     >
208 struct deque<
209           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, na, na
210         , na, na, na, na
211         >
212     : vector14< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13 >
213 {
214     typedef typename vector14< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13 >::type type;
215 };
216
217 template<
218       typename T0, typename T1, typename T2, typename T3, typename T4
219     , typename T5, typename T6, typename T7, typename T8, typename T9
220     , typename T10, typename T11, typename T12, typename T13, typename T14
221     >
222 struct deque<
223           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, na
224         , na, na, na, na
225         >
226     : vector15<
227           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
228         >
229 {
230     typedef typename vector15< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14 >::type type;
231 };
232
233 template<
234       typename T0, typename T1, typename T2, typename T3, typename T4
235     , typename T5, typename T6, typename T7, typename T8, typename T9
236     , typename T10, typename T11, typename T12, typename T13, typename T14
237     , typename T15
238     >
239 struct deque<
240           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
241         , T15, na, na, na, na
242         >
243     : vector16<
244           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
245         , T15
246         >
247 {
248     typedef typename vector16< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15 >::type type;
249 };
250
251 template<
252       typename T0, typename T1, typename T2, typename T3, typename T4
253     , typename T5, typename T6, typename T7, typename T8, typename T9
254     , typename T10, typename T11, typename T12, typename T13, typename T14
255     , typename T15, typename T16
256     >
257 struct deque<
258           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
259         , T15, T16, na, na, na
260         >
261     : vector17<
262           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
263         , T15, T16
264         >
265 {
266     typedef typename vector17< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16 >::type type;
267 };
268
269 template<
270       typename T0, typename T1, typename T2, typename T3, typename T4
271     , typename T5, typename T6, typename T7, typename T8, typename T9
272     , typename T10, typename T11, typename T12, typename T13, typename T14
273     , typename T15, typename T16, typename T17
274     >
275 struct deque<
276           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
277         , T15, T16, T17, na, na
278         >
279     : vector18<
280           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
281         , T15, T16, T17
282         >
283 {
284     typedef typename vector18< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17 >::type type;
285 };
286
287 template<
288       typename T0, typename T1, typename T2, typename T3, typename T4
289     , typename T5, typename T6, typename T7, typename T8, typename T9
290     , typename T10, typename T11, typename T12, typename T13, typename T14
291     , typename T15, typename T16, typename T17, typename T18
292     >
293 struct deque<
294           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
295         , T15, T16, T17, T18, na
296         >
297     : vector19<
298           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
299         , T15, T16, T17, T18
300         >
301 {
302     typedef typename vector19< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18 >::type type;
303 };
304
305 /// primary template (not a specialization!)
306
307 template<
308       typename T0, typename T1, typename T2, typename T3, typename T4
309     , typename T5, typename T6, typename T7, typename T8, typename T9
310     , typename T10, typename T11, typename T12, typename T13, typename T14
311     , typename T15, typename T16, typename T17, typename T18, typename T19
312     >
313 struct deque
314     : vector20<
315           T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
316         , T15, T16, T17, T18, T19
317         >
318 {
319     typedef typename vector20< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19 >::type type;
320 };
321
322 }}
323