cpp/coroutine/coroutine handle

The class template can be used to refer to a suspended or executing coroutine. Every specialization of is a.

@1@ Primary template, can be created from the promise object of type.

@2@ Specialization erases the promise type. It is convertible from other specializations.

@3@ Specialization refers to no-op coroutines. It cannot be created from a promise object.

On typical implementations, every specialization of is, and holds a pointer to the coroutine state as its only non-static data member.