ELC in dev
ELC-lang
载入中...
搜索中...
未找到
elc::defs::base::function_base_n::function_data_wrapper_t< T, Ret_t(Args_t...) noexcept(nothrow)> 模板结构体 参考

Public 成员函数

 function_data_wrapper_t (T a) noexcept(construct< T >.nothrow< T >)
 
 ~function_data_wrapper_t () noexcept(destruct.nothrow< T >)=default
 
Ret_t operator() (Args_t...args) noexcept(nothrow||invoke< T >.with_return_type< Ret_t >.nothrow< Args_t... >)
 
Ret_t operator() (Args_t...args) const noexcept(nothrow||invoke< const T >.with_return_type< Ret_t >.nothrow< Args_t... >)
 
autoget_data () noexcept
 

Public 属性

_value
 

详细描述

template<class T, bool nothrow, class Ret_t, class... Args_t>
struct elc::defs::base::function_base_n::function_data_wrapper_t< T, Ret_t(Args_t...) noexcept(nothrow)>

在文件 all_defs.cpp12941 行定义.

构造及析构函数说明

◆ function_data_wrapper_t()

template<class T , bool nothrow, class Ret_t , class... Args_t>
elc::defs::base::function_base_n::function_data_wrapper_t< T, Ret_t(Args_t...) noexcept(nothrow)>::function_data_wrapper_t ( a)
inlinenoexcept

◆ ~function_data_wrapper_t()

template<class T , bool nothrow, class Ret_t , class... Args_t>
elc::defs::base::function_base_n::function_data_wrapper_t< T, Ret_t(Args_t...) noexcept(nothrow)>::~function_data_wrapper_t ( )
defaultnoexcept

成员函数说明

◆ get_data()

template<class T , bool nothrow, class Ret_t , class... Args_t>
auto & elc::defs::base::function_base_n::function_data_wrapper_t< T, Ret_t(Args_t...) noexcept(nothrow)>::get_data ( )
inlinenoexcept

在文件 all_defs.cpp12972 行定义.

12972{return _value;}

◆ operator()() [1/2]

template<class T , bool nothrow, class Ret_t , class... Args_t>
Ret_t elc::defs::base::function_base_n::function_data_wrapper_t< T, Ret_t(Args_t...) noexcept(nothrow)>::operator() ( Args_t...  args) const
inlinenoexcept

在文件 all_defs.cpp12960 行定义.

12960 {
12961 //BLOCK:constexpr checks
12962 if constexpr(!invoke<T>.able<Args_t...>)
12963 template_error("this T can\'t becall as args.");
12964 if constexpr(!invoke<T>.with_return_type<Ret_t>.able<Args_t...>)
12965 template_error("the return type of T was wrong.");
12966 //BLOCK_END
12967 if constexpr(type_info<Ret_t> != type_info<void>)
12968 return _value(forward<Args_t>(args)...);
12969 else
12971 }
#define template_error(reason)
Definition all_defs.cpp:559

◆ operator()() [2/2]

template<class T , bool nothrow, class Ret_t , class... Args_t>
Ret_t elc::defs::base::function_base_n::function_data_wrapper_t< T, Ret_t(Args_t...) noexcept(nothrow)>::operator() ( Args_t...  args)
inlinenoexcept

在文件 all_defs.cpp12948 行定义.

12948 {
12949 //BLOCK:constexpr checks
12950 if constexpr(!invoke<T>.able<Args_t...>)
12951 template_error("this T can\'t becall as args.");
12952 if constexpr(!invoke<T>.with_return_type<Ret_t>.able<Args_t...>)
12953 template_error("the return type of T was wrong.");
12954 //BLOCK_END
12955 if constexpr(type_info<Ret_t> != type_info<void>)
12956 return _value(forward<Args_t>(args)...);
12957 else
12959 }

类成员变量说明

◆ _value

template<class T , bool nothrow, class Ret_t , class... Args_t>
T elc::defs::base::function_base_n::function_data_wrapper_t< T, Ret_t(Args_t...) noexcept(nothrow)>::_value

在文件 all_defs.cpp12944 行定义.


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