#pragma once #include "coro/concepts/awaitable.hpp" #include #include namespace coro::concepts { template concept executor = requires(type t, std::coroutine_handle<> c) { { t.schedule() } ->coro::concepts::awaiter; { t.yield() } ->coro::concepts::awaiter; { t.resume(c) } ->std::same_as; }; } // namespace coro::concepts