Namespaces
Variants

std::meta::dealias

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

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

Если r представляет собой псевдоним типа или псевдоним пространства имён, возвращает отражение, представляющее псевдоним типа или пространства имён; в противном случае возвращает r.

Параметры

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

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

Значение отражения, представляющее сущность, которую r псевдонимирует, или r, если это не псевдоним.

Пример

#include <meta>
#include <string>
#include <type_traits>

static_assert(^^std::string != ^^std::basic_string<char>);
static_assert(std::meta::dealias(^^std::string) == ^^std::basic_string<char>);

static_assert(^^std::void_t<int> != ^^void);
static_assert(std::meta::dealias(^^std::void_t<int>) == ^^void);

static_assert(std::meta::dealias(^^std::void_t) == ^^std::void_t);

int main() {}

Смотри также

проверяет, представляет ли отражение псевдоним типа
(функция)
проверяет, представляет ли отражение псевдоним пространства имён
(функция)