Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:31:10

0001 /*=============================================================================
0002     Copyright (c) 2001-2011 Joel de Guzman
0003     Copyright (c) 2006 Dan Marsden
0004 
0005     Distributed under the Boost Software License, Version 1.0. (See accompanying
0006     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
0007 
0008     This is an auto-generated file. Do not edit!
0009 ==============================================================================*/
0010 namespace boost { namespace fusion
0011 {
0012     struct void_;
0013     namespace result_of
0014     {
0015         template<typename T0 = fusion::void_ , typename T1 = fusion::void_ , typename T2 = fusion::void_ , typename T3 = fusion::void_ , typename T4 = fusion::void_ , typename T5 = fusion::void_ , typename T6 = fusion::void_ , typename T7 = fusion::void_ , typename T8 = fusion::void_ , typename T9 = fusion::void_ , typename T10 = fusion::void_ , typename T11 = fusion::void_ , typename T12 = fusion::void_ , typename T13 = fusion::void_ , typename T14 = fusion::void_ , typename T15 = fusion::void_ , typename T16 = fusion::void_ , typename T17 = fusion::void_ , typename T18 = fusion::void_ , typename T19 = fusion::void_ , typename T20 = fusion::void_>
0016         struct zip;
0017     }
0018     namespace result_of
0019     {
0020         template< typename T0 , typename T1 >
0021         struct zip< T0 , T1
0022                     , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_
0023         >
0024         {
0025             typedef mpl::vector< T0 , T1 > sequences;
0026             typedef typename mpl::transform<sequences, add_reference<mpl::_> >::type ref_params;
0027             typedef zip_view<typename result_of::as_vector<ref_params>::type> type;
0028         };
0029     }
0030     template<typename T0 , typename T1>
0031     BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0032     inline typename result_of::zip<const T0 , const T1>::type
0033     zip(T0 const& t0 , T1 const& t1)
0034     {
0035         fusion::vector<const T0& , const T1&> seqs(
0036             t0 , t1);
0037         return typename result_of::zip<const T0 , const T1>::type(
0038             seqs);
0039     }
0040     namespace result_of
0041     {
0042         template< typename T0 , typename T1 , typename T2 >
0043         struct zip< T0 , T1 , T2
0044                     , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_
0045         >
0046         {
0047             typedef mpl::vector< T0 , T1 , T2 > sequences;
0048             typedef typename mpl::transform<sequences, add_reference<mpl::_> >::type ref_params;
0049             typedef zip_view<typename result_of::as_vector<ref_params>::type> type;
0050         };
0051     }
0052     template<typename T0 , typename T1 , typename T2>
0053     BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0054     inline typename result_of::zip<const T0 , const T1 , const T2>::type
0055     zip(T0 const& t0 , T1 const& t1 , T2 const& t2)
0056     {
0057         fusion::vector<const T0& , const T1& , const T2&> seqs(
0058             t0 , t1 , t2);
0059         return typename result_of::zip<const T0 , const T1 , const T2>::type(
0060             seqs);
0061     }
0062     namespace result_of
0063     {
0064         template< typename T0 , typename T1 , typename T2 , typename T3 >
0065         struct zip< T0 , T1 , T2 , T3
0066                     , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_
0067         >
0068         {
0069             typedef mpl::vector< T0 , T1 , T2 , T3 > sequences;
0070             typedef typename mpl::transform<sequences, add_reference<mpl::_> >::type ref_params;
0071             typedef zip_view<typename result_of::as_vector<ref_params>::type> type;
0072         };
0073     }
0074     template<typename T0 , typename T1 , typename T2 , typename T3>
0075     BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0076     inline typename result_of::zip<const T0 , const T1 , const T2 , const T3>::type
0077     zip(T0 const& t0 , T1 const& t1 , T2 const& t2 , T3 const& t3)
0078     {
0079         fusion::vector<const T0& , const T1& , const T2& , const T3&> seqs(
0080             t0 , t1 , t2 , t3);
0081         return typename result_of::zip<const T0 , const T1 , const T2 , const T3>::type(
0082             seqs);
0083     }
0084     namespace result_of
0085     {
0086         template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 >
0087         struct zip< T0 , T1 , T2 , T3 , T4
0088                     , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_
0089         >
0090         {
0091             typedef mpl::vector< T0 , T1 , T2 , T3 , T4 > sequences;
0092             typedef typename mpl::transform<sequences, add_reference<mpl::_> >::type ref_params;
0093             typedef zip_view<typename result_of::as_vector<ref_params>::type> type;
0094         };
0095     }
0096     template<typename T0 , typename T1 , typename T2 , typename T3 , typename T4>
0097     BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0098     inline typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4>::type
0099     zip(T0 const& t0 , T1 const& t1 , T2 const& t2 , T3 const& t3 , T4 const& t4)
0100     {
0101         fusion::vector<const T0& , const T1& , const T2& , const T3& , const T4&> seqs(
0102             t0 , t1 , t2 , t3 , t4);
0103         return typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4>::type(
0104             seqs);
0105     }
0106     namespace result_of
0107     {
0108         template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 >
0109         struct zip< T0 , T1 , T2 , T3 , T4 , T5
0110                     , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_
0111         >
0112         {
0113             typedef mpl::vector< T0 , T1 , T2 , T3 , T4 , T5 > sequences;
0114             typedef typename mpl::transform<sequences, add_reference<mpl::_> >::type ref_params;
0115             typedef zip_view<typename result_of::as_vector<ref_params>::type> type;
0116         };
0117     }
0118     template<typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5>
0119     BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0120     inline typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5>::type
0121     zip(T0 const& t0 , T1 const& t1 , T2 const& t2 , T3 const& t3 , T4 const& t4 , T5 const& t5)
0122     {
0123         fusion::vector<const T0& , const T1& , const T2& , const T3& , const T4& , const T5&> seqs(
0124             t0 , t1 , t2 , t3 , t4 , t5);
0125         return typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5>::type(
0126             seqs);
0127     }
0128     namespace result_of
0129     {
0130         template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 >
0131         struct zip< T0 , T1 , T2 , T3 , T4 , T5 , T6
0132                     , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_
0133         >
0134         {
0135             typedef mpl::vector< T0 , T1 , T2 , T3 , T4 , T5 , T6 > sequences;
0136             typedef typename mpl::transform<sequences, add_reference<mpl::_> >::type ref_params;
0137             typedef zip_view<typename result_of::as_vector<ref_params>::type> type;
0138         };
0139     }
0140     template<typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6>
0141     BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0142     inline typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6>::type
0143     zip(T0 const& t0 , T1 const& t1 , T2 const& t2 , T3 const& t3 , T4 const& t4 , T5 const& t5 , T6 const& t6)
0144     {
0145         fusion::vector<const T0& , const T1& , const T2& , const T3& , const T4& , const T5& , const T6&> seqs(
0146             t0 , t1 , t2 , t3 , t4 , t5 , t6);
0147         return typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6>::type(
0148             seqs);
0149     }
0150     namespace result_of
0151     {
0152         template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 >
0153         struct zip< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7
0154                     , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_
0155         >
0156         {
0157             typedef mpl::vector< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 > sequences;
0158             typedef typename mpl::transform<sequences, add_reference<mpl::_> >::type ref_params;
0159             typedef zip_view<typename result_of::as_vector<ref_params>::type> type;
0160         };
0161     }
0162     template<typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7>
0163     BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0164     inline typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6 , const T7>::type
0165     zip(T0 const& t0 , T1 const& t1 , T2 const& t2 , T3 const& t3 , T4 const& t4 , T5 const& t5 , T6 const& t6 , T7 const& t7)
0166     {
0167         fusion::vector<const T0& , const T1& , const T2& , const T3& , const T4& , const T5& , const T6& , const T7&> seqs(
0168             t0 , t1 , t2 , t3 , t4 , t5 , t6 , t7);
0169         return typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6 , const T7>::type(
0170             seqs);
0171     }
0172     namespace result_of
0173     {
0174         template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 >
0175         struct zip< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8
0176                     , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_
0177         >
0178         {
0179             typedef mpl::vector< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 > sequences;
0180             typedef typename mpl::transform<sequences, add_reference<mpl::_> >::type ref_params;
0181             typedef zip_view<typename result_of::as_vector<ref_params>::type> type;
0182         };
0183     }
0184     template<typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8>
0185     BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0186     inline typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6 , const T7 , const T8>::type
0187     zip(T0 const& t0 , T1 const& t1 , T2 const& t2 , T3 const& t3 , T4 const& t4 , T5 const& t5 , T6 const& t6 , T7 const& t7 , T8 const& t8)
0188     {
0189         fusion::vector<const T0& , const T1& , const T2& , const T3& , const T4& , const T5& , const T6& , const T7& , const T8&> seqs(
0190             t0 , t1 , t2 , t3 , t4 , t5 , t6 , t7 , t8);
0191         return typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6 , const T7 , const T8>::type(
0192             seqs);
0193     }
0194     namespace result_of
0195     {
0196         template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 >
0197         struct zip< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9
0198                     , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_
0199         >
0200         {
0201             typedef mpl::vector< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 > sequences;
0202             typedef typename mpl::transform<sequences, add_reference<mpl::_> >::type ref_params;
0203             typedef zip_view<typename result_of::as_vector<ref_params>::type> type;
0204         };
0205     }
0206     template<typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9>
0207     BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0208     inline typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6 , const T7 , const T8 , const T9>::type
0209     zip(T0 const& t0 , T1 const& t1 , T2 const& t2 , T3 const& t3 , T4 const& t4 , T5 const& t5 , T6 const& t6 , T7 const& t7 , T8 const& t8 , T9 const& t9)
0210     {
0211         fusion::vector<const T0& , const T1& , const T2& , const T3& , const T4& , const T5& , const T6& , const T7& , const T8& , const T9&> seqs(
0212             t0 , t1 , t2 , t3 , t4 , t5 , t6 , t7 , t8 , t9);
0213         return typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6 , const T7 , const T8 , const T9>::type(
0214             seqs);
0215     }
0216     namespace result_of
0217     {
0218         template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 >
0219         struct zip< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10
0220                     , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_
0221         >
0222         {
0223             typedef mpl::vector< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 > sequences;
0224             typedef typename mpl::transform<sequences, add_reference<mpl::_> >::type ref_params;
0225             typedef zip_view<typename result_of::as_vector<ref_params>::type> type;
0226         };
0227     }
0228     template<typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10>
0229     BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0230     inline typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6 , const T7 , const T8 , const T9 , const T10>::type
0231     zip(T0 const& t0 , T1 const& t1 , T2 const& t2 , T3 const& t3 , T4 const& t4 , T5 const& t5 , T6 const& t6 , T7 const& t7 , T8 const& t8 , T9 const& t9 , T10 const& t10)
0232     {
0233         fusion::vector<const T0& , const T1& , const T2& , const T3& , const T4& , const T5& , const T6& , const T7& , const T8& , const T9& , const T10&> seqs(
0234             t0 , t1 , t2 , t3 , t4 , t5 , t6 , t7 , t8 , t9 , t10);
0235         return typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6 , const T7 , const T8 , const T9 , const T10>::type(
0236             seqs);
0237     }
0238     namespace result_of
0239     {
0240         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 >
0241         struct zip< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11
0242                     , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_
0243         >
0244         {
0245             typedef mpl::vector< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 > sequences;
0246             typedef typename mpl::transform<sequences, add_reference<mpl::_> >::type ref_params;
0247             typedef zip_view<typename result_of::as_vector<ref_params>::type> type;
0248         };
0249     }
0250     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>
0251     BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0252     inline typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6 , const T7 , const T8 , const T9 , const T10 , const T11>::type
0253     zip(T0 const& t0 , T1 const& t1 , T2 const& t2 , T3 const& t3 , T4 const& t4 , T5 const& t5 , T6 const& t6 , T7 const& t7 , T8 const& t8 , T9 const& t9 , T10 const& t10 , T11 const& t11)
0254     {
0255         fusion::vector<const T0& , const T1& , const T2& , const T3& , const T4& , const T5& , const T6& , const T7& , const T8& , const T9& , const T10& , const T11&> seqs(
0256             t0 , t1 , t2 , t3 , t4 , t5 , t6 , t7 , t8 , t9 , t10 , t11);
0257         return typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6 , const T7 , const T8 , const T9 , const T10 , const T11>::type(
0258             seqs);
0259     }
0260     namespace result_of
0261     {
0262         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 >
0263         struct zip< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12
0264                     , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_
0265         >
0266         {
0267             typedef mpl::vector< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 > sequences;
0268             typedef typename mpl::transform<sequences, add_reference<mpl::_> >::type ref_params;
0269             typedef zip_view<typename result_of::as_vector<ref_params>::type> type;
0270         };
0271     }
0272     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>
0273     BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0274     inline typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6 , const T7 , const T8 , const T9 , const T10 , const T11 , const T12>::type
0275     zip(T0 const& t0 , T1 const& t1 , T2 const& t2 , T3 const& t3 , T4 const& t4 , T5 const& t5 , T6 const& t6 , T7 const& t7 , T8 const& t8 , T9 const& t9 , T10 const& t10 , T11 const& t11 , T12 const& t12)
0276     {
0277         fusion::vector<const T0& , const T1& , const T2& , const T3& , const T4& , const T5& , const T6& , const T7& , const T8& , const T9& , const T10& , const T11& , const T12&> seqs(
0278             t0 , t1 , t2 , t3 , t4 , t5 , t6 , t7 , t8 , t9 , t10 , t11 , t12);
0279         return typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6 , const T7 , const T8 , const T9 , const T10 , const T11 , const T12>::type(
0280             seqs);
0281     }
0282     namespace result_of
0283     {
0284         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 >
0285         struct zip< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13
0286                     , void_ , void_ , void_ , void_ , void_ , void_ , void_
0287         >
0288         {
0289             typedef mpl::vector< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 > sequences;
0290             typedef typename mpl::transform<sequences, add_reference<mpl::_> >::type ref_params;
0291             typedef zip_view<typename result_of::as_vector<ref_params>::type> type;
0292         };
0293     }
0294     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>
0295     BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0296     inline typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6 , const T7 , const T8 , const T9 , const T10 , const T11 , const T12 , const T13>::type
0297     zip(T0 const& t0 , T1 const& t1 , T2 const& t2 , T3 const& t3 , T4 const& t4 , T5 const& t5 , T6 const& t6 , T7 const& t7 , T8 const& t8 , T9 const& t9 , T10 const& t10 , T11 const& t11 , T12 const& t12 , T13 const& t13)
0298     {
0299         fusion::vector<const T0& , const T1& , const T2& , const T3& , const T4& , const T5& , const T6& , const T7& , const T8& , const T9& , const T10& , const T11& , const T12& , const T13&> seqs(
0300             t0 , t1 , t2 , t3 , t4 , t5 , t6 , t7 , t8 , t9 , t10 , t11 , t12 , t13);
0301         return typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6 , const T7 , const T8 , const T9 , const T10 , const T11 , const T12 , const T13>::type(
0302             seqs);
0303     }
0304     namespace result_of
0305     {
0306         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 >
0307         struct zip< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14
0308                     , void_ , void_ , void_ , void_ , void_ , void_
0309         >
0310         {
0311             typedef mpl::vector< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 > sequences;
0312             typedef typename mpl::transform<sequences, add_reference<mpl::_> >::type ref_params;
0313             typedef zip_view<typename result_of::as_vector<ref_params>::type> type;
0314         };
0315     }
0316     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>
0317     BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0318     inline typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6 , const T7 , const T8 , const T9 , const T10 , const T11 , const T12 , const T13 , const T14>::type
0319     zip(T0 const& t0 , T1 const& t1 , T2 const& t2 , T3 const& t3 , T4 const& t4 , T5 const& t5 , T6 const& t6 , T7 const& t7 , T8 const& t8 , T9 const& t9 , T10 const& t10 , T11 const& t11 , T12 const& t12 , T13 const& t13 , T14 const& t14)
0320     {
0321         fusion::vector<const T0& , const T1& , const T2& , const T3& , const T4& , const T5& , const T6& , const T7& , const T8& , const T9& , const T10& , const T11& , const T12& , const T13& , const T14&> seqs(
0322             t0 , t1 , t2 , t3 , t4 , t5 , t6 , t7 , t8 , t9 , t10 , t11 , t12 , t13 , t14);
0323         return typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6 , const T7 , const T8 , const T9 , const T10 , const T11 , const T12 , const T13 , const T14>::type(
0324             seqs);
0325     }
0326     namespace result_of
0327     {
0328         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 >
0329         struct zip< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15
0330                     , void_ , void_ , void_ , void_ , void_
0331         >
0332         {
0333             typedef mpl::vector< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 > sequences;
0334             typedef typename mpl::transform<sequences, add_reference<mpl::_> >::type ref_params;
0335             typedef zip_view<typename result_of::as_vector<ref_params>::type> type;
0336         };
0337     }
0338     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>
0339     BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0340     inline typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6 , const T7 , const T8 , const T9 , const T10 , const T11 , const T12 , const T13 , const T14 , const T15>::type
0341     zip(T0 const& t0 , T1 const& t1 , T2 const& t2 , T3 const& t3 , T4 const& t4 , T5 const& t5 , T6 const& t6 , T7 const& t7 , T8 const& t8 , T9 const& t9 , T10 const& t10 , T11 const& t11 , T12 const& t12 , T13 const& t13 , T14 const& t14 , T15 const& t15)
0342     {
0343         fusion::vector<const T0& , const T1& , const T2& , const T3& , const T4& , const T5& , const T6& , const T7& , const T8& , const T9& , const T10& , const T11& , const T12& , const T13& , const T14& , const T15&> seqs(
0344             t0 , t1 , t2 , t3 , t4 , t5 , t6 , t7 , t8 , t9 , t10 , t11 , t12 , t13 , t14 , t15);
0345         return typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6 , const T7 , const T8 , const T9 , const T10 , const T11 , const T12 , const T13 , const T14 , const T15>::type(
0346             seqs);
0347     }
0348     namespace result_of
0349     {
0350         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 >
0351         struct zip< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16
0352                     , void_ , void_ , void_ , void_
0353         >
0354         {
0355             typedef mpl::vector< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 > sequences;
0356             typedef typename mpl::transform<sequences, add_reference<mpl::_> >::type ref_params;
0357             typedef zip_view<typename result_of::as_vector<ref_params>::type> type;
0358         };
0359     }
0360     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>
0361     BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0362     inline typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6 , const T7 , const T8 , const T9 , const T10 , const T11 , const T12 , const T13 , const T14 , const T15 , const T16>::type
0363     zip(T0 const& t0 , T1 const& t1 , T2 const& t2 , T3 const& t3 , T4 const& t4 , T5 const& t5 , T6 const& t6 , T7 const& t7 , T8 const& t8 , T9 const& t9 , T10 const& t10 , T11 const& t11 , T12 const& t12 , T13 const& t13 , T14 const& t14 , T15 const& t15 , T16 const& t16)
0364     {
0365         fusion::vector<const T0& , const T1& , const T2& , const T3& , const T4& , const T5& , const T6& , const T7& , const T8& , const T9& , const T10& , const T11& , const T12& , const T13& , const T14& , const T15& , const T16&> seqs(
0366             t0 , t1 , t2 , t3 , t4 , t5 , t6 , t7 , t8 , t9 , t10 , t11 , t12 , t13 , t14 , t15 , t16);
0367         return typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6 , const T7 , const T8 , const T9 , const T10 , const T11 , const T12 , const T13 , const T14 , const T15 , const T16>::type(
0368             seqs);
0369     }
0370     namespace result_of
0371     {
0372         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 >
0373         struct zip< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17
0374                     , void_ , void_ , void_
0375         >
0376         {
0377             typedef mpl::vector< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 > sequences;
0378             typedef typename mpl::transform<sequences, add_reference<mpl::_> >::type ref_params;
0379             typedef zip_view<typename result_of::as_vector<ref_params>::type> type;
0380         };
0381     }
0382     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>
0383     BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0384     inline typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6 , const T7 , const T8 , const T9 , const T10 , const T11 , const T12 , const T13 , const T14 , const T15 , const T16 , const T17>::type
0385     zip(T0 const& t0 , T1 const& t1 , T2 const& t2 , T3 const& t3 , T4 const& t4 , T5 const& t5 , T6 const& t6 , T7 const& t7 , T8 const& t8 , T9 const& t9 , T10 const& t10 , T11 const& t11 , T12 const& t12 , T13 const& t13 , T14 const& t14 , T15 const& t15 , T16 const& t16 , T17 const& t17)
0386     {
0387         fusion::vector<const T0& , const T1& , const T2& , const T3& , const T4& , const T5& , const T6& , const T7& , const T8& , const T9& , const T10& , const T11& , const T12& , const T13& , const T14& , const T15& , const T16& , const T17&> seqs(
0388             t0 , t1 , t2 , t3 , t4 , t5 , t6 , t7 , t8 , t9 , t10 , t11 , t12 , t13 , t14 , t15 , t16 , t17);
0389         return typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6 , const T7 , const T8 , const T9 , const T10 , const T11 , const T12 , const T13 , const T14 , const T15 , const T16 , const T17>::type(
0390             seqs);
0391     }
0392     namespace result_of
0393     {
0394         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 >
0395         struct zip< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18
0396                     , void_ , void_
0397         >
0398         {
0399             typedef mpl::vector< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 > sequences;
0400             typedef typename mpl::transform<sequences, add_reference<mpl::_> >::type ref_params;
0401             typedef zip_view<typename result_of::as_vector<ref_params>::type> type;
0402         };
0403     }
0404     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>
0405     BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0406     inline typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6 , const T7 , const T8 , const T9 , const T10 , const T11 , const T12 , const T13 , const T14 , const T15 , const T16 , const T17 , const T18>::type
0407     zip(T0 const& t0 , T1 const& t1 , T2 const& t2 , T3 const& t3 , T4 const& t4 , T5 const& t5 , T6 const& t6 , T7 const& t7 , T8 const& t8 , T9 const& t9 , T10 const& t10 , T11 const& t11 , T12 const& t12 , T13 const& t13 , T14 const& t14 , T15 const& t15 , T16 const& t16 , T17 const& t17 , T18 const& t18)
0408     {
0409         fusion::vector<const T0& , const T1& , const T2& , const T3& , const T4& , const T5& , const T6& , const T7& , const T8& , const T9& , const T10& , const T11& , const T12& , const T13& , const T14& , const T15& , const T16& , const T17& , const T18&> seqs(
0410             t0 , t1 , t2 , t3 , t4 , t5 , t6 , t7 , t8 , t9 , t10 , t11 , t12 , t13 , t14 , t15 , t16 , t17 , t18);
0411         return typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6 , const T7 , const T8 , const T9 , const T10 , const T11 , const T12 , const T13 , const T14 , const T15 , const T16 , const T17 , const T18>::type(
0412             seqs);
0413     }
0414     namespace result_of
0415     {
0416         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 >
0417         struct zip< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19
0418                     , void_
0419         >
0420         {
0421             typedef mpl::vector< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 > sequences;
0422             typedef typename mpl::transform<sequences, add_reference<mpl::_> >::type ref_params;
0423             typedef zip_view<typename result_of::as_vector<ref_params>::type> type;
0424         };
0425     }
0426     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>
0427     BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
0428     inline typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6 , const T7 , const T8 , const T9 , const T10 , const T11 , const T12 , const T13 , const T14 , const T15 , const T16 , const T17 , const T18 , const T19>::type
0429     zip(T0 const& t0 , T1 const& t1 , T2 const& t2 , T3 const& t3 , T4 const& t4 , T5 const& t5 , T6 const& t6 , T7 const& t7 , T8 const& t8 , T9 const& t9 , T10 const& t10 , T11 const& t11 , T12 const& t12 , T13 const& t13 , T14 const& t14 , T15 const& t15 , T16 const& t16 , T17 const& t17 , T18 const& t18 , T19 const& t19)
0430     {
0431         fusion::vector<const T0& , const T1& , const T2& , const T3& , const T4& , const T5& , const T6& , const T7& , const T8& , const T9& , const T10& , const T11& , const T12& , const T13& , const T14& , const T15& , const T16& , const T17& , const T18& , const T19&> seqs(
0432             t0 , t1 , t2 , t3 , t4 , t5 , t6 , t7 , t8 , t9 , t10 , t11 , t12 , t13 , t14 , t15 , t16 , t17 , t18 , t19);
0433         return typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6 , const T7 , const T8 , const T9 , const T10 , const T11 , const T12 , const T13 , const T14 , const T15 , const T16 , const T17 , const T18 , const T19>::type(
0434             seqs);
0435     }
0436 }}