vector_tie10.hpp 7.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180
  1. /*=============================================================================
  2. Copyright (c) 2001-2011 Joel de Guzman
  3. Distributed under the Boost Software License, Version 1.0. (See accompanying
  4. file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
  5. This is an auto-generated file. Do not edit!
  6. ==============================================================================*/
  7. namespace boost { namespace fusion
  8. {
  9. struct void_;
  10. namespace result_of
  11. {
  12. template <
  13. typename T0 = void_ , typename T1 = void_ , typename T2 = void_ , typename T3 = void_ , typename T4 = void_ , typename T5 = void_ , typename T6 = void_ , typename T7 = void_ , typename T8 = void_ , typename T9 = void_
  14. , typename Extra = void_
  15. >
  16. struct vector_tie;
  17. }
  18. namespace result_of
  19. {
  20. template <typename T0>
  21. struct vector_tie< T0 , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ >
  22. {
  23. typedef vector<T0&> type;
  24. };
  25. }
  26. template <typename T0>
  27. BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
  28. inline vector<T0&>
  29. vector_tie(T0 & arg0)
  30. {
  31. return vector<T0&>(
  32. arg0);
  33. }
  34. namespace result_of
  35. {
  36. template <typename T0 , typename T1>
  37. struct vector_tie< T0 , T1 , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ >
  38. {
  39. typedef vector<T0& , T1&> type;
  40. };
  41. }
  42. template <typename T0 , typename T1>
  43. BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
  44. inline vector<T0& , T1&>
  45. vector_tie(T0 & arg0 , T1 & arg1)
  46. {
  47. return vector<T0& , T1&>(
  48. arg0 , arg1);
  49. }
  50. namespace result_of
  51. {
  52. template <typename T0 , typename T1 , typename T2>
  53. struct vector_tie< T0 , T1 , T2 , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ >
  54. {
  55. typedef vector<T0& , T1& , T2&> type;
  56. };
  57. }
  58. template <typename T0 , typename T1 , typename T2>
  59. BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
  60. inline vector<T0& , T1& , T2&>
  61. vector_tie(T0 & arg0 , T1 & arg1 , T2 & arg2)
  62. {
  63. return vector<T0& , T1& , T2&>(
  64. arg0 , arg1 , arg2);
  65. }
  66. namespace result_of
  67. {
  68. template <typename T0 , typename T1 , typename T2 , typename T3>
  69. struct vector_tie< T0 , T1 , T2 , T3 , void_ , void_ , void_ , void_ , void_ , void_ , void_ >
  70. {
  71. typedef vector<T0& , T1& , T2& , T3&> type;
  72. };
  73. }
  74. template <typename T0 , typename T1 , typename T2 , typename T3>
  75. BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
  76. inline vector<T0& , T1& , T2& , T3&>
  77. vector_tie(T0 & arg0 , T1 & arg1 , T2 & arg2 , T3 & arg3)
  78. {
  79. return vector<T0& , T1& , T2& , T3&>(
  80. arg0 , arg1 , arg2 , arg3);
  81. }
  82. namespace result_of
  83. {
  84. template <typename T0 , typename T1 , typename T2 , typename T3 , typename T4>
  85. struct vector_tie< T0 , T1 , T2 , T3 , T4 , void_ , void_ , void_ , void_ , void_ , void_ >
  86. {
  87. typedef vector<T0& , T1& , T2& , T3& , T4&> type;
  88. };
  89. }
  90. template <typename T0 , typename T1 , typename T2 , typename T3 , typename T4>
  91. BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
  92. inline vector<T0& , T1& , T2& , T3& , T4&>
  93. vector_tie(T0 & arg0 , T1 & arg1 , T2 & arg2 , T3 & arg3 , T4 & arg4)
  94. {
  95. return vector<T0& , T1& , T2& , T3& , T4&>(
  96. arg0 , arg1 , arg2 , arg3 , arg4);
  97. }
  98. namespace result_of
  99. {
  100. template <typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5>
  101. struct vector_tie< T0 , T1 , T2 , T3 , T4 , T5 , void_ , void_ , void_ , void_ , void_ >
  102. {
  103. typedef vector<T0& , T1& , T2& , T3& , T4& , T5&> type;
  104. };
  105. }
  106. template <typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5>
  107. BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
  108. inline vector<T0& , T1& , T2& , T3& , T4& , T5&>
  109. vector_tie(T0 & arg0 , T1 & arg1 , T2 & arg2 , T3 & arg3 , T4 & arg4 , T5 & arg5)
  110. {
  111. return vector<T0& , T1& , T2& , T3& , T4& , T5&>(
  112. arg0 , arg1 , arg2 , arg3 , arg4 , arg5);
  113. }
  114. namespace result_of
  115. {
  116. template <typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6>
  117. struct vector_tie< T0 , T1 , T2 , T3 , T4 , T5 , T6 , void_ , void_ , void_ , void_ >
  118. {
  119. typedef vector<T0& , T1& , T2& , T3& , T4& , T5& , T6&> type;
  120. };
  121. }
  122. template <typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6>
  123. BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
  124. inline vector<T0& , T1& , T2& , T3& , T4& , T5& , T6&>
  125. vector_tie(T0 & arg0 , T1 & arg1 , T2 & arg2 , T3 & arg3 , T4 & arg4 , T5 & arg5 , T6 & arg6)
  126. {
  127. return vector<T0& , T1& , T2& , T3& , T4& , T5& , T6&>(
  128. arg0 , arg1 , arg2 , arg3 , arg4 , arg5 , arg6);
  129. }
  130. namespace result_of
  131. {
  132. template <typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7>
  133. struct vector_tie< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , void_ , void_ , void_ >
  134. {
  135. typedef vector<T0& , T1& , T2& , T3& , T4& , T5& , T6& , T7&> type;
  136. };
  137. }
  138. template <typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7>
  139. BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
  140. inline vector<T0& , T1& , T2& , T3& , T4& , T5& , T6& , T7&>
  141. vector_tie(T0 & arg0 , T1 & arg1 , T2 & arg2 , T3 & arg3 , T4 & arg4 , T5 & arg5 , T6 & arg6 , T7 & arg7)
  142. {
  143. return vector<T0& , T1& , T2& , T3& , T4& , T5& , T6& , T7&>(
  144. arg0 , arg1 , arg2 , arg3 , arg4 , arg5 , arg6 , arg7);
  145. }
  146. namespace result_of
  147. {
  148. template <typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8>
  149. struct vector_tie< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , void_ , void_ >
  150. {
  151. typedef vector<T0& , T1& , T2& , T3& , T4& , T5& , T6& , T7& , T8&> type;
  152. };
  153. }
  154. template <typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8>
  155. BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
  156. inline vector<T0& , T1& , T2& , T3& , T4& , T5& , T6& , T7& , T8&>
  157. vector_tie(T0 & arg0 , T1 & arg1 , T2 & arg2 , T3 & arg3 , T4 & arg4 , T5 & arg5 , T6 & arg6 , T7 & arg7 , T8 & arg8)
  158. {
  159. return vector<T0& , T1& , T2& , T3& , T4& , T5& , T6& , T7& , T8&>(
  160. arg0 , arg1 , arg2 , arg3 , arg4 , arg5 , arg6 , arg7 , arg8);
  161. }
  162. namespace result_of
  163. {
  164. template <typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9>
  165. struct vector_tie< T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , void_ >
  166. {
  167. typedef vector<T0& , T1& , T2& , T3& , T4& , T5& , T6& , T7& , T8& , T9&> type;
  168. };
  169. }
  170. template <typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9>
  171. BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
  172. inline vector<T0& , T1& , T2& , T3& , T4& , T5& , T6& , T7& , T8& , T9&>
  173. vector_tie(T0 & arg0 , T1 & arg1 , T2 & arg2 , T3 & arg3 , T4 & arg4 , T5 & arg5 , T6 & arg6 , T7 & arg7 , T8 & arg8 , T9 & arg9)
  174. {
  175. return vector<T0& , T1& , T2& , T3& , T4& , T5& , T6& , T7& , T8& , T9&>(
  176. arg0 , arg1 , arg2 , arg3 , arg4 , arg5 , arg6 , arg7 , arg8 , arg9);
  177. }
  178. }}