]> git.sesse.net Git - casparcg/blob - dependencies/boost/boost/phoenix/support/preprocessed/vector_10.hpp
Manually merged pull request #222
[casparcg] / dependencies / boost / boost / phoenix / support / preprocessed / vector_10.hpp
1 /*==============================================================================
2     Copyright (c) 2005-2010 Joel de Guzman
3     Copyright (c) 2010 Thomas Heller
4
5     Distributed under the Boost Software License, Version 1.0. (See accompanying
6     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
7 ==============================================================================*/
8 namespace boost { namespace phoenix
9 {
10     template <typename Dummy = void>
11     struct vector0
12     {
13         typedef mpl::int_<0> size_type;
14         static const int size_value = 0;
15     };
16 }}
17     
18     
19     
20     
21     
22     
23     
24 namespace boost { namespace phoenix
25 {
26     template <typename A0>
27     struct vector1
28     {
29         typedef A0 member_type0; A0 a0;
30         
31         typedef mpl::int_<1> size_type;
32         static const int size_value = 1;
33         typedef
34             vector0<>
35             args_type;
36         args_type args() const
37         {
38             args_type r = {};
39             return r;
40         }
41     };
42 }}
43 BOOST_FUSION_ADAPT_TPL_STRUCT_NO_PARTIAL(
44     (A0)
45   , ( boost::phoenix::vector1 ) (A0)
46   , (A0, a0)
47 )
48     
49     
50     
51     
52     
53     
54     
55 namespace boost { namespace phoenix
56 {
57     template <typename A0 , typename A1>
58     struct vector2
59     {
60         typedef A0 member_type0; A0 a0; typedef A1 member_type1; A1 a1;
61         
62         typedef mpl::int_<2> size_type;
63         static const int size_value = 2;
64         typedef
65             vector1<A1>
66             args_type;
67         args_type args() const
68         {
69             args_type r = {a1};
70             return r;
71         }
72     };
73 }}
74 BOOST_FUSION_ADAPT_TPL_STRUCT_NO_PARTIAL(
75     (A0) (A1)
76   , ( boost::phoenix::vector2 ) (A0) (A1)
77   , (A0, a0) (A1, a1)
78 )
79     
80     
81     
82     
83     
84     
85     
86 namespace boost { namespace phoenix
87 {
88     template <typename A0 , typename A1 , typename A2>
89     struct vector3
90     {
91         typedef A0 member_type0; A0 a0; typedef A1 member_type1; A1 a1; typedef A2 member_type2; A2 a2;
92         
93         typedef mpl::int_<3> size_type;
94         static const int size_value = 3;
95         typedef
96             vector2<A1 , A2>
97             args_type;
98         args_type args() const
99         {
100             args_type r = {a1 , a2};
101             return r;
102         }
103     };
104 }}
105 BOOST_FUSION_ADAPT_TPL_STRUCT_NO_PARTIAL(
106     (A0) (A1) (A2)
107   , ( boost::phoenix::vector3 ) (A0) (A1) (A2)
108   , (A0, a0) (A1, a1) (A2, a2)
109 )
110     
111     
112     
113     
114     
115     
116     
117 namespace boost { namespace phoenix
118 {
119     template <typename A0 , typename A1 , typename A2 , typename A3>
120     struct vector4
121     {
122         typedef A0 member_type0; A0 a0; typedef A1 member_type1; A1 a1; typedef A2 member_type2; A2 a2; typedef A3 member_type3; A3 a3;
123         
124         typedef mpl::int_<4> size_type;
125         static const int size_value = 4;
126         typedef
127             vector3<A1 , A2 , A3>
128             args_type;
129         args_type args() const
130         {
131             args_type r = {a1 , a2 , a3};
132             return r;
133         }
134     };
135 }}
136 BOOST_FUSION_ADAPT_TPL_STRUCT_NO_PARTIAL(
137     (A0) (A1) (A2) (A3)
138   , ( boost::phoenix::vector4 ) (A0) (A1) (A2) (A3)
139   , (A0, a0) (A1, a1) (A2, a2) (A3, a3)
140 )
141     
142     
143     
144     
145     
146     
147     
148 namespace boost { namespace phoenix
149 {
150     template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4>
151     struct vector5
152     {
153         typedef A0 member_type0; A0 a0; typedef A1 member_type1; A1 a1; typedef A2 member_type2; A2 a2; typedef A3 member_type3; A3 a3; typedef A4 member_type4; A4 a4;
154         
155         typedef mpl::int_<5> size_type;
156         static const int size_value = 5;
157         typedef
158             vector4<A1 , A2 , A3 , A4>
159             args_type;
160         args_type args() const
161         {
162             args_type r = {a1 , a2 , a3 , a4};
163             return r;
164         }
165     };
166 }}
167 BOOST_FUSION_ADAPT_TPL_STRUCT_NO_PARTIAL(
168     (A0) (A1) (A2) (A3) (A4)
169   , ( boost::phoenix::vector5 ) (A0) (A1) (A2) (A3) (A4)
170   , (A0, a0) (A1, a1) (A2, a2) (A3, a3) (A4, a4)
171 )
172     
173     
174     
175     
176     
177     
178     
179 namespace boost { namespace phoenix
180 {
181     template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5>
182     struct vector6
183     {
184         typedef A0 member_type0; A0 a0; typedef A1 member_type1; A1 a1; typedef A2 member_type2; A2 a2; typedef A3 member_type3; A3 a3; typedef A4 member_type4; A4 a4; typedef A5 member_type5; A5 a5;
185         
186         typedef mpl::int_<6> size_type;
187         static const int size_value = 6;
188         typedef
189             vector5<A1 , A2 , A3 , A4 , A5>
190             args_type;
191         args_type args() const
192         {
193             args_type r = {a1 , a2 , a3 , a4 , a5};
194             return r;
195         }
196     };
197 }}
198 BOOST_FUSION_ADAPT_TPL_STRUCT_NO_PARTIAL(
199     (A0) (A1) (A2) (A3) (A4) (A5)
200   , ( boost::phoenix::vector6 ) (A0) (A1) (A2) (A3) (A4) (A5)
201   , (A0, a0) (A1, a1) (A2, a2) (A3, a3) (A4, a4) (A5, a5)
202 )
203     
204     
205     
206     
207     
208     
209     
210 namespace boost { namespace phoenix
211 {
212     template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6>
213     struct vector7
214     {
215         typedef A0 member_type0; A0 a0; typedef A1 member_type1; A1 a1; typedef A2 member_type2; A2 a2; typedef A3 member_type3; A3 a3; typedef A4 member_type4; A4 a4; typedef A5 member_type5; A5 a5; typedef A6 member_type6; A6 a6;
216         
217         typedef mpl::int_<7> size_type;
218         static const int size_value = 7;
219         typedef
220             vector6<A1 , A2 , A3 , A4 , A5 , A6>
221             args_type;
222         args_type args() const
223         {
224             args_type r = {a1 , a2 , a3 , a4 , a5 , a6};
225             return r;
226         }
227     };
228 }}
229 BOOST_FUSION_ADAPT_TPL_STRUCT_NO_PARTIAL(
230     (A0) (A1) (A2) (A3) (A4) (A5) (A6)
231   , ( boost::phoenix::vector7 ) (A0) (A1) (A2) (A3) (A4) (A5) (A6)
232   , (A0, a0) (A1, a1) (A2, a2) (A3, a3) (A4, a4) (A5, a5) (A6, a6)
233 )
234     
235     
236     
237     
238     
239     
240     
241 namespace boost { namespace phoenix
242 {
243     template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7>
244     struct vector8
245     {
246         typedef A0 member_type0; A0 a0; typedef A1 member_type1; A1 a1; typedef A2 member_type2; A2 a2; typedef A3 member_type3; A3 a3; typedef A4 member_type4; A4 a4; typedef A5 member_type5; A5 a5; typedef A6 member_type6; A6 a6; typedef A7 member_type7; A7 a7;
247         
248         typedef mpl::int_<8> size_type;
249         static const int size_value = 8;
250         typedef
251             vector7<A1 , A2 , A3 , A4 , A5 , A6 , A7>
252             args_type;
253         args_type args() const
254         {
255             args_type r = {a1 , a2 , a3 , a4 , a5 , a6 , a7};
256             return r;
257         }
258     };
259 }}
260 BOOST_FUSION_ADAPT_TPL_STRUCT_NO_PARTIAL(
261     (A0) (A1) (A2) (A3) (A4) (A5) (A6) (A7)
262   , ( boost::phoenix::vector8 ) (A0) (A1) (A2) (A3) (A4) (A5) (A6) (A7)
263   , (A0, a0) (A1, a1) (A2, a2) (A3, a3) (A4, a4) (A5, a5) (A6, a6) (A7, a7)
264 )
265     
266     
267     
268     
269     
270     
271     
272 namespace boost { namespace phoenix
273 {
274     template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8>
275     struct vector9
276     {
277         typedef A0 member_type0; A0 a0; typedef A1 member_type1; A1 a1; typedef A2 member_type2; A2 a2; typedef A3 member_type3; A3 a3; typedef A4 member_type4; A4 a4; typedef A5 member_type5; A5 a5; typedef A6 member_type6; A6 a6; typedef A7 member_type7; A7 a7; typedef A8 member_type8; A8 a8;
278         
279         typedef mpl::int_<9> size_type;
280         static const int size_value = 9;
281         typedef
282             vector8<A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8>
283             args_type;
284         args_type args() const
285         {
286             args_type r = {a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8};
287             return r;
288         }
289     };
290 }}
291 BOOST_FUSION_ADAPT_TPL_STRUCT_NO_PARTIAL(
292     (A0) (A1) (A2) (A3) (A4) (A5) (A6) (A7) (A8)
293   , ( boost::phoenix::vector9 ) (A0) (A1) (A2) (A3) (A4) (A5) (A6) (A7) (A8)
294   , (A0, a0) (A1, a1) (A2, a2) (A3, a3) (A4, a4) (A5, a5) (A6, a6) (A7, a7) (A8, a8)
295 )
296     
297     
298     
299     
300     
301     
302     
303 namespace boost { namespace phoenix
304 {
305     template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9>
306     struct vector10
307     {
308         typedef A0 member_type0; A0 a0; typedef A1 member_type1; A1 a1; typedef A2 member_type2; A2 a2; typedef A3 member_type3; A3 a3; typedef A4 member_type4; A4 a4; typedef A5 member_type5; A5 a5; typedef A6 member_type6; A6 a6; typedef A7 member_type7; A7 a7; typedef A8 member_type8; A8 a8; typedef A9 member_type9; A9 a9;
309         
310         typedef mpl::int_<10> size_type;
311         static const int size_value = 10;
312         typedef
313             vector9<A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9>
314             args_type;
315         args_type args() const
316         {
317             args_type r = {a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9};
318             return r;
319         }
320     };
321 }}
322 BOOST_FUSION_ADAPT_TPL_STRUCT_NO_PARTIAL(
323     (A0) (A1) (A2) (A3) (A4) (A5) (A6) (A7) (A8) (A9)
324   , ( boost::phoenix::vector10 ) (A0) (A1) (A2) (A3) (A4) (A5) (A6) (A7) (A8) (A9)
325   , (A0, a0) (A1, a1) (A2, a2) (A3, a3) (A4, a4) (A5, a5) (A6, a6) (A7, a7) (A8, a8) (A9, a9)
326 )
327     
328     
329     
330     
331     
332     
333     
334 namespace boost { namespace phoenix
335 {
336     template <typename A0 , typename A1 , typename A2 , typename A3 , typename A4 , typename A5 , typename A6 , typename A7 , typename A8 , typename A9 , typename A10>
337     struct vector11
338     {
339         typedef A0 member_type0; A0 a0; typedef A1 member_type1; A1 a1; typedef A2 member_type2; A2 a2; typedef A3 member_type3; A3 a3; typedef A4 member_type4; A4 a4; typedef A5 member_type5; A5 a5; typedef A6 member_type6; A6 a6; typedef A7 member_type7; A7 a7; typedef A8 member_type8; A8 a8; typedef A9 member_type9; A9 a9; typedef A10 member_type10; A10 a10;
340         
341         typedef mpl::int_<11> size_type;
342         static const int size_value = 11;
343         typedef
344             vector10<A1 , A2 , A3 , A4 , A5 , A6 , A7 , A8 , A9 , A10>
345             args_type;
346         args_type args() const
347         {
348             args_type r = {a1 , a2 , a3 , a4 , a5 , a6 , a7 , a8 , a9 , a10};
349             return r;
350         }
351     };
352 }}
353 BOOST_FUSION_ADAPT_TPL_STRUCT_NO_PARTIAL(
354     (A0) (A1) (A2) (A3) (A4) (A5) (A6) (A7) (A8) (A9) (A10)
355   , ( boost::phoenix::vector11 ) (A0) (A1) (A2) (A3) (A4) (A5) (A6) (A7) (A8) (A9) (A10)
356   , (A0, a0) (A1, a1) (A2, a2) (A3, a3) (A4, a4) (A5, a5) (A6, a6) (A7, a7) (A8, a8) (A9, a9) (A10, a10)
357 )