On this page
std::coroutine_handle<Promise>::coroutine_handle
|
(1) | (since C++20) |
|
(2) | (since C++20) |
|
(3) | (since C++20) |
|
(4) | (since C++20) |
Creates a coroutine_handle
that does not refer a coroutine, or copies a coroutine_handle
.
1,2) Initializes the underlying address
ptr
to nullptr
. After construction, address()
returns nullptr
, and the coroutine_handle
does not refer a coroutine. These constructors are not declared for the specialization std::coroutine_handle<std::noop_coroutine_promise>
.
3,4) Copies the underlying address. The copy constructor and move constructor are equivalent to implicitly declared ones.
Parameters
other | - | another coroutine_handle to copy |
Notes
std::coroutine_handle<std::noop_coroutine_promise>
is neither default constructible nor constructible from std::nullptr_t
. std::noop_coroutine
can be used to create a new std::coroutine_handle<std::noop_coroutine_promise>
.
Static member functions from_promise
and from_address
can also create a coroutine_handle
.
See also
[static] (C++20)
|
creates a coroutine_handle from the promise object of a coroutine (public static member function) |
[static] (C++20)
|
imports a coroutine from a pointer (public static member function) |
(C++20)
|
creates a coroutine handle that has no observable effects when resumed or destroyed (function) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/coroutine/coroutine_handle/coroutine_handle