Namensräume
Varianten
Aktionen

std::coroutine_handle<Promise>:done

Von cppreference.com
 
 
Dienstprogramm-Bibliotheken
Sprachunterstützung
Typunterstützung (Basistypen, RTTI)
Bibliotheks-Feature-Test-Makros (C++20)
Programm-Dienstprogramme
Variadische Funktionen
Coroutine-Unterstützung (C++20)
Vertragsunterstützung (C++26)
Drei-Wege-Vergleich
(C++20)
(C++20)(C++20)(C++20)  
(C++20)(C++20)(C++20)

Allgemeine Hilfsmittel
Relationale Operatoren (in C++20 veraltet)
 
Coroutine support
Coroutine traits
Coroutine handle
No-op coroutines
Trivial awaitables
Range generators
(C++23)
 
 
Mitglied anderer Spezialisierungen
bool done() const;
(1) (seit C++20)
Mitglied der Spezialisierung std::coroutine_handle<std::noop_coroutine_promise>
constexpr bool done() const noexcept;
(2) (seit C++20)

Prüft, ob eine angehaltene Koroutine an ihrem letzten Haltepunkt angehalten ist.

1) Gibt true zurück, wenn die Koroutine, auf die *this verweist, an ihrem letzten Haltepunkt angehalten ist, und false, wenn die Koroutine an anderen Haltepunkten angehalten ist. Das Verhalten ist undefiniert, wenn *this nicht auf eine angehaltene Koroutine verweist.
2) Gibt immer false zurück.

Inhalt

[bearbeiten] Parameter

(keine)

[bearbeiten] Rückgabewert

1) true, wenn die Koroutine an ihrem letzten Haltepunkt angehalten ist, false, wenn die Koroutine an anderen Haltepunkten angehalten ist.
2) `false`

[bearbeiten] Hinweise

Eine No-Op-Koroutine wird niemals an ihrem letzten Haltepunkt als angehalten betrachtet.

Eine Koroutine mit einem Promise-Objekt p gilt nur dann als an ihrem letzten Haltepunkt angehalten, wenn e das Ergebnis von p.final_suspend() ist und e.await_ready() false zurückgibt. Insbesondere, wenn p.final_suspend() std::suspend_never zurückgibt, gibt done() niemals true zurück.

[bearbeiten] Beispiel