YSTest: YSLib::GEvent< _tRet(_tParams...), _tInvoker > 模板类 参考

YSTest PreAlpha_b900_20201012 The YSLib Test Project

Public 类型 | Public 成员函数 | Public 属性 | Private 属性 | 所有成员列表
YSLib::GEvent< _tRet(_tParams...), _tInvoker > 模板类 参考

`#include <YEvent.hpp>`

## Public 类型

using | HandlerType = GHEvent< _tRet(_tParams...)>
using | FuncType = typename HandlerType::FuncType
using | ContainerType = multimap< EventPriority, HandlerType, std::greater< EventPriority > >
| 容器类型。 更多...
using | InvokerType = _tInvoker
using | allocator_type = typename ContainerType::allocator_type
using | const_iterator = typename ContainerType::const_iterator
using | const_reference = typename ContainerType::const_reference
using | const_reverse_iterator = typename ContainerType::const_reverse_iterator
using | iterator = typename ContainerType::iterator
using | reference = typename ContainerType::reference
using | reverse_iterator = typename ContainerType::reverse_iterator
using | size_type = typename ContainerType::size_type
using | value_type = typename ContainerType::value_type
using | result_type = decltype(std::declval< _tInvoker & >()(std::declval< const_iterator >(), std::declval< const_iterator >(), std::declval< _tParams >()...))

## Public 成员函数

| DefDeCtor (GEvent) GEvent(allocator_type a)
| 无参数构造：默认实现。 更多...
| GEvent (InvokerType ivk)
| 构造：使用指定调用器。 更多...
| GEvent (InvokerType ivk, allocator_type a)
template<typename _tHandler , yimpl(typename=ystdex::exclude_self_t< GEvent, _tHandler >, typename=ystdex::enable_if_t< std::is_constructible< HandlerType, _tHandler >::value >) >
| GEvent (_tHandler h, InvokerType ivk={})
| 构造：使用指定调用器并添加事件处理器。 更多...
template<typename _tHandler , yimpl(typename=ystdex::exclude_self_t< GEvent, _tHandler >, typename=ystdex::enable_if_t< std::is_constructible< HandlerType, _tHandler >::value >) >
| GEvent (_tHandler h, InvokerType ivk, allocator_type a)
| GEvent (const GEvent &e, allocator_type a)
| GEvent (GEvent &&e, allocator_type a)
| DefDeCopyMoveCtorAssignment (GEvent) template< typename _tHandler
| 赋值：覆盖事件响应：使用单一构造参数指定的指定事件处理器。 更多...

## Public 属性

InvokerType | Invoker {}
| 调用器。 更多...

## Private 属性

ContainerType | handlers {}
| 响应列表。 更多...

## 详细描述

### template<typename _tRet, typename... _tParams, typename _tInvoker>
class YSLib::GEvent< _tRet(_tParams...), _tInvoker >

注解
  深复制。

警告
  非虚析构。

在文件 YEvent.hpp 第 495 行定义.

## 成员类型定义说明

## ◆ allocator_type

template<typename _tRet , typename... _tParams, typename _tInvoker >

using YSLib::GEvent< _tRet(_tParams...), _tInvoker >::allocator_type = typename ContainerType::allocator_type

自从
  build 850

在文件 YEvent.hpp 第 512 行定义.

## ◆ const_iterator

template<typename _tRet , typename... _tParams, typename _tInvoker >

using YSLib::GEvent< _tRet(_tParams...), _tInvoker >::const_iterator = typename ContainerType::const_iterator

自从
  build 573

在文件 YEvent.hpp 第 515 行定义.

## ◆ const_reference

template<typename _tRet , typename... _tParams, typename _tInvoker >

using YSLib::GEvent< _tRet(_tParams...), _tInvoker >::const_reference = typename ContainerType::const_reference

在文件 YEvent.hpp 第 516 行定义.

## ◆ const_reverse_iterator

template<typename _tRet , typename... _tParams, typename _tInvoker >

using YSLib::GEvent< _tRet(_tParams...), _tInvoker >::const_reverse_iterator = typename ContainerType::const_reverse_iterator

在文件 YEvent.hpp 第 517 行定义.

## ◆ ContainerType

template<typename _tRet , typename... _tParams, typename _tInvoker >

using YSLib::GEvent< _tRet(_tParams...), _tInvoker >::ContainerType = multimap<EventPriority, HandlerType, std::greater<EventPriority> >

容器类型。

自从
  build 294

在文件 YEvent.hpp 第 507 行定义.

## ◆ FuncType

template<typename _tRet , typename... _tParams, typename _tInvoker >

using YSLib::GEvent< _tRet(_tParams...), _tInvoker >::FuncType = typename HandlerType::FuncType

在文件 YEvent.hpp 第 501 行定义.

## ◆ HandlerType

template<typename _tRet , typename... _tParams, typename _tInvoker >

using YSLib::GEvent< _tRet(_tParams...), _tInvoker >::HandlerType = GHEvent<_tRet(_tParams...)>

自从
  build 333

在文件 YEvent.hpp 第 500 行定义.

## ◆ InvokerType

template<typename _tRet , typename... _tParams, typename _tInvoker >

using YSLib::GEvent< _tRet(_tParams...), _tInvoker >::InvokerType = _tInvoker

自从
  build 675

在文件 YEvent.hpp 第 510 行定义.

## ◆ iterator

template<typename _tRet , typename... _tParams, typename _tInvoker >

using YSLib::GEvent< _tRet(_tParams...), _tInvoker >::iterator = typename ContainerType::iterator

在文件 YEvent.hpp 第 519 行定义.

## ◆ reference

template<typename _tRet , typename... _tParams, typename _tInvoker >

