Namespaces
Variants

std::meta::is_noexcept

Von de.cppreference.net
< cpp | meta
 
 
 
Reflexionsbibliothek
 
Reflexionstypen und -abfragen
Reflexionsabfragen
Reflexionslayout-Abfragen
Typeigenschaften
Typeigenschaftsabfragen
 
Definiert in Header <meta>
consteval bool is_noexcept( std::meta::info r );
(seit C++26)

Gibt true zurück, wenn r einen noexcept-Funktionstyp oder eine Funktion mit einer nicht-werfenden Ausnahmespezifikation darstellt. Ansonsten gibt false zurück.

Parameter

r - ein Reflexionswert

Rückgabewert

true wenn r einen noexcept-Funktionstyp oder eine Funktion darstellt; andernfalls false.

Hinweise

Wenn r keinen Funktionstyp oder keine Funktion darstellt, ist das Ergebnis false. Insbesondere ist das Ergebnis false wenn r eine Funktionsvorlage darstellt.

Beispiel

#include <meta>

template<bool Cond>
void f() noexcept(Cond);

static_assert(std::meta::is_noexcept(^^f<true>));
static_assert(!std::meta::is_noexcept(^^f<false>));
static_assert(!std::meta::is_noexcept(^^f));

using fty = decltype(f<true>);
static_assert(std::meta::is_noexcept(^^fty));

int main() {}

Siehe auch

Template:cpp/meta/dsc is function type
prüft, ob die Reflexion eine Funktion darstellt
(Funktion)
prüft, ob ein Typ ein Funktionstyp ist
(Klassenvorlage)