closure_fwd.hpp 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. /*=============================================================================
  2. Copyright (c) 2006 Tobias Schwinger
  3. http://spirit.sourceforge.net/
  4. Distributed under the Boost Software License, Version 1.0. (See accompanying
  5. file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
  6. =============================================================================*/
  7. #if !defined(BOOST_SPIRIT_CLOSURE_FWD_HPP)
  8. #define BOOST_SPIRIT_CLOSURE_FWD_HPP
  9. #include <boost/spirit/home/classic/namespace.hpp>
  10. #include <boost/spirit/home/classic/phoenix/tuples.hpp>
  11. #if !defined(BOOST_SPIRIT_CLOSURE_LIMIT)
  12. # define BOOST_SPIRIT_CLOSURE_LIMIT PHOENIX_LIMIT
  13. #endif
  14. namespace boost { namespace spirit {
  15. BOOST_SPIRIT_CLASSIC_NAMESPACE_BEGIN
  16. template<typename ClosureT>
  17. class closure_context;
  18. template <typename ClosureT>
  19. class init_closure_context;
  20. template <typename ParserT, typename ActorTupleT>
  21. struct init_closure_parser;
  22. template <
  23. typename DerivedT
  24. , typename T0 = ::phoenix::nil_t
  25. , typename T1 = ::phoenix::nil_t
  26. , typename T2 = ::phoenix::nil_t
  27. #if BOOST_SPIRIT_CLOSURE_LIMIT > 3
  28. , typename T3 = ::phoenix::nil_t
  29. , typename T4 = ::phoenix::nil_t
  30. , typename T5 = ::phoenix::nil_t
  31. #if BOOST_SPIRIT_CLOSURE_LIMIT > 6
  32. , typename T6 = ::phoenix::nil_t
  33. , typename T7 = ::phoenix::nil_t
  34. , typename T8 = ::phoenix::nil_t
  35. #if BOOST_SPIRIT_CLOSURE_LIMIT > 9
  36. , typename T9 = ::phoenix::nil_t
  37. , typename T10 = ::phoenix::nil_t
  38. , typename T11 = ::phoenix::nil_t
  39. #if BOOST_SPIRIT_CLOSURE_LIMIT > 12
  40. , typename T12 = ::phoenix::nil_t
  41. , typename T13 = ::phoenix::nil_t
  42. , typename T14 = ::phoenix::nil_t
  43. #endif
  44. #endif
  45. #endif
  46. #endif
  47. >
  48. struct closure;
  49. BOOST_SPIRIT_CLASSIC_NAMESPACE_END
  50. }} // namespace BOOST_SPIRIT_CLASSIC_NS
  51. #endif