std::coroutine_handle<Promise>::from_address

From cppreference.com
 
 
Utilities library
General utilities
Date and time
Function objects
Formatting library (C++20)
(C++11)
Relational operators (deprecated in C++20)
Integer comparison functions
(C++20)(C++20)(C++20)   
(C++20)
Swap and type operations
(C++14)
(C++11)
(C++11)
(C++11)
(C++17)
Common vocabulary types
(C++11)
(C++17)
(C++17)
(C++17)
(C++11)
(C++17)
(C++23)
Elementary string conversions
(C++17)
(C++17)
 
Coroutine support
Coroutine traits
Coroutine handle
No-op coroutines
Trivial awaitables
Range generators
(C++23)
 
std::coroutine_handle
Member functions
Conversion
Observers
Control
Promise access
Export/import
coroutine_handle::from_address
(C++20)
Non-member functions
(C++20)(C++20)
Helper classes
 
static constexpr coroutine_handle from_address( void *addr );
(since C++20)

Creates a coroutine_handle from a null pointer value or an underlying address of another coroutine_handle. The underlying address of return value is addr.

The behavior is undefined if addr is neither a null pointer value nor an underlying address of a coroutine_handle. The behavior is also undefined if the addr is an underlying address of a std::coroutine_handle<P1>, where both Promise and P1 are not void, and P1 is different from Promise.

This function is not declared for specialization std::coroutine_handle<std::noop_coroutine_promise>.

Parameters

addr - underlying address to import

Return values

A std::coroutine_handle<Promise> whose underlying address is addr.

Notes

If addr is not a null pointer value, it must be obtained from a prior call to address() on a coroutine_handle referring to some coroutine.

Example

See also

constructs a coroutine_handle object
(public member function)
[static] (C++20)
creates a coroutine_handle from the promise object of a coroutine
(public static member function)
creates a coroutine handle that has no observable effects when resumed or destroyed
(function)