|
ELC in dev
ELC-lang
|
命名空间 | |
| namespace | array_like_n |
| namespace | bit |
| namespace | constexpr_str_n |
| namespace | function_base_n |
| namespace | hash_n |
| namespace | iterator_n |
| namespace | literal_support |
| namespace | magic_number |
| namespace | math |
| namespace | note_n |
| namespace | null_ptr_n |
| namespace | range_n |
| namespace | sort_n |
| namespace | string_view_n |
概念 | |
| concept | is_pointer |
| 判断类型是否为指针 | |
类型定义 | |
| template<class T > | |
| using | remove_cvref = ::std::remove_cvref_t< T > |
| template<class T > | |
| using | remove_cv = ::std::remove_cv_t< T > |
| template<class T > | |
| using | remove_ref = ::std::remove_reference_t< T > |
| template<bool B, class T , class F > | |
| using | conditional = ::std::conditional_t< B, T, F > |
| typedef decltype(null_ptr) | null_ptr_t |
| typedef decltype(nullptr) | nullptr_t |
| typedef void * | pointer |
| 未知类型指针 | |
| typedef const void * | const_pointer |
| 未知类型指针,不可写 | |
| typedef hash_n::hash_value_t | hash_t |
| typedef hash_n::unstable_hash_value_t | unstable_hash_t |
枚举 | |
| enum class | flag_set_type : bool { seted =true , not_set =false } |
| enum class | mark_type : bool { marked =true , not_mark =false } |
函数 | |
| template<class T , class U > | |
| auto | template_warning_helper (U &&a) noexcept |
| template<typename T , typename U > | |
| auto & | assign (T &&a, U &&b) noexcept(noexcept((a=b))) |
| void | the_destroy () noexcept=delete |
| template<typename T > | |
| static void | destroy (T *a) noexcept |
| template<typename T1 , typename T2 > | |
| constexpr void | swap (T1 &a, T2 &b) |
| template<typename T1 , typename T2 > | |
| constexpr T1 | swap (T1 &a, const T2 &b) |
| template<typename T > | |
| constexpr const T | add_const (T a) noexcept |
| 对值追加const | |
| template<typename T > | |
| constexpr const T | add_const_by_value (T a) noexcept |
| template<typename T > | |
| constexpr const T & | add_const (T &a) noexcept |
| 对引用追加const | |
| template<typename T > | |
| constexpr const T & | add_const_by_ref (T &a) noexcept |
| template<typename T > | |
| constexpr T & | remove_const (const T &a) noexcept |
| 对引用移除const | |
| template<typename T > | |
| constexpr T & | remove_const_by_ref (const T &a) noexcept |
| template<typename T > | |
| constexpr const T * | add_const (T *a) noexcept |
| 对指针追加const | |
| template<typename T > | |
| constexpr const T * | add_const_by_ptr (T *a) noexcept |
| template<typename T > | |
| constexpr T * | remove_const (const T *a) noexcept |
| 对指针移除const | |
| template<typename T > | |
| constexpr T * | remove_const_by_ptr (const T *a) noexcept |
| template<typename T > | |
| constexpr T * | launder_remove_const (const T *a) noexcept |
| 对指针移除const | |
| template<typename T > | |
| constexpr T * | launder_remove_const_by_ptr (const T *a) noexcept |
| template<typename T , typename U > | |
| constexpr T | down_cast (U a) noexcept |
| 向下转型至 | |
| template<class T , class attribute_name > | |
| T * | get_handle (attribute< T, attribute_name > *a) noexcept |
| template<class T , class attribute_name > | |
| const T * | get_handle (const attribute< T, attribute_name > *a) noexcept |
| template<class T , template< class >class attribute_name> | |
| T * | get_handle (attribute< T, attribute_name< T > > *a) noexcept |
| template<class T , template< class >class attribute_name> | |
| const T * | get_handle (const attribute< T, attribute_name< T > > *a) noexcept |
| template<class attribute_name , class T > | |
| auto | attribute_ptr_cast (T *ptr) noexcept |
| template<class attribute_name , class T > | |
| auto | attribute_ptr_cast (const T *ptr) noexcept |
| template<class attribute_name , class T > | |
| auto & | attribute_cast (T &t) noexcept |
| template<class T > | |
| constexpr bool | operator== (const type_info_t< T > &, const type_info_t< T > &) |
| template<class T , class U > | |
| constexpr bool | operator== (const type_info_t< T > &, const type_info_t< U > &) |
| template<typename T > | |
| constexpr auto | is_eq (T &&a, T &&b) noexcept(noexcept((&a==&b))) |
| template<typename T > | |
| constexpr auto | is_not_eq (T &&a, T &&b) noexcept(noexcept((!is_eq(a, b)))) |
| template<class T > | |
| constexpr T & | data_cast (byte *p) noexcept |
| template<class T > | |
| constexpr T & | launder_data_cast (byte *p) noexcept |
| template<class T > | |
| constexpr T * | data_ptr_cast (byte *p) noexcept |
| template<class T > | |
| constexpr T * | launder_data_ptr_cast (byte *p) noexcept |
| template<class T > | |
| constexpr byte * | cast_to_data (T *p) noexcept |
| template<class T > | |
| constexpr byte * | launder_cast_to_data (T *p) noexcept |
| template<class T > | |
| constexpr const byte * | cast_to_data (const T *p) noexcept |
| template<class T > | |
| constexpr const byte * | launder_cast_to_data (const T *p) noexcept |
| template<class U , class T > | |
| constexpr U & | union_cast (T &&t) noexcept |
| template<class U , class T > | |
| constexpr U & | launder_union_cast (T &&t) noexcept |
| template<class T > | |
| constexpr bool | full_equal_in_byte (const T &a, const T &b) noexcept |
| void | the_pointer_to_bool () noexcept=delete |
| template<typename T > | |
| constexpr auto | pointer_to_bool (T *a) noexcept |
| 指针转bool的重载接口,允许类对此进行自定义 elc内部的指针转bool应当视情况使用默认配置或此重载接口 | |
| void | the_pointer_equal () noexcept=delete |
| template<typename T > | |
| constexpr auto | pointer_equal (T *a, T *b) noexcept |
| 指针比较的重载接口,允许类对此进行自定义 elc内部的指针比较应当视情况使用默认配置或此重载接口 | |
| constexpr ptrdiff_t | get_off_set (note::from_t< const_pointer >a, note::to_t< const_pointer >b) noexcept |
| 获取两个指针的偏移 | |
| template<class T > | |
| constexpr auto | apply_off_set (T *a, ptrdiff_t c) noexcept |
| 应用偏移 | |
| template<class T > | |
| constexpr auto | unapply_off_set (T *b, ptrdiff_t c) noexcept |
| 反向应用偏移 | |
| template<class T > | |
| constexpr bool | is_all_byte_zero (T &&a) noexcept |
| template<class T > | |
| size_t | the_number_of (type_info_t< T >) noexcept |
| using elc::defs::base::conditional = typedef ::std::conditional_t<B,T,F> |
在文件 all_defs.cpp 第 841 行定义.
未知类型指针,不可写
在文件 all_defs.cpp 第 9332 行定义.
| typedef decltype(null_ptr) elc::defs::base::null_ptr_t |
在文件 all_defs.cpp 第 8843 行定义.
在文件 all_defs.cpp 第 8844 行定义.
未知类型指针
在文件 all_defs.cpp 第 9330 行定义.
| using elc::defs::base::remove_cv = typedef ::std::remove_cv_t<T> |
在文件 all_defs.cpp 第 837 行定义.
| using elc::defs::base::remove_cvref = typedef ::std::remove_cvref_t<T> |
在文件 all_defs.cpp 第 835 行定义.
| using elc::defs::base::remove_ref = typedef ::std::remove_reference_t<T> |
在文件 all_defs.cpp 第 839 行定义.
在文件 all_defs.cpp 第 11105 行定义.
|
strong |
|
strong |
|
inlineconstexprnoexcept |
在文件 all_defs.cpp 第 1120 行定义.
|
inlineconstexprnoexcept |
在文件 all_defs.cpp 第 1110 行定义.
|
constexprnoexcept |
应用偏移
在文件 all_defs.cpp 第 9340 行定义.
|
inlinenoexcept |
在文件 all_defs.cpp 第 1335 行定义.
在文件 all_defs.cpp 第 1326 行定义.
|
inlinenoexcept |
|
inlineconstexprnoexcept |
功能: const T* 指针转换为 const byte*,不进行任何检查 用法: cast_to_data(const T*) -> const byte*
在文件 all_defs.cpp 第 9171 行定义.
功能: T* 指针转换为 byte*,不进行任何检查 用法: cast_to_data(T*) -> byte*
在文件 all_defs.cpp 第 9163 行定义.
功能: byte* 类型数据转换为 T&,不进行任何检查 用法: data_cast<T>(byte*) -> T&
在文件 all_defs.cpp 第 9147 行定义.
功能: byte* 类型数据转换为 T*,不进行任何检查 用法: data_ptr_cast<T>(byte*) -> T*
在文件 all_defs.cpp 第 9155 行定义.
在文件 all_defs.cpp 第 993 行定义.
|
inlineconstexprnoexcept |
|
constexprnoexcept |
功能: 比较两个类实例在内存中的内容是否相同 用法: full_equal_in_byte(const T&a,const T&b) -> bool
在文件 all_defs.cpp 第 9265 行定义.
|
inlinenoexcept |
在文件 all_defs.cpp 第 1312 行定义.
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
constexprnoexcept |
|
inlineconstexprnoexcept |
Returns true if all bytes in the input are zero.
| a | The input value. |
在文件 all_defs.cpp 第 9399 行定义.
|
constexprnoexcept |
在文件 all_defs.cpp 第 1928 行定义.
|
inlineconstexprnoexcept |
对指针移除const
在文件 all_defs.cpp 第 1128 行定义.
|
constexpr |
|
constexpr |
在文件 all_defs.cpp 第 1535 行定义.
|
constexprnoexcept |
指针比较的重载接口,允许类对此进行自定义 elc内部的指针比较应当视情况使用默认配置或此重载接口
在文件 all_defs.cpp 第 9319 行定义.
指针转bool的重载接口,允许类对此进行自定义 elc内部的指针转bool应当视情况使用默认配置或此重载接口
在文件 all_defs.cpp 第 9308 行定义.
|
inlineconstexprnoexcept |
在文件 all_defs.cpp 第 1125 行定义.
|
inlineconstexprnoexcept |
在文件 all_defs.cpp 第 1115 行定义.
在文件 all_defs.cpp 第 1029 行定义.
在文件 all_defs.cpp 第 1010 行定义.
|
deletenoexcept |
|
inlinenoexcept |
|
deletenoexcept |
|
deletenoexcept |
功能: T& 转换为 U&,不进行任何检查 用法: union_cast<U>(T&) -> U&
在文件 all_defs.cpp 第 9179 行定义.
| constexpr struct elc::defs::base::compare_t elc::defs::base::compare |
|
inline |
在文件 all_defs.cpp 第 989 行定义.
| constexpr struct elc::defs::base::discard_t elc::defs::base::discard |
| constexpr struct elc::defs::base::do_nothing_t elc::defs::base::do_nothing |
| constexpr logical_bool elc::defs::base::either {special_init,1,1} |
在文件 all_defs.cpp 第 12442 行定义.
| constexpr struct elc::defs::base::end_by_zero_t elc::defs::base::end_by_zero |
| constexpr struct elc::defs::base::equal_t elc::defs::base::equal |
在文件 all_defs.cpp 第 12589 行定义.
|
constexpr |
在文件 all_defs.cpp 第 843 行定义.
| constexpr struct elc::defs::base::just_an_part_t elc::defs::base::just_an_part |
| constexpr struct elc::defs::base::max_t elc::defs::base::max |
|
inlineconstexpr |
功能: data_block辅助变量模板,接受数个类型并表现为其中的最大对齐值
在文件 all_defs.cpp 第 9187 行定义.
|
inlineconstexpr |
功能: data_block辅助变量模板,接受数个类型并表现为其中的最大大小值
在文件 all_defs.cpp 第 9192 行定义.
| constexpr struct elc::defs::base::min_t elc::defs::base::min |
|
constexpr |
在文件 all_defs.cpp 第 12442 行定义.
| constexpr struct elc::defs::base::never_ref_num_zero_t elc::defs::base::never_ref_num_zero |
|
constexpr |
每个T的可能性大小
在文件 all_defs.cpp 第 9140 行定义.
| constexpr struct elc::defs::base::pre_alloc_t elc::defs::base::pre_alloc |
| constexpr struct elc::defs::base::special_init_t elc::defs::base::special_init |
宏辅助,用以补全元编程错误宏template_error的内容.
在文件 all_defs.cpp 第 784 行定义.
|
constexpr |
在文件 all_defs.cpp 第 1530 行定义.
| constexpr logical_bool elc::defs::base::unknown {special_init,0,0,1} |
在文件 all_defs.cpp 第 12442 行定义.
| constexpr struct elc::defs::base::zero_t elc::defs::base::zero |