You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

36 line
829 B

  1. #pragma once
  2. #include <ecs/config.h>
  3. #include <ecs/core/system/parallelism/strategy/none.h>
  4. namespace ecs {
  5. namespace signature {
  6. namespace system {
  7. namespace parallelism {
  8. namespace detail
  9. {
  10. struct bound_builder_t
  11. {
  12. using bind_to_thread = void;
  13. inline decltype(auto) operator()() const noexcept
  14. {
  15. #ifndef NDEBUG
  16. return ::ecs::core::system::parallelism::none(false);
  17. #else
  18. return ::ecs::core::system::parallelism::none();
  19. #endif
  20. }
  21. };
  22. struct bound_t
  23. {
  24. constexpr decltype(auto) operator()() const noexcept
  25. { return bound_builder_t { }; }
  26. };
  27. }
  28. constexpr decltype(auto) bound = detail::bound_t { };
  29. } } } }