YSTest: ystdex::details::any_base结构体 参考

YSTest PreAlpha_b800_20170810 The YSLib Test Project

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

- 类列表
- 类索引
- 类继承关系
- 类成员

Public 成员函数 | Public 属性 | Protected 成员函数 | 所有成员列表
ystdex::details::any_base结构体 参考

`#include <any.h>`

类 ystdex::details::any_base 继承关系图:
[图例]

## Public 成员函数

| any_base ()=default
template<class _tHandler , typename... _tParams>
| any_base (any_ops::with_handler_t< _tHandler >, _tParams &&...args)
any_ops::any_storage & | call (any_ops::any_storage &, any_ops::op_code) const
void | clear ()
void | copy (const any_base &)
void | destroy ()
bool | has_value () const
void * | get () const
any_ops::holder * | get_holder () const
any_ops::any_storage & | get_storage () const
void | swap (any_base &)
template<typename _type >
_type * | target ()
template<typename _type >
const _type * | target () const
const type_info & | type () const
template<typename _type , typename... _tParams>
_type | unchecked_access (any_ops::op_code op, _tParams &&...args) const
template<typename _type >
_type | unchecked_access (default_init_t, any_ops::op_code op) const
template<typename _type >
_type | unchecked_access (any_ops::any_storage &t, any_ops::op_code op) const

## Public 属性

any_ops::any_storage | storage {}
any_ops::any_manager | manager {}

## Protected 成员函数

| any_base (const any_base &a)
| ~any_base ()=default

## 详细描述

在文件 any.h 第 687 行定义.

## 构造及析构函数说明

ystdex::details::any_base::any_base | ( |  | ) |

default

template<class _tHandler , typename... _tParams>

ystdex::details::any_base::any_base | ( | any_ops::with_handler_t< _tHandler > | ,
|  | _tParams &&... | args
| ) |  |

inline

在文件 any.h 第 696 行定义.

ystdex::details::any_base::any_base | ( | const any_base & | a | ) |

inlineprotected

自从
  build 714

在文件 any.h 第 702 行定义.

ystdex::details::any_base::~any_base | ( |  | ) |

protecteddefault

自从
  build 714

## 成员函数说明

any_ops::any_storage & ystdex::details::any_base::call | ( | any_ops::any_storage & | t,
|  | any_ops::op_code | op
| ) |  | const

在文件 any.cpp 第 67 行定义.

参考 manager, storage , 以及 yconstraint.

参考自 ystdex::any_input_iterator< _type, _tDifference, _tPointer, _tReference >::operator*(), ystdex::any_input_iterator< _type, _tDifference, _tPointer, _tReference >::operator++() , 以及 ystdex::any_bidirectional_iterator< _type, _tDifference, _tPointer, _tReference >::operator--().

这是这个函数的调用关系图:

void ystdex::details::any_base::clear | ( |  | ) |

在文件 any.cpp 第 76 行定义.

参考 ystdex::any_ops::destroy, manager, storage , 以及 yconstraint.

参考自 ystdex::any::reset().

这是这个函数的调用关系图:

void ystdex::details::any_base::copy | ( | const any_base & | a | ) |

在文件 any.cpp 第 85 行定义.

参考 ystdex::any_ops::clone, manager, storage , 以及 yconstraint.

参考自 ystdex::any::any().

这是这个函数的调用关系图:

void ystdex::details::any_base::destroy | ( |  | ) |

在文件 any.cpp 第 93 行定义.

参考 ystdex::any_ops::destroy, manager, storage , 以及 yconstraint.

参考自 ystdex::any::~any().

这是这个函数的调用关系图:

void * ystdex::details::any_base::get | ( |  | ) | const

前置条件
  断言：`manager` 。

在文件 any.cpp 第 101 行定义.

参考 ystdex::default_init , 以及 ystdex::any_ops::get_ptr.

any_ops::holder * ystdex::details::any_base::get_holder | ( |  | ) | const

在文件 any.cpp 第 107 行定义.

参考 ystdex::default_init , 以及 ystdex::any_ops::get_holder_ptr.

any_ops::any_storage& ystdex::details::any_base::get_storage | ( |  | ) | const

inline

自从
  build 692

在文件 any.h 第 738 行定义.

参考自 ystdex::any_input_iterator< _type, _tDifference, _tPointer, _tReference >::operator++() , 以及 ystdex::any_bidirectional_iterator< _type, _tDifference, _tPointer, _tReference >::operator--().

这是这个函数的调用关系图:

bool ystdex::details::any_base::has_value | ( |  | ) | const

inline

自从
  build 717

在文件 any.h 第 723 行定义.

void ystdex::details::any_base::swap | ( | any_base & | a | ) |

在文件 any.cpp 第 114 行定义.

参考 YSLib::a , 以及 ystdex::swap().

函数调用图:
template<typename _type >

_type* ystdex::details::any_base::target | ( |  | ) |

inline

在文件 any.h 第 748 行定义.

template<typename _type >

const _type* ystdex::details::any_base::target | ( |  | ) | const

inline

在文件 any.h 第 755 行定义.

const type_info & ystdex::details::any_base::type | ( |  | ) | const

在文件 any.cpp 第 121 行定义.

参考 ystdex::default_init , 以及 ystdex::any_ops::get_type.

template<typename _type , typename... _tParams>

_type ystdex::details::any_base::unchecked_access | ( | any_ops::op_code | op,
|  | _tParams &&... | args
| ) |  | const

inline

自从
  build 717

在文件 any.h 第 767 行定义.

参考 ystdex::standard_layout_storage< _tUnderlying >::pun() , 以及 yforward.

函数调用图:
template<typename _type >

_type ystdex::details::any_base::unchecked_access | ( | default_init_t | ,
|  | any_ops::op_code | op
| ) |  | const

inline

自从
  build 717

在文件 any.h 第 777 行定义.

参考 ystdex::standard_layout_storage< _tUnderlying >::pun_default().

函数调用图:
template<typename _type >

_type ystdex::details::any_base::unchecked_access | ( | any_ops::any_storage & | t,
|  | any_ops::op_code | op
| ) |  | const

inline

自从
  build 686

在文件 any.h 第 787 行定义.

## 类成员变量说明

any_ops::any_manager ystdex::details::any_base::manager {}

在文件 any.h 第 691 行定义.

参考自 ystdex::any::any(), call(), clear(), copy(), destroy(), ystdex::any::reset() , 以及 ystdex::any::~any().

any_ops::any_storage ystdex::details::any_base::storage {}

mutable

自从
  build 692

在文件 any.h 第 690 行定义.

参考自 call(), clear(), copy() , 以及 destroy().

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

- any.h
- any.cpp