using YSLib::GEvent< _tRet(_tParams...), _tInvoker >::reference = typename ContainerType::reference

在文件 YEvent.hpp 第 520 行定义.

## ◆ result_type

template<typename _tRet , typename... _tParams, typename _tInvoker >

using YSLib::GEvent< _tRet(_tParams...), _tInvoker >::result_type = decltype(std::declval<_tInvoker&>()( std::declval<const_iterator>(), std::declval<const_iterator>(), std::declval<_tParams>()...))

自从
  build 675

在文件 YEvent.hpp 第 526 行定义.

## ◆ reverse_iterator

template<typename _tRet , typename... _tParams, typename _tInvoker >

using YSLib::GEvent< _tRet(_tParams...), _tInvoker >::reverse_iterator = typename ContainerType::reverse_iterator

在文件 YEvent.hpp 第 521 行定义.

## ◆ size_type

template<typename _tRet , typename... _tParams, typename _tInvoker >

using YSLib::GEvent< _tRet(_tParams...), _tInvoker >::size_type = typename ContainerType::size_type

在文件 YEvent.hpp 第 522 行定义.

## ◆ value_type

template<typename _tRet , typename... _tParams, typename _tInvoker >

using YSLib::GEvent< _tRet(_tParams...), _tInvoker >::value_type = typename ContainerType::value_type

在文件 YEvent.hpp 第 523 行定义.

## 构造及析构函数说明

## ◆ GEvent() [1/6]

template<typename _tRet , typename... _tParams, typename _tInvoker >

YSLib::GEvent< _tRet(_tParams...), _tInvoker >::GEvent | ( | InvokerType | ivk | ) |

inline

构造：使用指定调用器。

自从
  build 677

在文件 YEvent.hpp 第 557 行定义.

## ◆ GEvent() [2/6]

template<typename _tRet , typename... _tParams, typename _tInvoker >

YSLib::GEvent< _tRet(_tParams...), _tInvoker >::GEvent | ( | InvokerType | ivk,
|  | allocator_type | a
| ) |  |

inline

自从
  build 850

在文件 YEvent.hpp 第 561 行定义.

## ◆ GEvent() [3/6]

template<typename _tRet , typename... _tParams, typename _tInvoker >
template<typename _tHandler , yimpl(typename=ystdex::exclude_self_t< GEvent, _tHandler >, typename=ystdex::enable_if_t< std::is_constructible< HandlerType, _tHandler >::value >) >

YSLib::GEvent< _tRet(_tParams...), _tInvoker >::GEvent | ( | _tHandler | h,
|  | InvokerType | ivk = `{}`
| ) |  |

inline

构造：使用指定调用器并添加事件处理器。

自从
  build 849

在文件 YEvent.hpp 第 571 行定义.

## ◆ GEvent() [4/6]

template<typename _tRet , typename... _tParams, typename _tInvoker >
template<typename _tHandler , yimpl(typename=ystdex::exclude_self_t< GEvent, _tHandler >, typename=ystdex::enable_if_t< std::is_constructible< HandlerType, _tHandler >::value >) >

YSLib::GEvent< _tRet(_tParams...), _tInvoker >::GEvent | ( | _tHandler | h,
|  | InvokerType | ivk,
|  | allocator_type | a
| ) |  |

inline

自从
  build 850

在文件 YEvent.hpp 第 581 行定义.

引用了 YSLib::a.

## ◆ GEvent() [5/6]

template<typename _tRet , typename... _tParams, typename _tInvoker >

YSLib::GEvent< _tRet(_tParams...), _tInvoker >::GEvent | ( | const GEvent< _tRet(_tParams...), _tInvoker > & | e,
|  | allocator_type | a
| ) |  |

inline

在文件 YEvent.hpp 第 586 行定义.

## ◆ GEvent() [6/6]

template<typename _tRet , typename... _tParams, typename _tInvoker >

YSLib::GEvent< _tRet(_tParams...), _tInvoker >::GEvent | ( | GEvent< _tRet(_tParams...), _tInvoker > && | e,
|  | allocator_type | a
| ) |  |

inline

在文件 YEvent.hpp 第 589 行定义.

## 成员函数说明

## ◆ DefDeCopyMoveCtorAssignment()

template<typename _tRet , typename... _tParams, typename _tInvoker >

YSLib::GEvent< _tRet(_tParams...), _tInvoker >::DefDeCopyMoveCtorAssignment | ( | GEvent< _tRet(_tParams...), _tInvoker > |  | ) |

赋值：覆盖事件响应：使用单一构造参数指定的指定事件处理器。

自从
  build 333
  build 448

## ◆ DefDeCtor()

template<typename _tRet , typename... _tParams, typename _tInvoker >

YSLib::GEvent< _tRet(_tParams...), _tInvoker >::DefDeCtor | ( | GEvent< _tRet(_tParams...), _tInvoker > |  | ) |

inline

无参数构造：默认实现。

自从
  build 333
  build 850

在文件 YEvent.hpp 第 548 行定义.

## 类成员变量说明

## ◆ handlers

template<typename _tRet , typename... _tParams, typename _tInvoker >

ContainerType YSLib::GEvent< _tRet(_tParams...), _tInvoker >::handlers {}

private

响应列表。

自从
  build 572

在文件 YEvent.hpp 第 541 行定义.

## ◆ Invoker

template<typename _tRet , typename... _tParams, typename _tInvoker >

InvokerType YSLib::GEvent< _tRet(_tParams...), _tInvoker >::Invoker {}

调用器。

自从
  build 675

在文件 YEvent.hpp 第 534 行定义.

该类的文档由以下文件生成:

- YEvent.hpp