vector_chooser20.hpp 9.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154
  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 { namespace detail
  8. {
  9. 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>
  10. struct vector_n_chooser
  11. {
  12. typedef vector20<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19> type;
  13. };
  14. template <>
  15. struct vector_n_chooser<void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_>
  16. {
  17. typedef vector0<> type;
  18. };
  19. template <typename T0>
  20. struct vector_n_chooser<
  21. T0
  22. , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_>
  23. {
  24. typedef vector1<T0> type;
  25. };
  26. template <typename T0 , typename T1>
  27. struct vector_n_chooser<
  28. T0 , T1
  29. , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_>
  30. {
  31. typedef vector2<T0 , T1> type;
  32. };
  33. template <typename T0 , typename T1 , typename T2>
  34. struct vector_n_chooser<
  35. T0 , T1 , T2
  36. , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_>
  37. {
  38. typedef vector3<T0 , T1 , T2> type;
  39. };
  40. template <typename T0 , typename T1 , typename T2 , typename T3>
  41. struct vector_n_chooser<
  42. T0 , T1 , T2 , T3
  43. , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_>
  44. {
  45. typedef vector4<T0 , T1 , T2 , T3> type;
  46. };
  47. template <typename T0 , typename T1 , typename T2 , typename T3 , typename T4>
  48. struct vector_n_chooser<
  49. T0 , T1 , T2 , T3 , T4
  50. , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_>
  51. {
  52. typedef vector5<T0 , T1 , T2 , T3 , T4> type;
  53. };
  54. template <typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5>
  55. struct vector_n_chooser<
  56. T0 , T1 , T2 , T3 , T4 , T5
  57. , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_>
  58. {
  59. typedef vector6<T0 , T1 , T2 , T3 , T4 , T5> type;
  60. };
  61. template <typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6>
  62. struct vector_n_chooser<
  63. T0 , T1 , T2 , T3 , T4 , T5 , T6
  64. , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_>
  65. {
  66. typedef vector7<T0 , T1 , T2 , T3 , T4 , T5 , T6> type;
  67. };
  68. template <typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7>
  69. struct vector_n_chooser<
  70. T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7
  71. , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_>
  72. {
  73. typedef vector8<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7> type;
  74. };
  75. template <typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8>
  76. struct vector_n_chooser<
  77. T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8
  78. , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_>
  79. {
  80. typedef vector9<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8> type;
  81. };
  82. template <typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9>
  83. struct vector_n_chooser<
  84. T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9
  85. , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_>
  86. {
  87. typedef vector10<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9> type;
  88. };
  89. template <typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10>
  90. struct vector_n_chooser<
  91. T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10
  92. , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_>
  93. {
  94. typedef vector11<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10> type;
  95. };
  96. 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>
  97. struct vector_n_chooser<
  98. T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11
  99. , void_ , void_ , void_ , void_ , void_ , void_ , void_ , void_>
  100. {
  101. typedef vector12<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11> type;
  102. };
  103. 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>
  104. struct vector_n_chooser<
  105. T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12
  106. , void_ , void_ , void_ , void_ , void_ , void_ , void_>
  107. {
  108. typedef vector13<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12> type;
  109. };
  110. 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>
  111. struct vector_n_chooser<
  112. T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13
  113. , void_ , void_ , void_ , void_ , void_ , void_>
  114. {
  115. typedef vector14<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13> type;
  116. };
  117. 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>
  118. struct vector_n_chooser<
  119. T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14
  120. , void_ , void_ , void_ , void_ , void_>
  121. {
  122. typedef vector15<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14> type;
  123. };
  124. 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>
  125. struct vector_n_chooser<
  126. T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15
  127. , void_ , void_ , void_ , void_>
  128. {
  129. typedef vector16<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15> type;
  130. };
  131. 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>
  132. struct vector_n_chooser<
  133. T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16
  134. , void_ , void_ , void_>
  135. {
  136. typedef vector17<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16> type;
  137. };
  138. 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>
  139. struct vector_n_chooser<
  140. T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17
  141. , void_ , void_>
  142. {
  143. typedef vector18<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17> type;
  144. };
  145. 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>
  146. struct vector_n_chooser<
  147. T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18
  148. , void_>
  149. {
  150. typedef vector19<T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18> type;
  151. };
  152. }}}