Back to home page

EIC code displayed by LXR

 
 

    


Warning, file /include/boost/fusion/container/vector/detail/cpp03/preprocessed/vvector20.hpp was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 /*=============================================================================
0002     Copyright (c) 2001-2011 Joel de Guzman
0003 
0004     Distributed under the Boost Software License, Version 1.0. (See accompanying
0005     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
0006 
0007     This is an auto-generated file. Do not edit!
0008 ==============================================================================*/
0009 namespace boost { namespace fusion
0010 {
0011     struct void_;
0012     struct fusion_sequence_tag;
0013     template <typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19>
0014     struct vector
0015         : sequence_base<vector<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19> >
0016     {
0017     private:
0018         typedef typename detail::vector_n_chooser<
0019             T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19>::type
0020         vector_n;
0021         template <typename U0 , typename U1 , typename U2 , typename U3 , typename U4 , typename U5 , typename U6 , typename U7 , typename U8 , typename U9 , typename U10 , typename U11 , typename U12 , typename U13 , typename U14 , typename U15 , typename U16 , typename U17 , typename U18 , typename U19>
0022         friend struct vector;
0023     public:
0024         typedef typename vector_n::types types;
0025         typedef typename vector_n::fusion_tag fusion_tag;
0026         typedef typename vector_n::tag tag;
0027         typedef typename vector_n::size size;
0028         typedef typename vector_n::category category;
0029         typedef typename vector_n::is_view is_view;
0030         BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0031         vector()
0032             : vec() {}
0033         template <typename U0 , typename U1 , typename U2 , typename U3 , typename U4 , typename U5 , typename U6 , typename U7 , typename U8 , typename U9 , typename U10 , typename U11 , typename U12 , typename U13 , typename U14 , typename U15 , typename U16 , typename U17 , typename U18 , typename U19>
0034         BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0035         vector(vector<U0 , U1 , U2 , U3 , U4 , U5 , U6 , U7 , U8 , U9 , U10 , U11 , U12 , U13 , U14 , U15 , U16 , U17 , U18 , U19> const& rhs)
0036             : vec(rhs.vec) {}
0037         BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0038         vector(vector const& rhs)
0039             : vec(rhs.vec) {}
0040         template <typename Sequence>
0041         BOOST_FUSION_GPU_ENABLED
0042         vector(Sequence const& rhs,
0043             typename enable_if<traits::is_sequence<Sequence>, detail::enabler_>::type = detail::enabler)
0044             : vec(BOOST_FUSION_VECTOR_COPY_INIT()) {}
0045         
0046         
0047         
0048         
0049         
0050         
0051         
0052     
0053 # if !defined(BOOST_CLANG)
0054     BOOST_CONSTEXPR
0055 # endif
0056     BOOST_FUSION_GPU_ENABLED
0057     explicit
0058     vector(typename detail::call_param<T0 >::type arg0)
0059         : vec(arg0) {}
0060 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
0061     template <typename U0>
0062     
0063 # if !defined(BOOST_CLANG)
0064     BOOST_CXX14_CONSTEXPR
0065 # endif
0066     BOOST_FUSION_GPU_ENABLED
0067     explicit
0068     vector(U0 && arg0
0069         , typename boost::disable_if_c<boost::is_same<vector, typename boost::remove_cv_ref<U0>::type>::value, detail::enabler_>::type = detail::enabler
0070         )
0071         : vec(std::forward<U0>( arg0)) {}
0072 # endif
0073     
0074 # if !defined(BOOST_CLANG)
0075     BOOST_CONSTEXPR
0076 # endif
0077     BOOST_FUSION_GPU_ENABLED
0078     vector(typename detail::call_param<T0 >::type arg0 , typename detail::call_param<T1 >::type arg1)
0079         : vec(arg0 , arg1) {}
0080 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
0081     template <typename U0 , typename U1>
0082     
0083 # if !defined(BOOST_CLANG)
0084     BOOST_CXX14_CONSTEXPR
0085 # endif
0086     BOOST_FUSION_GPU_ENABLED
0087     vector(U0 && arg0 , U1 && arg1
0088         )
0089         : vec(std::forward<U0>( arg0) , std::forward<U1>( arg1)) {}
0090 # endif
0091     
0092 # if !defined(BOOST_CLANG)
0093     BOOST_CONSTEXPR
0094 # endif
0095     BOOST_FUSION_GPU_ENABLED
0096     vector(typename detail::call_param<T0 >::type arg0 , typename detail::call_param<T1 >::type arg1 , typename detail::call_param<T2 >::type arg2)
0097         : vec(arg0 , arg1 , arg2) {}
0098 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
0099     template <typename U0 , typename U1 , typename U2>
0100     
0101 # if !defined(BOOST_CLANG)
0102     BOOST_CXX14_CONSTEXPR
0103 # endif
0104     BOOST_FUSION_GPU_ENABLED
0105     vector(U0 && arg0 , U1 && arg1 , U2 && arg2
0106         )
0107         : vec(std::forward<U0>( arg0) , std::forward<U1>( arg1) , std::forward<U2>( arg2)) {}
0108 # endif
0109     
0110 # if !defined(BOOST_CLANG)
0111     BOOST_CONSTEXPR
0112 # endif
0113     BOOST_FUSION_GPU_ENABLED
0114     vector(typename detail::call_param<T0 >::type arg0 , typename detail::call_param<T1 >::type arg1 , typename detail::call_param<T2 >::type arg2 , typename detail::call_param<T3 >::type arg3)
0115         : vec(arg0 , arg1 , arg2 , arg3) {}
0116 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
0117     template <typename U0 , typename U1 , typename U2 , typename U3>
0118     
0119 # if !defined(BOOST_CLANG)
0120     BOOST_CXX14_CONSTEXPR
0121 # endif
0122     BOOST_FUSION_GPU_ENABLED
0123     vector(U0 && arg0 , U1 && arg1 , U2 && arg2 , U3 && arg3
0124         )
0125         : vec(std::forward<U0>( arg0) , std::forward<U1>( arg1) , std::forward<U2>( arg2) , std::forward<U3>( arg3)) {}
0126 # endif
0127     
0128 # if !defined(BOOST_CLANG)
0129     BOOST_CONSTEXPR
0130 # endif
0131     BOOST_FUSION_GPU_ENABLED
0132     vector(typename detail::call_param<T0 >::type arg0 , typename detail::call_param<T1 >::type arg1 , typename detail::call_param<T2 >::type arg2 , typename detail::call_param<T3 >::type arg3 , typename detail::call_param<T4 >::type arg4)
0133         : vec(arg0 , arg1 , arg2 , arg3 , arg4) {}
0134 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
0135     template <typename U0 , typename U1 , typename U2 , typename U3 , typename U4>
0136     
0137 # if !defined(BOOST_CLANG)
0138     BOOST_CXX14_CONSTEXPR
0139 # endif
0140     BOOST_FUSION_GPU_ENABLED
0141     vector(U0 && arg0 , U1 && arg1 , U2 && arg2 , U3 && arg3 , U4 && arg4
0142         )
0143         : vec(std::forward<U0>( arg0) , std::forward<U1>( arg1) , std::forward<U2>( arg2) , std::forward<U3>( arg3) , std::forward<U4>( arg4)) {}
0144 # endif
0145     
0146 # if !defined(BOOST_CLANG)
0147     BOOST_CONSTEXPR
0148 # endif
0149     BOOST_FUSION_GPU_ENABLED
0150     vector(typename detail::call_param<T0 >::type arg0 , typename detail::call_param<T1 >::type arg1 , typename detail::call_param<T2 >::type arg2 , typename detail::call_param<T3 >::type arg3 , typename detail::call_param<T4 >::type arg4 , typename detail::call_param<T5 >::type arg5)
0151         : vec(arg0 , arg1 , arg2 , arg3 , arg4 , arg5) {}
0152 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
0153     template <typename U0 , typename U1 , typename U2 , typename U3 , typename U4 , typename U5>
0154     
0155 # if !defined(BOOST_CLANG)
0156     BOOST_CXX14_CONSTEXPR
0157 # endif
0158     BOOST_FUSION_GPU_ENABLED
0159     vector(U0 && arg0 , U1 && arg1 , U2 && arg2 , U3 && arg3 , U4 && arg4 , U5 && arg5
0160         )
0161         : vec(std::forward<U0>( arg0) , std::forward<U1>( arg1) , std::forward<U2>( arg2) , std::forward<U3>( arg3) , std::forward<U4>( arg4) , std::forward<U5>( arg5)) {}
0162 # endif
0163     
0164 # if !defined(BOOST_CLANG)
0165     BOOST_CONSTEXPR
0166 # endif
0167     BOOST_FUSION_GPU_ENABLED
0168     vector(typename detail::call_param<T0 >::type arg0 , typename detail::call_param<T1 >::type arg1 , typename detail::call_param<T2 >::type arg2 , typename detail::call_param<T3 >::type arg3 , typename detail::call_param<T4 >::type arg4 , typename detail::call_param<T5 >::type arg5 , typename detail::call_param<T6 >::type arg6)
0169         : vec(arg0 , arg1 , arg2 , arg3 , arg4 , arg5 , arg6) {}
0170 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
0171     template <typename U0 , typename U1 , typename U2 , typename U3 , typename U4 , typename U5 , typename U6>
0172     
0173 # if !defined(BOOST_CLANG)
0174     BOOST_CXX14_CONSTEXPR
0175 # endif
0176     BOOST_FUSION_GPU_ENABLED
0177     vector(U0 && arg0 , U1 && arg1 , U2 && arg2 , U3 && arg3 , U4 && arg4 , U5 && arg5 , U6 && arg6
0178         )
0179         : vec(std::forward<U0>( arg0) , std::forward<U1>( arg1) , std::forward<U2>( arg2) , std::forward<U3>( arg3) , std::forward<U4>( arg4) , std::forward<U5>( arg5) , std::forward<U6>( arg6)) {}
0180 # endif
0181     
0182 # if !defined(BOOST_CLANG)
0183     BOOST_CONSTEXPR
0184 # endif
0185     BOOST_FUSION_GPU_ENABLED
0186     vector(typename detail::call_param<T0 >::type arg0 , typename detail::call_param<T1 >::type arg1 , typename detail::call_param<T2 >::type arg2 , typename detail::call_param<T3 >::type arg3 , typename detail::call_param<T4 >::type arg4 , typename detail::call_param<T5 >::type arg5 , typename detail::call_param<T6 >::type arg6 , typename detail::call_param<T7 >::type arg7)
0187         : vec(arg0 , arg1 , arg2 , arg3 , arg4 , arg5 , arg6 , arg7) {}
0188 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
0189     template <typename U0 , typename U1 , typename U2 , typename U3 , typename U4 , typename U5 , typename U6 , typename U7>
0190     
0191 # if !defined(BOOST_CLANG)
0192     BOOST_CXX14_CONSTEXPR
0193 # endif
0194     BOOST_FUSION_GPU_ENABLED
0195     vector(U0 && arg0 , U1 && arg1 , U2 && arg2 , U3 && arg3 , U4 && arg4 , U5 && arg5 , U6 && arg6 , U7 && arg7
0196         )
0197         : vec(std::forward<U0>( arg0) , std::forward<U1>( arg1) , std::forward<U2>( arg2) , std::forward<U3>( arg3) , std::forward<U4>( arg4) , std::forward<U5>( arg5) , std::forward<U6>( arg6) , std::forward<U7>( arg7)) {}
0198 # endif
0199     
0200 # if !defined(BOOST_CLANG)
0201     BOOST_CONSTEXPR
0202 # endif
0203     BOOST_FUSION_GPU_ENABLED
0204     vector(typename detail::call_param<T0 >::type arg0 , typename detail::call_param<T1 >::type arg1 , typename detail::call_param<T2 >::type arg2 , typename detail::call_param<T3 >::type arg3 , typename detail::call_param<T4 >::type arg4 , typename detail::call_param<T5 >::type arg5 , typename detail::call_param<T6 >::type arg6 , typename detail::call_param<T7 >::type arg7 , typename detail::call_param<T8 >::type arg8)
0205         : vec(arg0 , arg1 , arg2 , arg3 , arg4 , arg5 , arg6 , arg7 , arg8) {}
0206 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
0207     template <typename U0 , typename U1 , typename U2 , typename U3 , typename U4 , typename U5 , typename U6 , typename U7 , typename U8>
0208     
0209 # if !defined(BOOST_CLANG)
0210     BOOST_CXX14_CONSTEXPR
0211 # endif
0212     BOOST_FUSION_GPU_ENABLED
0213     vector(U0 && arg0 , U1 && arg1 , U2 && arg2 , U3 && arg3 , U4 && arg4 , U5 && arg5 , U6 && arg6 , U7 && arg7 , U8 && arg8
0214         )
0215         : vec(std::forward<U0>( arg0) , std::forward<U1>( arg1) , std::forward<U2>( arg2) , std::forward<U3>( arg3) , std::forward<U4>( arg4) , std::forward<U5>( arg5) , std::forward<U6>( arg6) , std::forward<U7>( arg7) , std::forward<U8>( arg8)) {}
0216 # endif
0217     
0218 # if !defined(BOOST_CLANG)
0219     BOOST_CONSTEXPR
0220 # endif
0221     BOOST_FUSION_GPU_ENABLED
0222     vector(typename detail::call_param<T0 >::type arg0 , typename detail::call_param<T1 >::type arg1 , typename detail::call_param<T2 >::type arg2 , typename detail::call_param<T3 >::type arg3 , typename detail::call_param<T4 >::type arg4 , typename detail::call_param<T5 >::type arg5 , typename detail::call_param<T6 >::type arg6 , typename detail::call_param<T7 >::type arg7 , typename detail::call_param<T8 >::type arg8 , typename detail::call_param<T9 >::type arg9)
0223         : vec(arg0 , arg1 , arg2 , arg3 , arg4 , arg5 , arg6 , arg7 , arg8 , arg9) {}
0224 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
0225     template <typename U0 , typename U1 , typename U2 , typename U3 , typename U4 , typename U5 , typename U6 , typename U7 , typename U8 , typename U9>
0226     
0227 # if !defined(BOOST_CLANG)
0228     BOOST_CXX14_CONSTEXPR
0229 # endif
0230     BOOST_FUSION_GPU_ENABLED
0231     vector(U0 && arg0 , U1 && arg1 , U2 && arg2 , U3 && arg3 , U4 && arg4 , U5 && arg5 , U6 && arg6 , U7 && arg7 , U8 && arg8 , U9 && arg9
0232         )
0233         : vec(std::forward<U0>( arg0) , std::forward<U1>( arg1) , std::forward<U2>( arg2) , std::forward<U3>( arg3) , std::forward<U4>( arg4) , std::forward<U5>( arg5) , std::forward<U6>( arg6) , std::forward<U7>( arg7) , std::forward<U8>( arg8) , std::forward<U9>( arg9)) {}
0234 # endif
0235     
0236 # if !defined(BOOST_CLANG)
0237     BOOST_CONSTEXPR
0238 # endif
0239     BOOST_FUSION_GPU_ENABLED
0240     vector(typename detail::call_param<T0 >::type arg0 , typename detail::call_param<T1 >::type arg1 , typename detail::call_param<T2 >::type arg2 , typename detail::call_param<T3 >::type arg3 , typename detail::call_param<T4 >::type arg4 , typename detail::call_param<T5 >::type arg5 , typename detail::call_param<T6 >::type arg6 , typename detail::call_param<T7 >::type arg7 , typename detail::call_param<T8 >::type arg8 , typename detail::call_param<T9 >::type arg9 , typename detail::call_param<T10 >::type arg10)
0241         : vec(arg0 , arg1 , arg2 , arg3 , arg4 , arg5 , arg6 , arg7 , arg8 , arg9 , arg10) {}
0242 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
0243     template <typename U0 , typename U1 , typename U2 , typename U3 , typename U4 , typename U5 , typename U6 , typename U7 , typename U8 , typename U9 , typename U10>
0244     
0245 # if !defined(BOOST_CLANG)
0246     BOOST_CXX14_CONSTEXPR
0247 # endif
0248     BOOST_FUSION_GPU_ENABLED
0249     vector(U0 && arg0 , U1 && arg1 , U2 && arg2 , U3 && arg3 , U4 && arg4 , U5 && arg5 , U6 && arg6 , U7 && arg7 , U8 && arg8 , U9 && arg9 , U10 && arg10
0250         )
0251         : vec(std::forward<U0>( arg0) , std::forward<U1>( arg1) , std::forward<U2>( arg2) , std::forward<U3>( arg3) , std::forward<U4>( arg4) , std::forward<U5>( arg5) , std::forward<U6>( arg6) , std::forward<U7>( arg7) , std::forward<U8>( arg8) , std::forward<U9>( arg9) , std::forward<U10>( arg10)) {}
0252 # endif
0253     
0254 # if !defined(BOOST_CLANG)
0255     BOOST_CONSTEXPR
0256 # endif
0257     BOOST_FUSION_GPU_ENABLED
0258     vector(typename detail::call_param<T0 >::type arg0 , typename detail::call_param<T1 >::type arg1 , typename detail::call_param<T2 >::type arg2 , typename detail::call_param<T3 >::type arg3 , typename detail::call_param<T4 >::type arg4 , typename detail::call_param<T5 >::type arg5 , typename detail::call_param<T6 >::type arg6 , typename detail::call_param<T7 >::type arg7 , typename detail::call_param<T8 >::type arg8 , typename detail::call_param<T9 >::type arg9 , typename detail::call_param<T10 >::type arg10 , typename detail::call_param<T11 >::type arg11)
0259         : vec(arg0 , arg1 , arg2 , arg3 , arg4 , arg5 , arg6 , arg7 , arg8 , arg9 , arg10 , arg11) {}
0260 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
0261     template <typename U0 , typename U1 , typename U2 , typename U3 , typename U4 , typename U5 , typename U6 , typename U7 , typename U8 , typename U9 , typename U10 , typename U11>
0262     
0263 # if !defined(BOOST_CLANG)
0264     BOOST_CXX14_CONSTEXPR
0265 # endif
0266     BOOST_FUSION_GPU_ENABLED
0267     vector(U0 && arg0 , U1 && arg1 , U2 && arg2 , U3 && arg3 , U4 && arg4 , U5 && arg5 , U6 && arg6 , U7 && arg7 , U8 && arg8 , U9 && arg9 , U10 && arg10 , U11 && arg11
0268         )
0269         : vec(std::forward<U0>( arg0) , std::forward<U1>( arg1) , std::forward<U2>( arg2) , std::forward<U3>( arg3) , std::forward<U4>( arg4) , std::forward<U5>( arg5) , std::forward<U6>( arg6) , std::forward<U7>( arg7) , std::forward<U8>( arg8) , std::forward<U9>( arg9) , std::forward<U10>( arg10) , std::forward<U11>( arg11)) {}
0270 # endif
0271     
0272 # if !defined(BOOST_CLANG)
0273     BOOST_CONSTEXPR
0274 # endif
0275     BOOST_FUSION_GPU_ENABLED
0276     vector(typename detail::call_param<T0 >::type arg0 , typename detail::call_param<T1 >::type arg1 , typename detail::call_param<T2 >::type arg2 , typename detail::call_param<T3 >::type arg3 , typename detail::call_param<T4 >::type arg4 , typename detail::call_param<T5 >::type arg5 , typename detail::call_param<T6 >::type arg6 , typename detail::call_param<T7 >::type arg7 , typename detail::call_param<T8 >::type arg8 , typename detail::call_param<T9 >::type arg9 , typename detail::call_param<T10 >::type arg10 , typename detail::call_param<T11 >::type arg11 , typename detail::call_param<T12 >::type arg12)
0277         : vec(arg0 , arg1 , arg2 , arg3 , arg4 , arg5 , arg6 , arg7 , arg8 , arg9 , arg10 , arg11 , arg12) {}
0278 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
0279     template <typename U0 , typename U1 , typename U2 , typename U3 , typename U4 , typename U5 , typename U6 , typename U7 , typename U8 , typename U9 , typename U10 , typename U11 , typename U12>
0280     
0281 # if !defined(BOOST_CLANG)
0282     BOOST_CXX14_CONSTEXPR
0283 # endif
0284     BOOST_FUSION_GPU_ENABLED
0285     vector(U0 && arg0 , U1 && arg1 , U2 && arg2 , U3 && arg3 , U4 && arg4 , U5 && arg5 , U6 && arg6 , U7 && arg7 , U8 && arg8 , U9 && arg9 , U10 && arg10 , U11 && arg11 , U12 && arg12
0286         )
0287         : vec(std::forward<U0>( arg0) , std::forward<U1>( arg1) , std::forward<U2>( arg2) , std::forward<U3>( arg3) , std::forward<U4>( arg4) , std::forward<U5>( arg5) , std::forward<U6>( arg6) , std::forward<U7>( arg7) , std::forward<U8>( arg8) , std::forward<U9>( arg9) , std::forward<U10>( arg10) , std::forward<U11>( arg11) , std::forward<U12>( arg12)) {}
0288 # endif
0289     
0290 # if !defined(BOOST_CLANG)
0291     BOOST_CONSTEXPR
0292 # endif
0293     BOOST_FUSION_GPU_ENABLED
0294     vector(typename detail::call_param<T0 >::type arg0 , typename detail::call_param<T1 >::type arg1 , typename detail::call_param<T2 >::type arg2 , typename detail::call_param<T3 >::type arg3 , typename detail::call_param<T4 >::type arg4 , typename detail::call_param<T5 >::type arg5 , typename detail::call_param<T6 >::type arg6 , typename detail::call_param<T7 >::type arg7 , typename detail::call_param<T8 >::type arg8 , typename detail::call_param<T9 >::type arg9 , typename detail::call_param<T10 >::type arg10 , typename detail::call_param<T11 >::type arg11 , typename detail::call_param<T12 >::type arg12 , typename detail::call_param<T13 >::type arg13)
0295         : vec(arg0 , arg1 , arg2 , arg3 , arg4 , arg5 , arg6 , arg7 , arg8 , arg9 , arg10 , arg11 , arg12 , arg13) {}
0296 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
0297     template <typename U0 , typename U1 , typename U2 , typename U3 , typename U4 , typename U5 , typename U6 , typename U7 , typename U8 , typename U9 , typename U10 , typename U11 , typename U12 , typename U13>
0298     
0299 # if !defined(BOOST_CLANG)
0300     BOOST_CXX14_CONSTEXPR
0301 # endif
0302     BOOST_FUSION_GPU_ENABLED
0303     vector(U0 && arg0 , U1 && arg1 , U2 && arg2 , U3 && arg3 , U4 && arg4 , U5 && arg5 , U6 && arg6 , U7 && arg7 , U8 && arg8 , U9 && arg9 , U10 && arg10 , U11 && arg11 , U12 && arg12 , U13 && arg13
0304         )
0305         : vec(std::forward<U0>( arg0) , std::forward<U1>( arg1) , std::forward<U2>( arg2) , std::forward<U3>( arg3) , std::forward<U4>( arg4) , std::forward<U5>( arg5) , std::forward<U6>( arg6) , std::forward<U7>( arg7) , std::forward<U8>( arg8) , std::forward<U9>( arg9) , std::forward<U10>( arg10) , std::forward<U11>( arg11) , std::forward<U12>( arg12) , std::forward<U13>( arg13)) {}
0306 # endif
0307     
0308 # if !defined(BOOST_CLANG)
0309     BOOST_CONSTEXPR
0310 # endif
0311     BOOST_FUSION_GPU_ENABLED
0312     vector(typename detail::call_param<T0 >::type arg0 , typename detail::call_param<T1 >::type arg1 , typename detail::call_param<T2 >::type arg2 , typename detail::call_param<T3 >::type arg3 , typename detail::call_param<T4 >::type arg4 , typename detail::call_param<T5 >::type arg5 , typename detail::call_param<T6 >::type arg6 , typename detail::call_param<T7 >::type arg7 , typename detail::call_param<T8 >::type arg8 , typename detail::call_param<T9 >::type arg9 , typename detail::call_param<T10 >::type arg10 , typename detail::call_param<T11 >::type arg11 , typename detail::call_param<T12 >::type arg12 , typename detail::call_param<T13 >::type arg13 , typename detail::call_param<T14 >::type arg14)
0313         : vec(arg0 , arg1 , arg2 , arg3 , arg4 , arg5 , arg6 , arg7 , arg8 , arg9 , arg10 , arg11 , arg12 , arg13 , arg14) {}
0314 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
0315     template <typename U0 , typename U1 , typename U2 , typename U3 , typename U4 , typename U5 , typename U6 , typename U7 , typename U8 , typename U9 , typename U10 , typename U11 , typename U12 , typename U13 , typename U14>
0316     
0317 # if !defined(BOOST_CLANG)
0318     BOOST_CXX14_CONSTEXPR
0319 # endif
0320     BOOST_FUSION_GPU_ENABLED
0321     vector(U0 && arg0 , U1 && arg1 , U2 && arg2 , U3 && arg3 , U4 && arg4 , U5 && arg5 , U6 && arg6 , U7 && arg7 , U8 && arg8 , U9 && arg9 , U10 && arg10 , U11 && arg11 , U12 && arg12 , U13 && arg13 , U14 && arg14
0322         )
0323         : vec(std::forward<U0>( arg0) , std::forward<U1>( arg1) , std::forward<U2>( arg2) , std::forward<U3>( arg3) , std::forward<U4>( arg4) , std::forward<U5>( arg5) , std::forward<U6>( arg6) , std::forward<U7>( arg7) , std::forward<U8>( arg8) , std::forward<U9>( arg9) , std::forward<U10>( arg10) , std::forward<U11>( arg11) , std::forward<U12>( arg12) , std::forward<U13>( arg13) , std::forward<U14>( arg14)) {}
0324 # endif
0325     
0326 # if !defined(BOOST_CLANG)
0327     BOOST_CONSTEXPR
0328 # endif
0329     BOOST_FUSION_GPU_ENABLED
0330     vector(typename detail::call_param<T0 >::type arg0 , typename detail::call_param<T1 >::type arg1 , typename detail::call_param<T2 >::type arg2 , typename detail::call_param<T3 >::type arg3 , typename detail::call_param<T4 >::type arg4 , typename detail::call_param<T5 >::type arg5 , typename detail::call_param<T6 >::type arg6 , typename detail::call_param<T7 >::type arg7 , typename detail::call_param<T8 >::type arg8 , typename detail::call_param<T9 >::type arg9 , typename detail::call_param<T10 >::type arg10 , typename detail::call_param<T11 >::type arg11 , typename detail::call_param<T12 >::type arg12 , typename detail::call_param<T13 >::type arg13 , typename detail::call_param<T14 >::type arg14 , typename detail::call_param<T15 >::type arg15)
0331         : vec(arg0 , arg1 , arg2 , arg3 , arg4 , arg5 , arg6 , arg7 , arg8 , arg9 , arg10 , arg11 , arg12 , arg13 , arg14 , arg15) {}
0332 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
0333     template <typename U0 , typename U1 , typename U2 , typename U3 , typename U4 , typename U5 , typename U6 , typename U7 , typename U8 , typename U9 , typename U10 , typename U11 , typename U12 , typename U13 , typename U14 , typename U15>
0334     
0335 # if !defined(BOOST_CLANG)
0336     BOOST_CXX14_CONSTEXPR
0337 # endif
0338     BOOST_FUSION_GPU_ENABLED
0339     vector(U0 && arg0 , U1 && arg1 , U2 && arg2 , U3 && arg3 , U4 && arg4 , U5 && arg5 , U6 && arg6 , U7 && arg7 , U8 && arg8 , U9 && arg9 , U10 && arg10 , U11 && arg11 , U12 && arg12 , U13 && arg13 , U14 && arg14 , U15 && arg15
0340         )
0341         : vec(std::forward<U0>( arg0) , std::forward<U1>( arg1) , std::forward<U2>( arg2) , std::forward<U3>( arg3) , std::forward<U4>( arg4) , std::forward<U5>( arg5) , std::forward<U6>( arg6) , std::forward<U7>( arg7) , std::forward<U8>( arg8) , std::forward<U9>( arg9) , std::forward<U10>( arg10) , std::forward<U11>( arg11) , std::forward<U12>( arg12) , std::forward<U13>( arg13) , std::forward<U14>( arg14) , std::forward<U15>( arg15)) {}
0342 # endif
0343     
0344 # if !defined(BOOST_CLANG)
0345     BOOST_CONSTEXPR
0346 # endif
0347     BOOST_FUSION_GPU_ENABLED
0348     vector(typename detail::call_param<T0 >::type arg0 , typename detail::call_param<T1 >::type arg1 , typename detail::call_param<T2 >::type arg2 , typename detail::call_param<T3 >::type arg3 , typename detail::call_param<T4 >::type arg4 , typename detail::call_param<T5 >::type arg5 , typename detail::call_param<T6 >::type arg6 , typename detail::call_param<T7 >::type arg7 , typename detail::call_param<T8 >::type arg8 , typename detail::call_param<T9 >::type arg9 , typename detail::call_param<T10 >::type arg10 , typename detail::call_param<T11 >::type arg11 , typename detail::call_param<T12 >::type arg12 , typename detail::call_param<T13 >::type arg13 , typename detail::call_param<T14 >::type arg14 , typename detail::call_param<T15 >::type arg15 , typename detail::call_param<T16 >::type arg16)
0349         : vec(arg0 , arg1 , arg2 , arg3 , arg4 , arg5 , arg6 , arg7 , arg8 , arg9 , arg10 , arg11 , arg12 , arg13 , arg14 , arg15 , arg16) {}
0350 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
0351     template <typename U0 , typename U1 , typename U2 , typename U3 , typename U4 , typename U5 , typename U6 , typename U7 , typename U8 , typename U9 , typename U10 , typename U11 , typename U12 , typename U13 , typename U14 , typename U15 , typename U16>
0352     
0353 # if !defined(BOOST_CLANG)
0354     BOOST_CXX14_CONSTEXPR
0355 # endif
0356     BOOST_FUSION_GPU_ENABLED
0357     vector(U0 && arg0 , U1 && arg1 , U2 && arg2 , U3 && arg3 , U4 && arg4 , U5 && arg5 , U6 && arg6 , U7 && arg7 , U8 && arg8 , U9 && arg9 , U10 && arg10 , U11 && arg11 , U12 && arg12 , U13 && arg13 , U14 && arg14 , U15 && arg15 , U16 && arg16
0358         )
0359         : vec(std::forward<U0>( arg0) , std::forward<U1>( arg1) , std::forward<U2>( arg2) , std::forward<U3>( arg3) , std::forward<U4>( arg4) , std::forward<U5>( arg5) , std::forward<U6>( arg6) , std::forward<U7>( arg7) , std::forward<U8>( arg8) , std::forward<U9>( arg9) , std::forward<U10>( arg10) , std::forward<U11>( arg11) , std::forward<U12>( arg12) , std::forward<U13>( arg13) , std::forward<U14>( arg14) , std::forward<U15>( arg15) , std::forward<U16>( arg16)) {}
0360 # endif
0361     
0362 # if !defined(BOOST_CLANG)
0363     BOOST_CONSTEXPR
0364 # endif
0365     BOOST_FUSION_GPU_ENABLED
0366     vector(typename detail::call_param<T0 >::type arg0 , typename detail::call_param<T1 >::type arg1 , typename detail::call_param<T2 >::type arg2 , typename detail::call_param<T3 >::type arg3 , typename detail::call_param<T4 >::type arg4 , typename detail::call_param<T5 >::type arg5 , typename detail::call_param<T6 >::type arg6 , typename detail::call_param<T7 >::type arg7 , typename detail::call_param<T8 >::type arg8 , typename detail::call_param<T9 >::type arg9 , typename detail::call_param<T10 >::type arg10 , typename detail::call_param<T11 >::type arg11 , typename detail::call_param<T12 >::type arg12 , typename detail::call_param<T13 >::type arg13 , typename detail::call_param<T14 >::type arg14 , typename detail::call_param<T15 >::type arg15 , typename detail::call_param<T16 >::type arg16 , typename detail::call_param<T17 >::type arg17)
0367         : vec(arg0 , arg1 , arg2 , arg3 , arg4 , arg5 , arg6 , arg7 , arg8 , arg9 , arg10 , arg11 , arg12 , arg13 , arg14 , arg15 , arg16 , arg17) {}
0368 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
0369     template <typename U0 , typename U1 , typename U2 , typename U3 , typename U4 , typename U5 , typename U6 , typename U7 , typename U8 , typename U9 , typename U10 , typename U11 , typename U12 , typename U13 , typename U14 , typename U15 , typename U16 , typename U17>
0370     
0371 # if !defined(BOOST_CLANG)
0372     BOOST_CXX14_CONSTEXPR
0373 # endif
0374     BOOST_FUSION_GPU_ENABLED
0375     vector(U0 && arg0 , U1 && arg1 , U2 && arg2 , U3 && arg3 , U4 && arg4 , U5 && arg5 , U6 && arg6 , U7 && arg7 , U8 && arg8 , U9 && arg9 , U10 && arg10 , U11 && arg11 , U12 && arg12 , U13 && arg13 , U14 && arg14 , U15 && arg15 , U16 && arg16 , U17 && arg17
0376         )
0377         : vec(std::forward<U0>( arg0) , std::forward<U1>( arg1) , std::forward<U2>( arg2) , std::forward<U3>( arg3) , std::forward<U4>( arg4) , std::forward<U5>( arg5) , std::forward<U6>( arg6) , std::forward<U7>( arg7) , std::forward<U8>( arg8) , std::forward<U9>( arg9) , std::forward<U10>( arg10) , std::forward<U11>( arg11) , std::forward<U12>( arg12) , std::forward<U13>( arg13) , std::forward<U14>( arg14) , std::forward<U15>( arg15) , std::forward<U16>( arg16) , std::forward<U17>( arg17)) {}
0378 # endif
0379     
0380 # if !defined(BOOST_CLANG)
0381     BOOST_CONSTEXPR
0382 # endif
0383     BOOST_FUSION_GPU_ENABLED
0384     vector(typename detail::call_param<T0 >::type arg0 , typename detail::call_param<T1 >::type arg1 , typename detail::call_param<T2 >::type arg2 , typename detail::call_param<T3 >::type arg3 , typename detail::call_param<T4 >::type arg4 , typename detail::call_param<T5 >::type arg5 , typename detail::call_param<T6 >::type arg6 , typename detail::call_param<T7 >::type arg7 , typename detail::call_param<T8 >::type arg8 , typename detail::call_param<T9 >::type arg9 , typename detail::call_param<T10 >::type arg10 , typename detail::call_param<T11 >::type arg11 , typename detail::call_param<T12 >::type arg12 , typename detail::call_param<T13 >::type arg13 , typename detail::call_param<T14 >::type arg14 , typename detail::call_param<T15 >::type arg15 , typename detail::call_param<T16 >::type arg16 , typename detail::call_param<T17 >::type arg17 , typename detail::call_param<T18 >::type arg18)
0385         : vec(arg0 , arg1 , arg2 , arg3 , arg4 , arg5 , arg6 , arg7 , arg8 , arg9 , arg10 , arg11 , arg12 , arg13 , arg14 , arg15 , arg16 , arg17 , arg18) {}
0386 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
0387     template <typename U0 , typename U1 , typename U2 , typename U3 , typename U4 , typename U5 , typename U6 , typename U7 , typename U8 , typename U9 , typename U10 , typename U11 , typename U12 , typename U13 , typename U14 , typename U15 , typename U16 , typename U17 , typename U18>
0388     
0389 # if !defined(BOOST_CLANG)
0390     BOOST_CXX14_CONSTEXPR
0391 # endif
0392     BOOST_FUSION_GPU_ENABLED
0393     vector(U0 && arg0 , U1 && arg1 , U2 && arg2 , U3 && arg3 , U4 && arg4 , U5 && arg5 , U6 && arg6 , U7 && arg7 , U8 && arg8 , U9 && arg9 , U10 && arg10 , U11 && arg11 , U12 && arg12 , U13 && arg13 , U14 && arg14 , U15 && arg15 , U16 && arg16 , U17 && arg17 , U18 && arg18
0394         )
0395         : vec(std::forward<U0>( arg0) , std::forward<U1>( arg1) , std::forward<U2>( arg2) , std::forward<U3>( arg3) , std::forward<U4>( arg4) , std::forward<U5>( arg5) , std::forward<U6>( arg6) , std::forward<U7>( arg7) , std::forward<U8>( arg8) , std::forward<U9>( arg9) , std::forward<U10>( arg10) , std::forward<U11>( arg11) , std::forward<U12>( arg12) , std::forward<U13>( arg13) , std::forward<U14>( arg14) , std::forward<U15>( arg15) , std::forward<U16>( arg16) , std::forward<U17>( arg17) , std::forward<U18>( arg18)) {}
0396 # endif
0397     
0398 # if !defined(BOOST_CLANG)
0399     BOOST_CONSTEXPR
0400 # endif
0401     BOOST_FUSION_GPU_ENABLED
0402     vector(typename detail::call_param<T0 >::type arg0 , typename detail::call_param<T1 >::type arg1 , typename detail::call_param<T2 >::type arg2 , typename detail::call_param<T3 >::type arg3 , typename detail::call_param<T4 >::type arg4 , typename detail::call_param<T5 >::type arg5 , typename detail::call_param<T6 >::type arg6 , typename detail::call_param<T7 >::type arg7 , typename detail::call_param<T8 >::type arg8 , typename detail::call_param<T9 >::type arg9 , typename detail::call_param<T10 >::type arg10 , typename detail::call_param<T11 >::type arg11 , typename detail::call_param<T12 >::type arg12 , typename detail::call_param<T13 >::type arg13 , typename detail::call_param<T14 >::type arg14 , typename detail::call_param<T15 >::type arg15 , typename detail::call_param<T16 >::type arg16 , typename detail::call_param<T17 >::type arg17 , typename detail::call_param<T18 >::type arg18 , typename detail::call_param<T19 >::type arg19)
0403         : vec(arg0 , arg1 , arg2 , arg3 , arg4 , arg5 , arg6 , arg7 , arg8 , arg9 , arg10 , arg11 , arg12 , arg13 , arg14 , arg15 , arg16 , arg17 , arg18 , arg19) {}
0404 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
0405     template <typename U0 , typename U1 , typename U2 , typename U3 , typename U4 , typename U5 , typename U6 , typename U7 , typename U8 , typename U9 , typename U10 , typename U11 , typename U12 , typename U13 , typename U14 , typename U15 , typename U16 , typename U17 , typename U18 , typename U19>
0406     
0407 # if !defined(BOOST_CLANG)
0408     BOOST_CXX14_CONSTEXPR
0409 # endif
0410     BOOST_FUSION_GPU_ENABLED
0411     vector(U0 && arg0 , U1 && arg1 , U2 && arg2 , U3 && arg3 , U4 && arg4 , U5 && arg5 , U6 && arg6 , U7 && arg7 , U8 && arg8 , U9 && arg9 , U10 && arg10 , U11 && arg11 , U12 && arg12 , U13 && arg13 , U14 && arg14 , U15 && arg15 , U16 && arg16 , U17 && arg17 , U18 && arg18 , U19 && arg19
0412         )
0413         : vec(std::forward<U0>( arg0) , std::forward<U1>( arg1) , std::forward<U2>( arg2) , std::forward<U3>( arg3) , std::forward<U4>( arg4) , std::forward<U5>( arg5) , std::forward<U6>( arg6) , std::forward<U7>( arg7) , std::forward<U8>( arg8) , std::forward<U9>( arg9) , std::forward<U10>( arg10) , std::forward<U11>( arg11) , std::forward<U12>( arg12) , std::forward<U13>( arg13) , std::forward<U14>( arg14) , std::forward<U15>( arg15) , std::forward<U16>( arg16) , std::forward<U17>( arg17) , std::forward<U18>( arg18) , std::forward<U19>( arg19)) {}
0414 # endif
0415         template <typename U0 , typename U1 , typename U2 , typename U3 , typename U4 , typename U5 , typename U6 , typename U7 , typename U8 , typename U9 , typename U10 , typename U11 , typename U12 , typename U13 , typename U14 , typename U15 , typename U16 , typename U17 , typename U18 , typename U19>
0416         BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0417         vector&
0418         operator=(vector<U0 , U1 , U2 , U3 , U4 , U5 , U6 , U7 , U8 , U9 , U10 , U11 , U12 , U13 , U14 , U15 , U16 , U17 , U18 , U19> const& rhs)
0419         {
0420             vec = rhs.vec;
0421             return *this;
0422         }
0423         template <typename T>
0424         BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0425         vector&
0426         operator=(T const& rhs)
0427         {
0428             vec = rhs;
0429             return *this;
0430         }
0431         BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0432         vector&
0433         operator=(vector const& rhs)
0434         {
0435             vec = rhs.vec;
0436             return *this;
0437         }
0438 # if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
0439         BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0440         vector(vector&& rhs)
0441             : vec(std::forward<vector_n>(rhs.vec)) {}
0442         BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0443         vector&
0444         operator=(vector&& rhs)
0445         {
0446             vec = std::forward<vector_n>(rhs.vec);
0447             return *this;
0448         }
0449         template <typename T>
0450         BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0451         typename boost::disable_if_c<
0452             boost::is_same<vector, typename boost::remove_cv_ref<T>::type>::value
0453           , vector&
0454         >::type
0455         operator=(T&& rhs)
0456         {
0457             vec = std::forward<T>( rhs);
0458             return *this;
0459         }
0460 # endif
0461         template <int N>
0462         BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0463         typename add_reference<
0464             typename mpl::at_c<types, N>::type
0465         >::type
0466         at_impl(mpl::int_<N> index)
0467         {
0468             return vec.at_impl(index);
0469         }
0470         template <int N>
0471         BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0472         typename add_reference<
0473             typename add_const<
0474                 typename mpl::at_c<types, N>::type
0475             >::type
0476         >::type
0477         at_impl(mpl::int_<N> index) const
0478         {
0479             return vec.at_impl(index);
0480         }
0481         template <typename I>
0482         BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0483         typename add_reference<
0484             typename mpl::at<types, I>::type
0485         >::type
0486         at_impl(I )
0487         {
0488             return vec.at_impl(mpl::int_<I::value>());
0489         }
0490         template<typename I>
0491         BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0492         typename add_reference<
0493             typename add_const<
0494                 typename mpl::at<types, I>::type
0495             >::type
0496         >::type
0497         at_impl(I ) const
0498         {
0499             return vec.at_impl(mpl::int_<I::value>());
0500         }
0501     private:
0502         BOOST_FUSION_VECTOR_CTOR_HELPER()
0503         vector_n vec;
0504     };
0505 }}