|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Coroutine traits | ||||
(C++20) | ||||
| Coroutine handle | ||||
(C++20) | ||||
| No-op coroutines | ||||
(C++20) | ||||
(C++20) | ||||
| Trivial awaitables | ||||
(C++20) | ||||
suspend_always (C++20) | ||||
| Range generators | ||||
(C++23) |
Defined in header <coroutine> | ||
struct suspend_always; | (since C++20) | |
suspend_always is an empty class which can be used to indicate that anawait expression always suspends and does not produce a value.
Contents |
await_ready | indicates that an await expression always suspends (public member function) |
await_suspend | no-op (public member function) |
await_resume | no-op (public member function) |
constexprbool await_ready()constnoexcept{returnfalse;} | ||
Always returnsfalse, indicating that an await expression always suspends.
constexprvoid await_suspend(std::coroutine_handle<>)constnoexcept{} | ||
Does nothing.
constexprvoid await_resume()constnoexcept{} | ||
Does nothing. An await expression does not produce a value ifsuspend_always is used.
| This section is incomplete Reason: no example |
(C++20) | indicates that an await-expression should never suspend (class)[edit] |