YSTest  PreAlpha_b500_20140530
The YSLib Test Project
 全部  命名空间 文件 函数 变量 类型定义 枚举 枚举值 友元 宏定义  
functional.hpp 文件参考

函数和可调用对象。 更多...

#include "type_op.hpp"
#include "tuple.hpp"
#include <functional>
#include <string>
functional.hpp 的引用(Include)关系图:
此图展示该文件直接或间接的被哪些文件引用了:

浏览源代码.

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 >
 间接访问字符串比较仿函数。 更多...
 

命名空间

 ystdex
 
 ystdex::details
 

类型定义

template<typename _fCallable >
using ystdex::make_parameter_tuple_t = typename make_parameter_tuple< _fCallable >::type
 
template<typename _fCallable >
using ystdex::return_of_t = typename return_of< _fCallable >::type
 
template<size_t _vIdx, typename _fCallable >
using ystdex::parameter_of_t = typename parameter_of< _vIdx, _fCallable >::type
 

函数

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)
 

详细描述

函数和可调用对象。

版本
r887
作者
FrankHB frank.nosp@m.hb19.nosp@m.89@gm.nosp@m.ail..nosp@m.com
自从
build 333
创建时间:
2010-08-22 13:04:29 +0800
修改时间:
2014-05-15 00:35 +0800
文本编码:
UTF-8
模块名称:
YStandardEx::Functional

在文件 functional.hpp 中定义.