std::coroutine_handle::coroutine_handle(3)

NAME
std::coroutine_handle::coroutine_handle - std::coroutine_handle::coroutine_handle

Synopsis
   constexpr coroutine_handle() noexcept; (1) (since C++20)
   constexpr coroutine_handle( std::nullptr_t ) noexcept; (2) (since C++20)
   coroutine_handle( const coroutine_handle& other ) = default; (3) (since C++20)
   coroutine_handle( coroutine_handle&& other ) = default; (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
   from_promise creates a coroutine_handle from the promise object of a coroutine
   [static] (C++20) (public static member function)
   from_address imports a coroutine from a pointer
   [static] (C++20) (public static member function)
   noop_coroutine creates a coroutine handle that has no observable effects when
   (C++20) resumed or destroyed
                    (function)