YSTest: General Functors

YSTest PreAlpha_b700_20160611 The YSLib Test Project

- 首页
- 相关页面
- 模块
- 命名空间
- 类
- 文件

命名空间 | 类 | 宏定义 | 类型定义 | 函数
General Functors

仿函数。 更多...

General Functors 的协作图:

## 命名空间

| ystdex::cpp2014
| 包含 ISO C++ 2014 引入的名称的命名空间。

## 类

struct | ystdex::id< _type >
| 恒等仿函数。 更多...
struct | ystdex::id< void >
struct | ystdex::addressof_op< _type >
| std::addressof 仿函数。 更多...
struct | ystdex::addressof_op< void >
struct | ystdex::mem_get< _type >
| 成员 get 操作。 更多...
struct | ystdex::mem_get< void >
struct | ystdex::is_equal
| 相等关系仿函数。 更多...
struct | ystdex::ref_eq< _type >
| 引用相等关系仿函数。 更多...
struct | ystdex::cpp2014::plus< _type >
| 加法仿函数。 更多...
struct | ystdex::cpp2014::plus< void >
struct | ystdex::cpp2014::minus< _type >
| 减法仿函数。 更多...
struct | ystdex::cpp2014::minus< void >
struct | ystdex::cpp2014::multiplies< _type >
| 乘法仿函数。 更多...
struct | ystdex::cpp2014::multiplies< void >
struct | ystdex::cpp2014::divides< _type >
| 除法仿函数。 更多...
struct | ystdex::cpp2014::divides< void >
struct | ystdex::cpp2014::modulus< _type >
| 模运算仿函数。 更多...
struct | ystdex::cpp2014::modulus< void >
struct | ystdex::cpp2014::negate< _type >
| 取反仿函数。 更多...
struct | ystdex::cpp2014::negate< void >
struct | ystdex::cpp2014::equal_to< _type >
| 等于关系仿函数。 更多...
struct | ystdex::cpp2014::equal_to< void >
struct | ystdex::cpp2014::not_equal_to< _type >
| 不等于关系仿函数。 更多...
struct | ystdex::cpp2014::not_equal_to< void >
struct | ystdex::cpp2014::greater< _type >
| 大于关系仿函数。 更多...
struct | ystdex::cpp2014::greater< void >
struct | ystdex::cpp2014::greater< _type * >
struct | ystdex::cpp2014::less< _type >
| 小于关系仿函数。 更多...
struct | ystdex::cpp2014::less< void >
struct | ystdex::cpp2014::less< _type * >
struct | ystdex::cpp2014::greater_equal< _type >
| 大于等于关系仿函数。 更多...
struct | ystdex::cpp2014::greater_equal< void >
struct | ystdex::cpp2014::greater_equal< _type * >
struct | ystdex::cpp2014::less_equal< _type >
| 小于等于关系仿函数。 更多...
struct | ystdex::cpp2014::less_equal< void >
struct | ystdex::cpp2014::less_equal< _type * >
struct | ystdex::cpp2014::logical_and< _type >
| 逻辑与仿函数。 更多...
struct | ystdex::cpp2014::logical_and< void >
struct | ystdex::cpp2014::logical_or< _type >
| 逻辑或仿函数。 更多...
struct | ystdex::cpp2014::logical_or< void >
struct | ystdex::cpp2014::logical_not< _type >
| 逻辑非仿函数。 更多...
struct | ystdex::cpp2014::logical_not< void >
struct | ystdex::cpp2014::bit_and< _type >
| 位与仿函数。 更多...
struct | ystdex::cpp2014::bit_and< void >
struct | ystdex::cpp2014::bit_or< _type >
| 位或仿函数。 更多...
struct | ystdex::cpp2014::bit_or< void >
struct | ystdex::cpp2014::bit_xor< _type >
| 位异或仿函数。 更多...
struct | ystdex::cpp2014::bit_xor< void >
struct | ystdex::cpp2014::bit_not< _type >
| 位取反仿函数。 更多...
struct | ystdex::cpp2014::bit_not< void >
struct | ystdex::addrof< _type >
| 一元 & 操作。 更多...
struct | ystdex::addrof< void >
struct | ystdex::indirect< _type >
| 一元 * 操作。 更多...
struct | ystdex::indirect< void >
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 >

## 宏定义

#define | YB_Impl_Functor_Ops_Primary(_n, _tRet, _using_stmt, _expr, ...)
#define | YB_Impl_Functor_Ops_Spec(_n, _tparams, _params, _expr)
#define | YB_Impl_Functor_Ops_Spec_Ptr(_n)
#define | YB_Impl_Functor_Ops_using(_tRet) using second_argument_type = _tRet;
#define | YB_Impl_Functor_Ops1(_n, _op, _tRet)
#define | YB_Impl_Functor_Ops2(_n, _op, _tRet)
#define | YB_Impl_Functor_Binary(_n, _op) YB_Impl_Functor_Ops2(_n, _op, _type)
#define | YB_Impl_Functor_Unary(_n, _op) YB_Impl_Functor_Ops1(_n, _op, _type)

## 类型定义

template<typename _type >
using | ystdex::get_less = composed< less< _type * >, composed< addressof_op< _type >, mem_get<>>>
| get 成员小于仿函数。 更多...

## 函数

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)
| 选择加法/减法复合赋值运算。 更多...

## 详细描述

仿函数。

注解
  函数对象包含函数指针和仿函数。

自从
  build 243

## 宏定义说明

#define YB_Impl_Functor_Binary | ( |  | _n,
|  |  | _op
| ) |  | YB_Impl_Functor_Ops2(_n, _op, _type)

在文件 functor.hpp 第 292 行定义.

#define YB_Impl_Functor_Ops1 | ( |  | _n,
|  |  | _op,
|  |  | _tRet
| ) |  |

