[coroutine.handle.observers] # 17 Language support library [[support]](./#support) ## 17.13 Coroutines [[support.coroutine]](support.coroutine#coroutine.handle.observers) ### 17.13.4 Class template coroutine_handle [[coroutine.handle]](coroutine.handle#observers) #### 17.13.4.5 Observers [coroutine.handle.observers] [🔗](#lib:operator_bool,coroutine_handle) `constexpr explicit operator bool() const noexcept; ` [1](#1) [#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/support.tex#L6021) *Returns*: address() != nullptr[.](#1.sentence-1) [🔗](#lib:done,coroutine_handle) `bool done() const; ` [2](#2) [#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/support.tex#L6032) *Preconditions*: *this refers to a suspended coroutine[.](#2.sentence-1) [3](#3) [#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/support.tex#L6036) *Returns*: true if the coroutine is suspended at its final suspend point, otherwise false[.](#3.sentence-1)