|
Aria 3.2.6
C++23 MVVM framework — reactive, coroutine-first, ABI-layered
|
Awaitable that resolves when ANY of the input task FACTORIES completes (success or error). More...
#include <when_all.hpp>
Public Types | |
| using | Factory = std::function<Task<T>(CancellationToken)> |
| using | Result = typename WhenAnyAwaiter<T>::Result |
Public Member Functions | |
| WhenAnyCancellableAwaiter (std::vector< Factory > factories) | |
| bool | await_ready () const noexcept |
| bool | await_suspend (std::coroutine_handle<> caller) |
| Result | await_resume () |
Awaitable that resolves when ANY of the input task FACTORIES completes (success or error).
Each factory receives its own CancellationToken; when a winner is established, every loser's token is fired so cooperative inner work unwinds promptly instead of running to completion in the background.
Note: cancellation is best-effort. Inner work that ignores its token still runs to completion off-stage; only its result and exception are dropped.
| using aria::async::WhenAnyCancellableAwaiter< T >::Factory = std::function<Task<T>(CancellationToken)> |
| using aria::async::WhenAnyCancellableAwaiter< T >::Result = typename WhenAnyAwaiter<T>::Result |
|
inlineexplicit |
|
inlinenoexcept |
|
inline |
|
inline |