Namespaces
Variants

std::meta::has_template_arguments

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

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

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

Параметры

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

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

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

Примечания

Если has_template_arguments(r) равно true, функции std::meta::template_of и std::meta::template_arguments_of возвращают соответственно его шаблон и аргументы шаблона.

Пример

#include <meta>
#include <string>
#include <vector>

static_assert(has_template_arguments(^^std::vector<int>));
static_assert(!has_template_arguments(^^std::string));
static_assert(has_template_arguments(std::meta::dealias(^^std::string)));

int main() {}

Смотри также

Template:cpp/meta/dsc is template