Namespaces
Variants

std::meta::is_noexcept

От ru.cppreference.net
< cpp | meta
 
 
 
Библиотека отражения
Запросы доступности членов
Идентификация области видимости
Запросы членов отражения
Отражение аннотаций
Извлечение значения
Подстановка отражения
Отражение результата выражения
Генерация определения класса

Основные категории типов
Составные категории типов
Свойства типов ➜
Отношения типов
 
Типы и запросы отражения
Запросы отражения
Запросы размещения отражения
Свойства типов
Запросы свойств типов
 
Определен в заголовке <meta>
consteval bool is_noexcept( std::meta::info r );
(начиная с C++26)

Возвращает true, если r представляет тип функции noexcept или функцию с невыбрасывающей спецификацией исключений. В противном случае возвращает false.

Параметры

r - значение отражения

Возвращаемое значение

true если r представляет тип noexcept функции или функцию; в противном случае false.

Примечания

Если r не представляет тип функции или функцию, результат равен false. В частности, результат равен false если r представляет шаблон функции.

Пример

#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() {}

См. также

Template:cpp/meta/dsc is function type
проверяет, представляет ли отражение функцию
(функция)
проверяет, является ли тип типом функции
(шаблон класса)