]>
Commit | Line | Data |
---|---|---|
7c673cae FG |
1 | /*============================================================================= |
2 | Copyright (c) 2001-2011 Joel de Guzman | |
3 | ||
4 | Distributed under the Boost Software License, Version 1.0. (See accompanying | |
5 | file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) | |
6 | ||
7 | This is an auto-generated file. Do not edit! | |
8 | ==============================================================================*/ | |
9 | namespace boost { namespace fusion { namespace detail | |
10 | { | |
11 | BOOST_FUSION_BARRIER_BEGIN | |
12 | template <> | |
13 | struct as_vector<1> | |
14 | { | |
15 | template <typename I0> | |
16 | struct apply | |
17 | { | |
18 | typedef typename fusion::result_of::next<I0>::type I1; | |
19 | typedef typename fusion::result_of::value_of<I0>::type T0; | |
20 | typedef vector1<T0> type; | |
21 | }; | |
22 | template <typename Iterator> | |
23 | BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED | |
24 | static typename apply<Iterator>::type | |
25 | call(Iterator const& i0) | |
26 | { | |
27 | typedef apply<Iterator> gen; | |
28 | typedef typename gen::type result; | |
29 | ||
30 | return result(*i0); | |
31 | } | |
32 | }; | |
33 | template <> | |
34 | struct as_vector<2> | |
35 | { | |
36 | template <typename I0> | |
37 | struct apply | |
38 | { | |
39 | typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; | |
40 | typedef typename fusion::result_of::value_of<I0>::type T0; typedef typename fusion::result_of::value_of<I1>::type T1; | |
41 | typedef vector2<T0 , T1> type; | |
42 | }; | |
43 | template <typename Iterator> | |
44 | BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED | |
45 | static typename apply<Iterator>::type | |
46 | call(Iterator const& i0) | |
47 | { | |
48 | typedef apply<Iterator> gen; | |
49 | typedef typename gen::type result; | |
50 | typename gen::I1 i1 = fusion::next(i0); | |
51 | return result(*i0 , *i1); | |
52 | } | |
53 | }; | |
54 | template <> | |
55 | struct as_vector<3> | |
56 | { | |
57 | template <typename I0> | |
58 | struct apply | |
59 | { | |
60 | typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; | |
61 | typedef typename fusion::result_of::value_of<I0>::type T0; typedef typename fusion::result_of::value_of<I1>::type T1; typedef typename fusion::result_of::value_of<I2>::type T2; | |
62 | typedef vector3<T0 , T1 , T2> type; | |
63 | }; | |
64 | template <typename Iterator> | |
65 | BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED | |
66 | static typename apply<Iterator>::type | |
67 | call(Iterator const& i0) | |
68 | { | |
69 | typedef apply<Iterator> gen; | |
70 | typedef typename gen::type result; | |
71 | typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); | |
72 | return result(*i0 , *i1 , *i2); | |
73 | } | |
74 | }; | |
75 | template <> | |
76 | struct as_vector<4> | |
77 | { | |
78 | template <typename I0> | |
79 | struct apply | |
80 | { | |
81 | typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; | |
82 | typedef typename fusion::result_of::value_of<I0>::type T0; typedef typename fusion::result_of::value_of<I1>::type T1; typedef typename fusion::result_of::value_of<I2>::type T2; typedef typename fusion::result_of::value_of<I3>::type T3; | |
83 | typedef vector4<T0 , T1 , T2 , T3> type; | |
84 | }; | |
85 | template <typename Iterator> | |
86 | BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED | |
87 | static typename apply<Iterator>::type | |
88 | call(Iterator const& i0) | |
89 | { | |
90 | typedef apply<Iterator> gen; | |
91 | typedef typename gen::type result; | |
92 | typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); | |
93 | return result(*i0 , *i1 , *i2 , *i3); | |
94 | } | |
95 | }; | |
96 | template <> | |
97 | struct as_vector<5> | |
98 | { | |
99 | template <typename I0> | |
100 | struct apply | |
101 | { | |
102 | typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; | |
103 | typedef typename fusion::result_of::value_of<I0>::type T0; typedef typename fusion::result_of::value_of<I1>::type T1; typedef typename fusion::result_of::value_of<I2>::type T2; typedef typename fusion::result_of::value_of<I3>::type T3; typedef typename fusion::result_of::value_of<I4>::type T4; | |
104 | typedef vector5<T0 , T1 , T2 , T3 , T4> type; | |
105 | }; | |
106 | template <typename Iterator> | |
107 | BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED | |
108 | static typename apply<Iterator>::type | |
109 | call(Iterator const& i0) | |
110 | { | |
111 | typedef apply<Iterator> gen; | |
112 | typedef typename gen::type result; | |
113 | typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); | |
114 | return result(*i0 , *i1 , *i2 , *i3 , *i4); | |
115 | } | |
116 | }; | |
117 | template <> | |
118 | struct as_vector<6> | |
119 | { | |
120 | template <typename I0> | |
121 | struct apply | |
122 | { | |
123 | typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; | |
124 | typedef typename fusion::result_of::value_of<I0>::type T0; typedef typename fusion::result_of::value_of<I1>::type T1; typedef typename fusion::result_of::value_of<I2>::type T2; typedef typename fusion::result_of::value_of<I3>::type T3; typedef typename fusion::result_of::value_of<I4>::type T4; typedef typename fusion::result_of::value_of<I5>::type T5; | |
125 | typedef vector6<T0 , T1 , T2 , T3 , T4 , T5> type; | |
126 | }; | |
127 | template <typename Iterator> | |
128 | BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED | |
129 | static typename apply<Iterator>::type | |
130 | call(Iterator const& i0) | |
131 | { | |
132 | typedef apply<Iterator> gen; | |
133 | typedef typename gen::type result; | |
134 | typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); | |
135 | return result(*i0 , *i1 , *i2 , *i3 , *i4 , *i5); | |
136 | } | |
137 | }; | |
138 | template <> | |
139 | struct as_vector<7> | |
140 | { | |
141 | template <typename I0> | |
142 | struct apply | |
143 | { | |
144 | typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; | |
145 | typedef typename fusion::result_of::value_of<I0>::type T0; typedef typename fusion::result_of::value_of<I1>::type T1; typedef typename fusion::result_of::value_of<I2>::type T2; typedef typename fusion::result_of::value_of<I3>::type T3; typedef typename fusion::result_of::value_of<I4>::type T4; typedef typename fusion::result_of::value_of<I5>::type T5; typedef typename fusion::result_of::value_of<I6>::type T6; | |
146 | typedef vector7<T0 , T1 , T2 , T3 , T4 , T5 , T6> type; | |
147 | }; | |
148 | template <typename Iterator> | |
149 | BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED | |
150 | static typename apply<Iterator>::type | |
151 | call(Iterator const& i0) | |
152 | { | |
153 | typedef apply<Iterator> gen; | |
154 | typedef typename gen::type result; | |
155 | typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); | |
156 | return result(*i0 , *i1 , *i2 , *i3 , *i4 , *i5 , *i6); | |
157 | } | |
158 | }; | |
159 | template <> | |
160 | struct as_vector<8> | |
161 | { | |
162 | template <typename I0> | |
163 | struct apply | |
164 | { | |
165 | typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; | |
166 | typedef typename fusion::result_of::value_of<I0>::type T0; typedef typename fusion::result_of::value_of<I1>::type T1; typedef typename fusion::result_of::value_of<I2>::type T2; typedef typename fusion::result_of::value_of<I3>::type T3; typedef typename fusion::result_of::value_of<I4>::type T4; typedef typename fusion::result_of::value_of<I5>::type T5; typedef typename fusion::result_of::value_of<I6>::type T6; typedef typename fusion::result_of::value_of<I7>::type T7; | |
167 | typedef vector8<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7> type; | |
168 | }; | |
169 | template <typename Iterator> | |
170 | BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED | |
171 | static typename apply<Iterator>::type | |
172 | call(Iterator const& i0) | |
173 | { | |
174 | typedef apply<Iterator> gen; | |
175 | typedef typename gen::type result; | |
176 | typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); | |
177 | return result(*i0 , *i1 , *i2 , *i3 , *i4 , *i5 , *i6 , *i7); | |
178 | } | |
179 | }; | |
180 | template <> | |
181 | struct as_vector<9> | |
182 | { | |
183 | template <typename I0> | |
184 | struct apply | |
185 | { | |
186 | typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; | |
187 | typedef typename fusion::result_of::value_of<I0>::type T0; typedef typename fusion::result_of::value_of<I1>::type T1; typedef typename fusion::result_of::value_of<I2>::type T2; typedef typename fusion::result_of::value_of<I3>::type T3; typedef typename fusion::result_of::value_of<I4>::type T4; typedef typename fusion::result_of::value_of<I5>::type T5; typedef typename fusion::result_of::value_of<I6>::type T6; typedef typename fusion::result_of::value_of<I7>::type T7; typedef typename fusion::result_of::value_of<I8>::type T8; | |
188 | typedef vector9<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8> type; | |
189 | }; | |
190 | template <typename Iterator> | |
191 | BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED | |
192 | static typename apply<Iterator>::type | |
193 | call(Iterator const& i0) | |
194 | { | |
195 | typedef apply<Iterator> gen; | |
196 | typedef typename gen::type result; | |
197 | typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); | |
198 | return result(*i0 , *i1 , *i2 , *i3 , *i4 , *i5 , *i6 , *i7 , *i8); | |
199 | } | |
200 | }; | |
201 | template <> | |
202 | struct as_vector<10> | |
203 | { | |
204 | template <typename I0> | |
205 | struct apply | |
206 | { | |
207 | typedef typename fusion::result_of::next<I0>::type I1; typedef typename fusion::result_of::next<I1>::type I2; typedef typename fusion::result_of::next<I2>::type I3; typedef typename fusion::result_of::next<I3>::type I4; typedef typename fusion::result_of::next<I4>::type I5; typedef typename fusion::result_of::next<I5>::type I6; typedef typename fusion::result_of::next<I6>::type I7; typedef typename fusion::result_of::next<I7>::type I8; typedef typename fusion::result_of::next<I8>::type I9; typedef typename fusion::result_of::next<I9>::type I10; | |
208 | typedef typename fusion::result_of::value_of<I0>::type T0; typedef typename fusion::result_of::value_of<I1>::type T1; typedef typename fusion::result_of::value_of<I2>::type T2; typedef typename fusion::result_of::value_of<I3>::type T3; typedef typename fusion::result_of::value_of<I4>::type T4; typedef typename fusion::result_of::value_of<I5>::type T5; typedef typename fusion::result_of::value_of<I6>::type T6; typedef typename fusion::result_of::value_of<I7>::type T7; typedef typename fusion::result_of::value_of<I8>::type T8; typedef typename fusion::result_of::value_of<I9>::type T9; | |
209 | typedef vector10<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9> type; | |
210 | }; | |
211 | template <typename Iterator> | |
212 | BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED | |
213 | static typename apply<Iterator>::type | |
214 | call(Iterator const& i0) | |
215 | { | |
216 | typedef apply<Iterator> gen; | |
217 | typedef typename gen::type result; | |
218 | typename gen::I1 i1 = fusion::next(i0); typename gen::I2 i2 = fusion::next(i1); typename gen::I3 i3 = fusion::next(i2); typename gen::I4 i4 = fusion::next(i3); typename gen::I5 i5 = fusion::next(i4); typename gen::I6 i6 = fusion::next(i5); typename gen::I7 i7 = fusion::next(i6); typename gen::I8 i8 = fusion::next(i7); typename gen::I9 i9 = fusion::next(i8); | |
219 | return result(*i0 , *i1 , *i2 , *i3 , *i4 , *i5 , *i6 , *i7 , *i8 , *i9); | |
220 | } | |
221 | }; | |
222 | BOOST_FUSION_BARRIER_END | |
223 | }}} |