ELC in dev
ELC-lang
载入中...
搜索中...
未找到
elc::defs::base::type_info_t< T > 模板结构体 参考

struct  with_common_attribute
 
struct  with_special_attribute
 

Public 类型

typedeftype
 

Public 成员函数

constexpr type_info_t () noexcept
 
constexpr type_info_t (const type_info_t &) noexcept=default
 
constexpr operator base_type_info_t () const noexcept
 
constexpr bool operator== (const ::std::type_info &a) const noexcept
 
type_name_t get_name () const noexcept
 
size_t get_hash () const noexcept
 

静态 Public 成员函数

template<class attribute_name >
static constexpr bool has_attribute_helper ()
 
template<template< class >class attribute_name>
static constexpr bool has_attribute_helper ()
 
template<class attribute_name >
static constexpr bool not_has_has_attribute_helper ()
 
template<template< class >class attribute_name>
static constexpr bool not_has_has_attribute_helper ()
 

静态 Public 属性

template<class U >
static constexpr bool same_as =::std::is_same_v<T,U>
 
template<class U >
static constexpr bool not_same_as =!same_as<U>
 
template<class U >
static constexpr bool base_on =::std::is_convertible_v<remove_cvref<T>*,remove_cvref<U>*>
 
template<class U >
static constexpr bool not_base_on =!base_on<U>
 
template<class U >
static constexpr bool can_convert_to =::std::is_convertible_v<T,U>
 
template<class U >
static constexpr bool can_t_convert_to =!can_convert_to<U>
 
template<class U >
static constexpr bool can_nothrow_convert_to =::std::is_nothrow_convertible_v<T,U>
 
template<class U >
static constexpr bool can_t_nothrow_convert_to =!can_nothrow_convert_to<U>
 

详细描述

template<class T>
struct elc::defs::base::type_info_t< T >

在文件 all_defs.cpp1453 行定义.

成员类型定义说明

◆ type

template<class T >
typedef T elc::defs::base::type_info_t< T >::type

在文件 all_defs.cpp1454 行定义.

构造及析构函数说明

◆ type_info_t() [1/2]

template<class T >
constexpr elc::defs::base::type_info_t< T >::type_info_t ( )
inlineconstexprnoexcept

在文件 all_defs.cpp1519 行定义.

1519{}

◆ type_info_t() [2/2]

template<class T >
constexpr elc::defs::base::type_info_t< T >::type_info_t ( const type_info_t< T > &  )
constexprdefaultnoexcept

成员函数说明

◆ get_hash()

template<class T >
size_t elc::defs::base::type_info_t< T >::get_hash ( ) const
inlinenoexcept

在文件 all_defs.cpp1524 行定义.

1524 {
1525 return base_type_info_t(*this).get_hash();
1526 }
函数调用图:

◆ get_name()

template<typename T >
type_name_t elc::defs::base::type_info_t< T >::get_name ( ) const
inlinenoexcept

在文件 all_defs.cpp12139 行定义.

12139 {
12140 return base_type_info_t(*this).get_name();
12141}
函数调用图:

◆ has_attribute_helper() [1/2]

template<class T >
template<class attribute_name >
static constexpr bool elc::defs::base::type_info_t< T >::has_attribute_helper ( )
inlinestaticconstexpr

在文件 all_defs.cpp1482 行定义.

1482 {
1484 }
constexpr T down_cast(U a) noexcept
向下转型至

◆ has_attribute_helper() [2/2]

template<class T >
template<template< class >class attribute_name>
static constexpr bool elc::defs::base::type_info_t< T >::has_attribute_helper ( )
inlinestaticconstexpr

在文件 all_defs.cpp1486 行定义.

◆ not_has_has_attribute_helper() [1/2]

template<class T >
template<class attribute_name >
static constexpr bool elc::defs::base::type_info_t< T >::not_has_has_attribute_helper ( )
inlinestaticconstexpr

在文件 all_defs.cpp1490 行定义.

1490 {
1492 }

◆ not_has_has_attribute_helper() [2/2]

template<class T >
template<template< class >class attribute_name>
static constexpr bool elc::defs::base::type_info_t< T >::not_has_has_attribute_helper ( )
inlinestaticconstexpr

在文件 all_defs.cpp1494 行定义.

1494 {
1496 }

◆ operator base_type_info_t()

template<class T >
constexpr elc::defs::base::type_info_t< T >::operator base_type_info_t ( ) const
inlineconstexprnoexcept

在文件 all_defs.cpp1521 行定义.

1521{return base_type_info_t(typeid(T));}

◆ operator==()

template<class T >
constexpr bool elc::defs::base::type_info_t< T >::operator== ( const ::std::type_info &  a) const
inlineconstexprnoexcept

在文件 all_defs.cpp1522 行定义.

1522{return base_type_info_t(*this)==base_type_info_t(a);}

类成员变量说明

◆ base_on

template<class T >
template<class U >
constexpr bool elc::defs::base::type_info_t< T >::base_on =::std::is_convertible_v<remove_cvref<T>*,remove_cvref<U>*>
staticconstexpr

在文件 all_defs.cpp1461 行定义.

◆ can_convert_to

template<class T >
template<class U >
constexpr bool elc::defs::base::type_info_t< T >::can_convert_to =::std::is_convertible_v<T,U>
staticconstexpr

在文件 all_defs.cpp1466 行定义.

◆ can_nothrow_convert_to

template<class T >
template<class U >
constexpr bool elc::defs::base::type_info_t< T >::can_nothrow_convert_to =::std::is_nothrow_convertible_v<T,U>
staticconstexpr

在文件 all_defs.cpp1470 行定义.

◆ can_t_convert_to

template<class T >
template<class U >
constexpr bool elc::defs::base::type_info_t< T >::can_t_convert_to =!can_convert_to<U>
staticconstexpr

在文件 all_defs.cpp1468 行定义.

◆ can_t_nothrow_convert_to

template<class T >
template<class U >
constexpr bool elc::defs::base::type_info_t< T >::can_t_nothrow_convert_to =!can_nothrow_convert_to<U>
staticconstexpr

在文件 all_defs.cpp1472 行定义.

◆ not_base_on

template<class T >
template<class U >
constexpr bool elc::defs::base::type_info_t< T >::not_base_on =!base_on<U>
staticconstexpr

在文件 all_defs.cpp1463 行定义.

◆ not_same_as

template<class T >
template<class U >
constexpr bool elc::defs::base::type_info_t< T >::not_same_as =!same_as<U>
staticconstexpr

在文件 all_defs.cpp1459 行定义.

◆ same_as

template<class T >
template<class U >
constexpr bool elc::defs::base::type_info_t< T >::same_as =::std::is_same_v<T,U>
staticconstexpr

在文件 all_defs.cpp1457 行定义.


该结构体的文档由以下文件生成: