Proxy awaitable that wraps any co_await inside the task and checks for cancellation on resumption. More...
#include "task.h"
Public Member Functions | |
bool | await_ready () noexcept(noexcept(awaitable.await_ready())) |
Wrapper for the awaitable's await_ready. More... | |
decltype(auto) | await_resume () |
Wrapper for the awaitable's await_resume, throws if the task is cancelled. More... | |
template<typename T > | |
decltype(auto) | await_suspend (T &&handle) noexcept(noexcept(awaitable.await_suspend(std::forward< T >(handle)))) |
Wrapper for the awaitable's await_suspend. More... | |
Public Attributes | |
A | awaitable |
The inner awaitable being awaited. More... | |
const task::promise_base & | promise |
The promise_t object bound to this proxy. More... | |
Proxy awaitable that wraps any co_await inside the task and checks for cancellation on resumption.
|
inlinenoexcept |
Wrapper for the awaitable's await_ready.
References dpp::detail::task::promise_base::proxy_awaiter< A >::awaitable.
|
inline |
Wrapper for the awaitable's await_resume, throws if the task is cancelled.
dpp::task_cancelled_exception | If the task was cancelled |
References dpp::detail::task::promise_base::proxy_awaiter< A >::awaitable, dpp::detail::task::promise_base::cancelled, and dpp::detail::task::promise_base::proxy_awaiter< A >::promise.
|
inlinenoexcept |
Wrapper for the awaitable's await_suspend.
References dpp::detail::task::promise_base::proxy_awaiter< A >::awaitable.
A dpp::detail::task::promise_base::proxy_awaiter< A >::awaitable |
The inner awaitable being awaited.
Referenced by dpp::detail::task::promise_base::proxy_awaiter< A >::await_ready(), dpp::detail::task::promise_base::proxy_awaiter< A >::await_resume(), and dpp::detail::task::promise_base::proxy_awaiter< A >::await_suspend().
const task::promise_base& dpp::detail::task::promise_base::proxy_awaiter< A >::promise |
The promise_t object bound to this proxy.
Referenced by dpp::detail::task::promise_base::proxy_awaiter< A >::await_resume().