20 template<
typename Scope>
24 template<
typename Scope>
26 auto operator()(
Scope& scope)
const ->
bool {
29 "request_stop() member function must return a boolean.");
33 "request_stop() customizations must return a boolean.");
52 template<
typename Scope, concepts::Sender Send>
54 auto operator()(
Scope& scope, Send&& sender)
const {
56 "nest() customizations must return a Sender.");
88 template<
typename Scope, concepts::NextSender<meta::EnvOf<Scope>> Send>
94 "spawn() customizations must return a maybe fallible void.");
98 return start_detached(
nest(scope, util::forward<Send>(sender)), util::move(allocator));
133 template<
typename Scope, concepts::SenderIn<meta::EnvOf<Scope>> Send>
139 "nest() customizations must return a maybe fallible Sender.");
143 return ensure_started(
nest(scope, util::forward<Send>(sender)), util::move(allocator));
Definition operations.h:128
Definition tag_invoke.h:33
A type which models an async scope.
Definition scope.h:180
constexpr auto ensure_started
Eagerly start a sender.
Definition ensure_started.h:333
constexpr auto stopped
Definition just.h:91
constexpr auto spawn
Spawn a sender inside a scope.
Definition scope.h:129
constexpr auto start_detached
Start a sender without waiting for it to complete.
Definition start_detached.h:134
constexpr auto request_stop
Request that a scope stop.
Definition scope.h:48
constexpr auto spawn_future
Spawn a sender inside a scope, and return a future to the result.
Definition scope.h:169
constexpr auto get_env
Definition get_env.h:27
constexpr auto get_allocator
Definition get_allocator.h:27
constexpr auto nest
Nest a sender inside a scope.
Definition scope.h:84
constexpr tag_invoke_detail::TagInvokeFn tag_invoke
Definition tag_invoke.h:22
constexpr auto unwrap_reference
Definition unwrap_reference.h:20
Defines the sequence sender concepts and related CPOs.
auto operator()(Scope &scope, Send &&sender) const
Definition scope.h:134
auto operator()(Scope &scope, Send &&sender) const
Definition scope.h:89