33 Execution control library [exec]

33.13 Coroutine utilities [exec.coro.util]

33.13.4 execution​::​inline_scheduler [exec.inline.scheduler]

namespace std::execution { class inline_scheduler { class inline-sender; / exposition only template<receiver R> class inline-state; / exposition only public: using scheduler_concept = scheduler_t; constexpr inline-sender schedule() noexcept { return {}; } constexpr bool operator=(const inline_scheduler&) const noexcept = default; }; }
inline_scheduler is a class that models scheduler ([exec.sched]).
All objects of type inline_scheduler are equal.
inline-sender is an exposition-only type that satisfies sender.
The type completion_signatures_of_t<inline-sender> is completion_signatures<set_value_t()>.
Let sndr be an expression of type inline-sender, let rcvr be an expression such that receiver_of<decltype(rcvr)), CS> is true where CS is completion_signatures<set_value_t()>, then:
  • the expression connect(sndr, rcvr) has type inline-state<remove_cvref_t<decltype(rcvr))> and is potentially-throwing if and only if ((void)sndr, auto(rcvr)) is potentially-throwing, and
  • the expression get_completion_scheduler<set_value_t>(get_env(sndr)) has type​ inline_scheduler and is potentially-throwing if and only if get_env(sndr) is potentially-throwing.
Let o be a non-const lvalue of type inline-state<Rcvr>, and let REC(o) be a non-const lvalue reference to an object of type Rcvr that was initialized with the expression rcvr passed to an invocation of connect that returned o, then:
  • the object to which REC(o) refers remains valid for the lifetime of the object to which o refers, and
  • the expression start(o) is equivalent to set_value(std​::​move(REC(o)).

Follow Lee on X/Twitter - Father, Husband, Serial builder creating AI, crypto, games & web tools. We are friends :) AI Will Come To Life!

Check out: eBank.nz (Art Generator) | Netwrck.com (AI Tools) | Text-Generator.io (AI API) | BitBank.nz (Crypto AI) | ReadingTime (Kids Reading) | RewordGame | BigMultiplayerChess | WebFiddle | How.nz | Helix AI Assistant