值:
YB_Impl_Functor_Ops_Primary(_n, _tRet, , _op x, const _type& x) \
\
YB_Impl_Functor_Ops_Spec(_n, typename _type, _type&& x, _op yforward(x))
YSLib::Drawing::TextState::x
const TextState &ts const TextState &ts const TextState &ts TextState SPos x
Definition: TextBase.h:190
YB_Impl_Functor_Ops_Spec
#define YB_Impl_Functor_Ops_Spec(_n, _tparams, _params, _expr)
Definition: functor.hpp:248
YB_Impl_Functor_Ops_Primary
#define YB_Impl_Functor_Ops_Primary(_n, _tRet, _using_stmt, _expr,...)
Definition: functor.hpp:233
yforward
#define yforward(_expr)
根据参数类型使用 std::forward 传递对应参数。
Definition: ydef.h:969

在文件 functor.hpp 第 279 行定义.

#define YB_Impl_Functor_Ops2 | ( |  | _n,
|  |  | _op,
|  |  | _tRet
| ) |  |

值:
YB_Impl_Functor_Ops_Primary(_n, _tRet, \
YB_Impl_Functor_Ops_using(_tRet), x _op y, const _type& x, \
const _type& y) \
\
YB_Impl_Functor_Ops_Spec(_n, typename _type1 YPP_Comma typename \
_type2, _type1&& x YPP_Comma _type2&& y, yforward(x) _op yforward(y))
YSLib::Drawing::TextState::x
const TextState &ts const TextState &ts const TextState &ts TextState SPos x
Definition: TextBase.h:190
YB_Impl_Functor_Ops_Spec
#define YB_Impl_Functor_Ops_Spec(_n, _tparams, _params, _expr)
Definition: functor.hpp:248
YB_Impl_Functor_Ops_Primary
#define YB_Impl_Functor_Ops_Primary(_n, _tRet, _using_stmt, _expr,...)
Definition: functor.hpp:233
YB_Impl_Functor_Ops_using
#define YB_Impl_Functor_Ops_using(_tRet)
Definition: functor.hpp:277
YSLib::UI::y
SPos SPos y
Definition: YWidget.cpp:44
YPP_Comma
#define YPP_Comma
替换为逗号的预处理记号。
Definition: ydef.h:225
yforward
#define yforward(_expr)
根据参数类型使用 std::forward 传递对应参数。
Definition: ydef.h:969

在文件 functor.hpp 第 284 行定义.

#define YB_Impl_Functor_Ops_Primary | ( |  | _n,
|  |  | _tRet,
|  |  | _using_stmt,
|  |  | _expr,
|  |  | ...
| ) |  |

值:
template<typename _type = void> \
struct _n \
{ \
using first_argument_type = _type; \
_using_stmt \
using result_type = _tRet; \
\
yconstfn _tRet \
operator()(__VA_ARGS__) const \
{ \
return _expr; \
} \
};
yconstfn
#define yconstfn
指定编译时常量函数。
Definition: ydef.h:654

在文件 functor.hpp 第 233 行定义.

#define YB_Impl_Functor_Ops_Spec | ( |  | _n,
|  |  | _tparams,
|  |  | _params,
|  |  | _expr
| ) |  |

值:
template<> \
struct _n<void> \
{ \
using is_transparent = yimpl(void); \
\
template<_tparams> \
yconstfn auto \
operator()(_params) const -> decltype(_expr) \
{ \
return _expr; \
} \
};
yimpl
#define yimpl(...)
实现标签。
Definition: ydef.h:256
yconstfn
#define yconstfn
指定编译时常量函数。
Definition: ydef.h:654

在文件 functor.hpp 第 248 行定义.

#define YB_Impl_Functor_Ops_Spec_Ptr | ( |  | _n | ) |

值:
template<typename _type> \
struct _n<_type*> \
{ \
using first_argument_type = _type*; \
using second_argument_type = _type*; \
using result_type = bool; \
\
yconstfn bool \
operator()(_type* x, _type* y) const \
{ \
return std::_n<_type*>()(x, y); \
} \
};
YSLib::Drawing::TextState::x
const TextState &ts const TextState &ts const TextState &ts TextState SPos x
Definition: TextBase.h:190
YSLib::UI::y
SPos SPos y
Definition: YWidget.cpp:44
yconstfn
#define yconstfn
指定编译时常量函数。
Definition: ydef.h:654
platform::bool
std::FILE *fp bool
Definition: FileIO.h:1187

在文件 functor.hpp 第 262 行定义.

#define YB_Impl_Functor_Ops_using | ( |  | _tRet | ) | using second_argument_type = _tRet;

在文件 functor.hpp 第 277 行定义.

#define YB_Impl_Functor_Unary | ( |  | _n,
|  |  | _op
| ) |  | YB_Impl_Functor_Ops1(_n, _op, _type)

在文件 functor.hpp 第 295 行定义.

## 类型定义说明

template<typename _type >

using ystdex::get_less = typedef composed<less<_type*>, composed<addressof_op<_type>, mem_get<>>>

get 成员小于仿函数。

自从
  build 672

在文件 functional.hpp 第 807 行定义.

## 函数说明

template<bool _bIsPositive, typename _tScalar1 , typename _tScalar2 >

_tScalar1& ystdex::delta_assign | ( | _tScalar1 & | _x,
|  | _tScalar2 & | _y
| ) |  |

inline

选择加法/减法复合赋值运算。

自从
  build 284

在文件 functor.hpp 第 496 行定义.

template<bool _bIsPositive, typename _tScalar >

_tScalar& ystdex::xcrease | ( | _tScalar & | _x | ) |

inline

选择自增/自减运算。

在文件 functor.hpp 第 485 行定义.