|
struct | ystdex::is_covariant< _tFrom(_tFromParams...), _tTo(_tToParams...)> |
|
struct | ystdex::is_contravariant< _tResFrom(_tFromParams...), _tResTo(_tToParams...)> |
|
struct | ystdex::variadic_param< _vN > |
| 变长参数操作模板。 更多...
|
|
struct | ystdex::variadic_param< 0U > |
|
struct | ystdex::make_parameter_tuple< typename > |
| 取参数列表元组。 更多...
|
|
struct | ystdex::make_parameter_tuple< _tRet(_tParams...)> |
|
struct | ystdex::make_parameter_tuple< _tRet(*)(_tParams...)> |
|
struct | ystdex::make_parameter_tuple< _tRet(&)(_tParams...)> |
|
struct | ystdex::make_parameter_tuple< _tRet(_tClass::*)(_tParams...)> |
|
struct | ystdex::make_parameter_tuple< _tRet(_tClass::*)(_tParams...) const > |
|
struct | ystdex::make_parameter_tuple< _tRet(_tClass::*)(_tParams...) volatile > |
|
struct | ystdex::make_parameter_tuple< _tRet(_tClass::*)(_tParams...) const volatile > |
|
struct | ystdex::make_parameter_tuple< std::function< _tRet(_tParams...)> > |
|
struct | ystdex::return_of< typename > |
| 取返回类型。 更多...
|
|
struct | ystdex::return_of< _tRet(_tParams...)> |
|
struct | ystdex::return_of< _tRet(*)(_tParams...)> |
|
struct | ystdex::return_of< _tRet(&)(_tParams...)> |
|
struct | ystdex::return_of< _tRet(_tClass::*)(_tParams...)> |
|
struct | ystdex::return_of< _tRet(_tClass::*)(_tParams...) const > |
|
struct | ystdex::return_of< _tRet(_tClass::*)(_tParams...) volatile > |
|
struct | ystdex::return_of< _tRet(_tClass::*)(_tParams...) const volatile > |
|
struct | ystdex::return_of< std::function< _tRet(_tParams...)> > |
|
struct | ystdex::parameter_of< _vIdx, _fCallable > |
| 取指定索引的参数类型。 更多...
|
|
struct | ystdex::paramlist_size< _fCallable > |
| 取参数列表大小。 更多...
|
|
struct | ystdex::call_projection< typename, class > |
| 调用投影:向原调用传递序列指定的位置的参数。 更多...
|
|
struct | ystdex::call_projection< _tRet(_tParams...), variadic_sequence< _vSeq...> > |
|
struct | ystdex::call_projection< std::function< _tRet(_tParams...)>, variadic_sequence< _vSeq...> > |
|
struct | ystdex::details::expand_proxy< _fCallable, _vLen > |
|
struct | ystdex::details::expand_proxy< _fCallable, 0 > |
|
struct | ystdex::expanded_caller< _fHandler, _fCallable > |
| 接受冗余参数的可调用对象。 更多...
|
|
struct | ystdex::wrapped_traits< _type > |
| 取 std::reference_wrapper 实例特征。 更多...
|
|
struct | ystdex::wrapped_traits< std::reference_wrapper< _tWrapped > > |
|
struct | ystdex::combined_hash<> |
| 使用 std::hash 和 ystdex::hash_combine_seq 实现的对特定类型的散列。 更多...
|
|
struct | ystdex::combined_hash< _type > |
|
struct | ystdex::details::combined_hash_tuple< bool, class, class > |
|
struct | ystdex::details::combined_hash_tuple< _bNoExcept, _type, variadic_sequence< _vSeq...> > |
|
struct | ystdex::combined_hash< std::tuple< _types...> > |
|
struct | ystdex::combined_hash< std::pair< _type1, _type2 > > |
|
struct | ystdex::is_equal |
| 相等关系仿函数。 更多...
|
|
struct | ystdex::ref_eq< _type > |
| 引用相等关系仿函数。 更多...
|
|
struct | ystdex::xcrease_t< bool, _tScalar > |
| 编译期选择自增/自减运算仿函数。 更多...
|
|
struct | ystdex::xcrease_t< false, _tScalar > |
|
struct | ystdex::delta_assignment< bool, _tScalar1, _tScalar2 > |
| 编译期选择加法/减法复合赋值运算仿函数。 更多...
|
|
struct | ystdex::delta_assignment< false, _tScalar1, _tScalar2 > |
|
struct | ystdex::deref_op< _type > |
| 引用仿函数。 更多...
|
|
struct | ystdex::const_deref_op< _type > |
| const 引用仿函数。 更多...
|
|
struct | ystdex::deref_comp< _type, _tPointer, _fCompare > |
| 间接访问比较仿函数。 更多...
|
|
struct | ystdex::deref_str_comp< _tChar, _fCompare > |
| 间接访问字符串比较仿函数。 更多...
|
|
|
template<typename... _tParams> |
size_t | ystdex::sizeof_params (_tParams &&...) |
| 统计函数参数列表中的参数个数。 更多...
|
|
template<size_t _vN, typename... _tParams> |
const auto | ystdex::varg (_tParams &&...args) -> decltype(variadic_param< _vN >::get(std::forward< decltype(args)>(args)...)) |
| 取指定位置的变长参数。 更多...
|
|
template<typename _fCallable , typename... _tParams> |
void | ystdex::unseq_apply (_fCallable &&f, _tParams &&...args) |
| 无序调用。 更多...
|
|
template<typename _fHandler , typename _fCallable > |
expanded_caller< _fHandler,
decay_t< _fCallable > > | ystdex::make_expanded (_fCallable &&f) |
| 构造接受冗余参数的可调用对象。 更多...
|
|
template<typename _type > |
void | ystdex::hash_combine (size_t &seed, const _type &val) |
| 重复计算散列。 更多...
|
|
template<bool _bIsPositive, typename _tScalar > |
_tScalar & | ystdex::xcrease (_tScalar &_x) |
| 编译期选择自增/自减运算。 更多...
|
|
template<bool _bIsPositive, typename _tScalar1 , typename _tScalar2 > |
_tScalar1 & | ystdex::delta_assign (_tScalar1 &_x, _tScalar2 &_y) |
| 编译期选择加法/减法复合赋值运算。 更多...
|
|
|
template<typename _fCallable > |
void | ystdex::seq_apply (_fCallable &&) |
| 顺序递归调用。 更多...
|
|
template<typename _fCallable , typename _type , typename... _tParams> |
void | ystdex::seq_apply (_fCallable &&f, _type &&arg, _tParams &&...args) |
|
|
template<typename _type > |
_type & | ystdex::unref (_type &&x) |
| 解除引用包装。 更多...
|
|
template<typename _type > |
_type & | ystdex::unref (const std::reference_wrapper< _type > &x) |
|
|
template<typename _type > |
size_t | ystdex::hash_combine_seq (size_t seed, const _type &val) |
| 重复计算序列散列。 更多...
|
|
template<typename _type , typename... _tParams> |
size_t | ystdex::hash_combine_seq (size_t seed, const _type &x, const _tParams &...args) |
|
|
template<typename _tIn > |
size_t | ystdex::hash_range (_tIn first, _tIn last) |
| 重复对范围计算散列。 更多...
|
|
template<typename _tIn > |
size_t | ystdex::hash_range (size_t &seed, _tIn first, _tIn last) |
|