flags.hpp 879 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. // Copyright Oliver Kowalke 2009.
  2. // Distributed under the Boost Software License, Version 1.0.
  3. // (See accompanying file LICENSE_1_0.txt or copy at
  4. // http://www.boost.org/LICENSE_1_0.txt)
  5. #ifndef BOOST_COROUTINES_DETAIL_FLAGS_H
  6. #define BOOST_COROUTINES_DETAIL_FLAGS_H
  7. #include <boost/config.hpp>
  8. #ifdef BOOST_HAS_ABI_HEADERS
  9. # include BOOST_ABI_PREFIX
  10. #endif
  11. namespace boost {
  12. namespace coroutines {
  13. namespace detail {
  14. enum flag_t
  15. {
  16. flag_started = 1 << 1,
  17. flag_running = 1 << 2,
  18. flag_complete = 1 << 3,
  19. flag_unwind_stack = 1 << 4,
  20. flag_force_unwind = 1 << 5
  21. };
  22. struct unwind_t
  23. {
  24. enum flag_t
  25. { force_unwind = 1 };
  26. };
  27. struct synthesized_t
  28. {
  29. enum flag_t
  30. { syntesized = 1 };
  31. };
  32. }}}
  33. #ifdef BOOST_HAS_ABI_HEADERS
  34. # include BOOST_ABI_SUFFIX
  35. #endif
  36. #endif // BOOST_COROUTINES_DETAIL_FLAGS_H