17 requires detail::async_assignment_source<T, U>
20 if constexpr (!is_async_alias_v<T>)
22 if constexpr (detail::async_source<U>)
26 *
this = std::move(replacement);
30 *
this =
Async<T>(std::forward<U>(rhs));
65 requires(!is_async_alias_v<T> && std::constructible_from<T, T &&>)
67 return this->
write().move_from_wait();
100 return TaskFactoryAwaiter<std::remove_reference_t<A>>(std::move(a), *
this);
Concepts and helpers for composing Async expressions.
Defines shared and concrete task coroutine promises.
Awaitable capabilities for shared reads and exclusive mutable access to Async<T>.
Async<T> is a container for coroutine-safe asynchronous read/write.
Definition async/async.hpp:93
T move_from_wait()
Block until the value is available, then move it out of the Async.
Definition async_impl.hpp:64
T const & get_wait() const
Block the current thread until the value becomes available.
Definition async_impl.hpp:52
Async & operator=(U &&rhs)
Assign an immediate or heterogeneous async value.
void wait() const
Block the current thread until the value becomes available.
Definition async_impl.hpp:42
Scheduler interface for initial AsyncTask submission and host-side progress.
Definition scheduler.hpp:89
auto await_transform(A &a)
Transform an awaiter to transfer one task ownership claim.
Definition async_impl.hpp:74
void async_initialize(Async< T > &destination, U &&source)
Initialize a fresh independent async value from another async source.
Definition async_ops.hpp:300
void async_assign(WriteBuffer< T > destination, U &&source)
Assign an awaitable value into an existing independent-value timeline.
Definition async_ops.hpp:310
This represents the reverse-mode adjoint for functions of complex variables, assuming a real-valued s...
Definition async/async.hpp:26
ReadBuffer< T > read(Async< T > const &a)
Convenience helper that forwards to Async<T>::read().
Definition async/async.hpp:540
WriteBuffer< T > write(Async< T > &a)
Convenience helper that forwards to Async<T>::write().
Definition async/async.hpp:545
Forwarding awaiter that transfers one task ownership claim to an awaitable.
Definition async_task_promise.hpp:885
Forwarding awaiter that transfers shared task ownership through a TaskFactory.
Definition async_task_promise.hpp:953