1 /*============================================================================= 2 Copyright (c) 2001-2011 Joel de Guzman 3 Copyright (c) 2006 Dan Marsden 4 5 Distributed under the Boost Software License, Version 1.0. (See accompanying 6 file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 7 8 This is an auto-generated file. Do not edit! 9 ==============================================================================*/ 10 namespace boost { namespace fusion 11 { 12 struct void_; 13 namespace result_of 14 { 15 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_> 16 struct zip; 17 } 18 namespace result_of 19 { 20 template< typename T0 , typename T1 > 21 struct zip< T0 , T1 22 , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ 23 > 24 { 25 typedef mpl::vector< T0 , T1 > sequences; 26 typedef typename mpl::transform<sequences, add_reference<mpl::_> >::type ref_params; 27 typedef zip_view<typename result_of::as_vector<ref_params>::type> type; 28 }; 29 } 30 template<typename T0 , typename T1> 31 BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED 32 inline typename result_of::zip<const T0 , const T1>::type zip(T0 const & t0,T1 const & t1)33 zip(T0 const& t0 , T1 const& t1) 34 { 35 fusion::vector<const T0& , const T1&> seqs( 36 t0 , t1); 37 return typename result_of::zip<const T0 , const T1>::type( 38 seqs); 39 } 40 namespace result_of 41 { 42 template< typename T0 , typename T1 , typename T2 > 43 struct zip< T0 , T1 , T2 44 , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ 45 > 46 { 47 typedef mpl::vector< T0 , T1 , T2 > sequences; 48 typedef typename mpl::transform<sequences, add_reference<mpl::_> >::type ref_params; 49 typedef zip_view<typename result_of::as_vector<ref_params>::type> type; 50 }; 51 } 52 template<typename T0 , typename T1 , typename T2> 53 BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED 54 inline typename result_of::zip<const T0 , const T1 , const T2>::type zip(T0 const & t0,T1 const & t1,T2 const & t2)55 zip(T0 const& t0 , T1 const& t1 , T2 const& t2) 56 { 57 fusion::vector<const T0& , const T1& , const T2&> seqs( 58 t0 , t1 , t2); 59 return typename result_of::zip<const T0 , const T1 , const T2>::type( 60 seqs); 61 } 62 namespace result_of 63 { 64 template< typename T0 , typename T1 , typename T2 , typename T3 > 65 struct zip< T0 , T1 , T2 , T3 66 , void_ , void_ , void_ , void_ , void_ , void_ , void_ 67 > 68 { 69 typedef mpl::vector< T0 , T1 , T2 , T3 > sequences; 70 typedef typename mpl::transform<sequences, add_reference<mpl::_> >::type ref_params; 71 typedef zip_view<typename result_of::as_vector<ref_params>::type> type; 72 }; 73 } 74 template<typename T0 , typename T1 , typename T2 , typename T3> 75 BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED 76 inline typename result_of::zip<const T0 , const T1 , const T2 , const T3>::type zip(T0 const & t0,T1 const & t1,T2 const & t2,T3 const & t3)77 zip(T0 const& t0 , T1 const& t1 , T2 const& t2 , T3 const& t3) 78 { 79 fusion::vector<const T0& , const T1& , const T2& , const T3&> seqs( 80 t0 , t1 , t2 , t3); 81 return typename result_of::zip<const T0 , const T1 , const T2 , const T3>::type( 82 seqs); 83 } 84 namespace result_of 85 { 86 template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 > 87 struct zip< T0 , T1 , T2 , T3 , T4 88 , void_ , void_ , void_ , void_ , void_ , void_ 89 > 90 { 91 typedef mpl::vector< T0 , T1 , T2 , T3 , T4 > sequences; 92 typedef typename mpl::transform<sequences, add_reference<mpl::_> >::type ref_params; 93 typedef zip_view<typename result_of::as_vector<ref_params>::type> type; 94 }; 95 } 96 template<typename T0 , typename T1 , typename T2 , typename T3 , typename T4> 97 BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED 98 inline typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4>::type zip(T0 const & t0,T1 const & t1,T2 const & t2,T3 const & t3,T4 const & t4)99 zip(T0 const& t0 , T1 const& t1 , T2 const& t2 , T3 const& t3 , T4 const& t4) 100 { 101 fusion::vector<const T0& , const T1& , const T2& , const T3& , const T4&> seqs( 102 t0 , t1 , t2 , t3 , t4); 103 return typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4>::type( 104 seqs); 105 } 106 namespace result_of 107 { 108 template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 > 109 struct zip< T0 , T1 , T2 , T3 , T4 , T5 110 , void_ , void_ , void_ , void_ , void_ 111 > 112 { 113 typedef mpl::vector< T0 , T1 , T2 , T3 , T4 , T5 > sequences; 114 typedef typename mpl::transform<sequences, add_reference<mpl::_> >::type ref_params; 115 typedef zip_view<typename result_of::as_vector<ref_params>::type> type; 116 }; 117 } 118 template<typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5> 119 BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED 120 inline typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5>::type zip(T0 const & t0,T1 const & t1,T2 const & t2,T3 const & t3,T4 const & t4,T5 const & t5)121 zip(T0 const& t0 , T1 const& t1 , T2 const& t2 , T3 const& t3 , T4 const& t4 , T5 const& t5) 122 { 123 fusion::vector<const T0& , const T1& , const T2& , const T3& , const T4& , const T5&> seqs( 124 t0 , t1 , t2 , t3 , t4 , t5); 125 return typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5>::type( 126 seqs); 127 } 128 namespace result_of 129 { 130 template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 > 131 struct zip< T0 , T1 , T2 , T3 , T4 , T5 , T6 132 , void_ , void_ , void_ , void_ 133 > 134 { 135 typedef mpl::vector< T0 , T1 , T2 , T3 , T4 , T5 , T6 > sequences; 136 typedef typename mpl::transform<sequences, add_reference<mpl::_> >::type ref_params; 137 typedef zip_view<typename result_of::as_vector<ref_params>::type> type; 138 }; 139 } 140 template<typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6> 141 BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED 142 inline typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6>::type zip(T0 const & t0,T1 const & t1,T2 const & t2,T3 const & t3,T4 const & t4,T5 const & t5,T6 const & t6)143 zip(T0 const& t0 , T1 const& t1 , T2 const& t2 , T3 const& t3 , T4 const& t4 , T5 const& t5 , T6 const& t6) 144 { 145 fusion::vector<const T0& , const T1& , const T2& , const T3& , const T4& , const T5& , const T6&> seqs( 146 t0 , t1 , t2 , t3 , t4 , t5 , t6); 147 return typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6>::type( 148 seqs); 149 } 150 namespace result_of 151 { 152 template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 > 153 struct zip< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 154 , void_ , void_ , void_ 155 > 156 { 157 typedef mpl::vector< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 > sequences; 158 typedef typename mpl::transform<sequences, add_reference<mpl::_> >::type ref_params; 159 typedef zip_view<typename result_of::as_vector<ref_params>::type> type; 160 }; 161 } 162 template<typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7> 163 BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED 164 inline typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6 , const T7>::type 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)165 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) 166 { 167 fusion::vector<const T0& , const T1& , const T2& , const T3& , const T4& , const T5& , const T6& , const T7&> seqs( 168 t0 , t1 , t2 , t3 , t4 , t5 , t6 , t7); 169 return typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6 , const T7>::type( 170 seqs); 171 } 172 namespace result_of 173 { 174 template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 > 175 struct zip< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 176 , void_ , void_ 177 > 178 { 179 typedef mpl::vector< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 > sequences; 180 typedef typename mpl::transform<sequences, add_reference<mpl::_> >::type ref_params; 181 typedef zip_view<typename result_of::as_vector<ref_params>::type> type; 182 }; 183 } 184 template<typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8> 185 BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED 186 inline typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6 , const T7 , const T8>::type 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)187 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) 188 { 189 fusion::vector<const T0& , const T1& , const T2& , const T3& , const T4& , const T5& , const T6& , const T7& , const T8&> seqs( 190 t0 , t1 , t2 , t3 , t4 , t5 , t6 , t7 , t8); 191 return typename result_of::zip<const T0 , const T1 , const T2 , const T3 , const T4 , const T5 , const T6 , const T7 , const T8>::type( 192 seqs); 193 } 194 namespace result_of 195 { 196 template< typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 > 197 struct zip< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 198 , void_ 199 > 200 { 201 typedef mpl::vector< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 > sequences; 202 typedef typename mpl::transform<sequences, add_reference<mpl::_> >::type ref_params; 203 typedef zip_view<typename result_of::as_vector<ref_params>::type> type; 204 }; 205 } 206 template<typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9> 207 BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED 208 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 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)209 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) 210 { 211 fusion::vector<const T0& , const T1& , const T2& , const T3& , const T4& , const T5& , const T6& , const T7& , const T8& , const T9&> seqs( 212 t0 , t1 , t2 , t3 , t4 , t5 , t6 , t7 , t8 , t9); 213 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( 214 seqs); 215 } 216 }} 217