1 /*=============================================================================
2 Copyright (c) 2001-2011 Joel de Guzman
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)
7 This is an auto-generated file. Do not edit!
8 ==============================================================================*/
9 namespace boost { namespace fusion
12 struct fusion_sequence_tag;
13 template <typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9>
15 : sequence_base<vector<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9> >
18 typedef typename detail::vector_n_chooser<
19 T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9>::type
21 template <typename U0 , typename U1 , typename U2 , typename U3 , typename U4 , typename U5 , typename U6 , typename U7 , typename U8 , typename U9>
24 typedef typename vector_n::types types;
25 typedef typename vector_n::fusion_tag fusion_tag;
26 typedef typename vector_n::tag tag;
27 typedef typename vector_n::size size;
28 typedef typename vector_n::category category;
29 typedef typename vector_n::is_view is_view;
30 BOOST_FUSION_GPU_ENABLED
33 template <typename U0 , typename U1 , typename U2 , typename U3 , typename U4 , typename U5 , typename U6 , typename U7 , typename U8 , typename U9>
34 BOOST_FUSION_GPU_ENABLED
35 vector(vector<U0 , U1 , U2 , U3 , U4 , U5 , U6 , U7 , U8 , U9> const& rhs)
37 BOOST_FUSION_GPU_ENABLED
38 vector(vector const& rhs)
40 template <typename Sequence>
41 BOOST_FUSION_GPU_ENABLED
42 vector(Sequence const& rhs)
43 : vec(BOOST_FUSION_VECTOR_COPY_INIT()) {}
51 BOOST_FUSION_GPU_ENABLED
53 vector(typename detail::call_param<T0 >::type _0)
55 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
56 template <typename U0>
57 BOOST_FUSION_GPU_ENABLED
60 : vec(std::forward<U0>(_0)) {}
62 BOOST_FUSION_GPU_ENABLED
63 vector(typename detail::call_param<T0 >::type _0 , typename detail::call_param<T1 >::type _1)
65 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
66 template <typename U0 , typename U1>
67 BOOST_FUSION_GPU_ENABLED
68 vector(U0 && _0 , U1 && _1)
69 : vec(std::forward<U0>(_0) , std::forward<U1>(_1)) {}
71 BOOST_FUSION_GPU_ENABLED
72 vector(typename detail::call_param<T0 >::type _0 , typename detail::call_param<T1 >::type _1 , typename detail::call_param<T2 >::type _2)
73 : vec(_0 , _1 , _2) {}
74 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
75 template <typename U0 , typename U1 , typename U2>
76 BOOST_FUSION_GPU_ENABLED
77 vector(U0 && _0 , U1 && _1 , U2 && _2)
78 : vec(std::forward<U0>(_0) , std::forward<U1>(_1) , std::forward<U2>(_2)) {}
80 BOOST_FUSION_GPU_ENABLED
81 vector(typename detail::call_param<T0 >::type _0 , typename detail::call_param<T1 >::type _1 , typename detail::call_param<T2 >::type _2 , typename detail::call_param<T3 >::type _3)
82 : vec(_0 , _1 , _2 , _3) {}
83 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
84 template <typename U0 , typename U1 , typename U2 , typename U3>
85 BOOST_FUSION_GPU_ENABLED
86 vector(U0 && _0 , U1 && _1 , U2 && _2 , U3 && _3)
87 : vec(std::forward<U0>(_0) , std::forward<U1>(_1) , std::forward<U2>(_2) , std::forward<U3>(_3)) {}
89 BOOST_FUSION_GPU_ENABLED
90 vector(typename detail::call_param<T0 >::type _0 , typename detail::call_param<T1 >::type _1 , typename detail::call_param<T2 >::type _2 , typename detail::call_param<T3 >::type _3 , typename detail::call_param<T4 >::type _4)
91 : vec(_0 , _1 , _2 , _3 , _4) {}
92 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
93 template <typename U0 , typename U1 , typename U2 , typename U3 , typename U4>
94 BOOST_FUSION_GPU_ENABLED
95 vector(U0 && _0 , U1 && _1 , U2 && _2 , U3 && _3 , U4 && _4)
96 : vec(std::forward<U0>(_0) , std::forward<U1>(_1) , std::forward<U2>(_2) , std::forward<U3>(_3) , std::forward<U4>(_4)) {}
98 BOOST_FUSION_GPU_ENABLED
99 vector(typename detail::call_param<T0 >::type _0 , typename detail::call_param<T1 >::type _1 , typename detail::call_param<T2 >::type _2 , typename detail::call_param<T3 >::type _3 , typename detail::call_param<T4 >::type _4 , typename detail::call_param<T5 >::type _5)
100 : vec(_0 , _1 , _2 , _3 , _4 , _5) {}
101 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
102 template <typename U0 , typename U1 , typename U2 , typename U3 , typename U4 , typename U5>
103 BOOST_FUSION_GPU_ENABLED
104 vector(U0 && _0 , U1 && _1 , U2 && _2 , U3 && _3 , U4 && _4 , U5 && _5)
105 : vec(std::forward<U0>(_0) , std::forward<U1>(_1) , std::forward<U2>(_2) , std::forward<U3>(_3) , std::forward<U4>(_4) , std::forward<U5>(_5)) {}
107 BOOST_FUSION_GPU_ENABLED
108 vector(typename detail::call_param<T0 >::type _0 , typename detail::call_param<T1 >::type _1 , typename detail::call_param<T2 >::type _2 , typename detail::call_param<T3 >::type _3 , typename detail::call_param<T4 >::type _4 , typename detail::call_param<T5 >::type _5 , typename detail::call_param<T6 >::type _6)
109 : vec(_0 , _1 , _2 , _3 , _4 , _5 , _6) {}
110 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
111 template <typename U0 , typename U1 , typename U2 , typename U3 , typename U4 , typename U5 , typename U6>
112 BOOST_FUSION_GPU_ENABLED
113 vector(U0 && _0 , U1 && _1 , U2 && _2 , U3 && _3 , U4 && _4 , U5 && _5 , U6 && _6)
114 : vec(std::forward<U0>(_0) , std::forward<U1>(_1) , std::forward<U2>(_2) , std::forward<U3>(_3) , std::forward<U4>(_4) , std::forward<U5>(_5) , std::forward<U6>(_6)) {}
116 BOOST_FUSION_GPU_ENABLED
117 vector(typename detail::call_param<T0 >::type _0 , typename detail::call_param<T1 >::type _1 , typename detail::call_param<T2 >::type _2 , typename detail::call_param<T3 >::type _3 , typename detail::call_param<T4 >::type _4 , typename detail::call_param<T5 >::type _5 , typename detail::call_param<T6 >::type _6 , typename detail::call_param<T7 >::type _7)
118 : vec(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7) {}
119 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
120 template <typename U0 , typename U1 , typename U2 , typename U3 , typename U4 , typename U5 , typename U6 , typename U7>
121 BOOST_FUSION_GPU_ENABLED
122 vector(U0 && _0 , U1 && _1 , U2 && _2 , U3 && _3 , U4 && _4 , U5 && _5 , U6 && _6 , U7 && _7)
123 : vec(std::forward<U0>(_0) , std::forward<U1>(_1) , std::forward<U2>(_2) , std::forward<U3>(_3) , std::forward<U4>(_4) , std::forward<U5>(_5) , std::forward<U6>(_6) , std::forward<U7>(_7)) {}
125 BOOST_FUSION_GPU_ENABLED
126 vector(typename detail::call_param<T0 >::type _0 , typename detail::call_param<T1 >::type _1 , typename detail::call_param<T2 >::type _2 , typename detail::call_param<T3 >::type _3 , typename detail::call_param<T4 >::type _4 , typename detail::call_param<T5 >::type _5 , typename detail::call_param<T6 >::type _6 , typename detail::call_param<T7 >::type _7 , typename detail::call_param<T8 >::type _8)
127 : vec(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8) {}
128 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
129 template <typename U0 , typename U1 , typename U2 , typename U3 , typename U4 , typename U5 , typename U6 , typename U7 , typename U8>
130 BOOST_FUSION_GPU_ENABLED
131 vector(U0 && _0 , U1 && _1 , U2 && _2 , U3 && _3 , U4 && _4 , U5 && _5 , U6 && _6 , U7 && _7 , U8 && _8)
132 : vec(std::forward<U0>(_0) , std::forward<U1>(_1) , std::forward<U2>(_2) , std::forward<U3>(_3) , std::forward<U4>(_4) , std::forward<U5>(_5) , std::forward<U6>(_6) , std::forward<U7>(_7) , std::forward<U8>(_8)) {}
134 BOOST_FUSION_GPU_ENABLED
135 vector(typename detail::call_param<T0 >::type _0 , typename detail::call_param<T1 >::type _1 , typename detail::call_param<T2 >::type _2 , typename detail::call_param<T3 >::type _3 , typename detail::call_param<T4 >::type _4 , typename detail::call_param<T5 >::type _5 , typename detail::call_param<T6 >::type _6 , typename detail::call_param<T7 >::type _7 , typename detail::call_param<T8 >::type _8 , typename detail::call_param<T9 >::type _9)
136 : vec(_0 , _1 , _2 , _3 , _4 , _5 , _6 , _7 , _8 , _9) {}
137 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
138 template <typename U0 , typename U1 , typename U2 , typename U3 , typename U4 , typename U5 , typename U6 , typename U7 , typename U8 , typename U9>
139 BOOST_FUSION_GPU_ENABLED
140 vector(U0 && _0 , U1 && _1 , U2 && _2 , U3 && _3 , U4 && _4 , U5 && _5 , U6 && _6 , U7 && _7 , U8 && _8 , U9 && _9)
141 : vec(std::forward<U0>(_0) , std::forward<U1>(_1) , std::forward<U2>(_2) , std::forward<U3>(_3) , std::forward<U4>(_4) , std::forward<U5>(_5) , std::forward<U6>(_6) , std::forward<U7>(_7) , std::forward<U8>(_8) , std::forward<U9>(_9)) {}
143 template <typename U0 , typename U1 , typename U2 , typename U3 , typename U4 , typename U5 , typename U6 , typename U7 , typename U8 , typename U9>
144 BOOST_FUSION_GPU_ENABLED
146 operator=(vector<U0 , U1 , U2 , U3 , U4 , U5 , U6 , U7 , U8 , U9> const& rhs)
151 template <typename T>
152 BOOST_FUSION_GPU_ENABLED
154 operator=(T const& rhs)
159 BOOST_FUSION_GPU_ENABLED
161 operator=(vector const& rhs)
166 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
167 BOOST_FUSION_GPU_ENABLED
169 : vec(std::forward<vector_n>(rhs.vec)) {}
170 BOOST_FUSION_GPU_ENABLED
172 operator=(vector&& rhs)
174 vec = std::forward<vector_n>(rhs.vec);
177 template <typename T>
178 BOOST_FUSION_GPU_ENABLED
182 vec = std::forward<T>(rhs);
187 BOOST_FUSION_GPU_ENABLED
188 typename add_reference<
189 typename mpl::at_c<types, N>::type
191 at_impl(mpl::int_<N> index)
193 return vec.at_impl(index);
196 BOOST_FUSION_GPU_ENABLED
197 typename add_reference<
199 typename mpl::at_c<types, N>::type
202 at_impl(mpl::int_<N> index) const
204 return vec.at_impl(index);
206 template <typename I>
207 BOOST_FUSION_GPU_ENABLED
208 typename add_reference<
209 typename mpl::at<types, I>::type
213 return vec.at_impl(mpl::int_<I::value>());
216 BOOST_FUSION_GPU_ENABLED
217 typename add_reference<
219 typename mpl::at<types, I>::type
224 return vec.at_impl(mpl::int_<I::value>());
227 BOOST_FUSION_VECTOR_CTOR_HELPER()