apply_wrap.hpp 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. // Copyright Aleksey Gurtovoy 2000-2004
  2. //
  3. // Distributed under the Boost Software License, Version 1.0.
  4. // (See accompanying file LICENSE_1_0.txt or copy at
  5. // http://www.boost.org/LICENSE_1_0.txt)
  6. //
  7. // Preprocessed version of "boost/mpl/apply_wrap.hpp" header
  8. // -- DO NOT modify by hand!
  9. namespace boost { namespace mpl {
  10. template<
  11. typename F
  12. , typename has_apply_ = typename aux::has_apply<F>::type
  13. >
  14. struct apply_wrap0
  15. : F::template apply< >
  16. {
  17. };
  18. template< typename F >
  19. struct apply_wrap0< F,true_ >
  20. : F::apply
  21. {
  22. };
  23. template<
  24. typename F, typename T1
  25. >
  26. struct apply_wrap1
  27. : F::template apply<T1>
  28. {
  29. };
  30. template<
  31. typename F, typename T1, typename T2
  32. >
  33. struct apply_wrap2
  34. : F::template apply< T1,T2 >
  35. {
  36. };
  37. template<
  38. typename F, typename T1, typename T2, typename T3
  39. >
  40. struct apply_wrap3
  41. : F::template apply< T1,T2,T3 >
  42. {
  43. };
  44. template<
  45. typename F, typename T1, typename T2, typename T3, typename T4
  46. >
  47. struct apply_wrap4
  48. : F::template apply< T1,T2,T3,T4 >
  49. {
  50. };
  51. template<
  52. typename F, typename T1, typename T2, typename T3, typename T4
  53. , typename T5
  54. >
  55. struct apply_wrap5
  56. : F::template apply< T1,T2,T3,T4,T5 >
  57. {
  58. };
  59. }}