File indexing completed on 2025-01-18 09:31:10
0001
0002
0003
0004
0005
0006
0007
0008
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_>
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_
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_
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_
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_
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_
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_
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_
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_
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_
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 }}