YSTest: iterator_trait.hpp 文件参考

YSTest PreAlpha_b900_20201012 The YSLib Test Project

类 | 命名空间 | 类型定义
iterator_trait.hpp 文件参考
YBaseLib » YStandardExtend

迭代器特征。 更多...

`#include "type_traits.hpp"`
`#include <iterator>`
iterator_trait.hpp 的引用(Include)关系图:
此图展示该文件直接或间接的被哪些文件引用了:

浏览源代码.

## 类

struct | ystdex::has_iterator_category< _tTag, _tIter >
| 判断迭代器是否具有相同的指定的类别。 更多...
struct | ystdex::have_same_iterator_category< _tTag, _tIters >
| 判断若干个迭代器是否具有相同的指定的类别。 更多...

## 命名空间

| ystdex
| `<memory>` 特性测试宏。
| ystdex::details

## 类型定义

template<typename _type , typename _tIter >
using | ystdex::has_iterator_value_type = is_same< typename std::iterator_traits< _tIter >::value_type, _type >
| 判断迭代器是否具有相同的指定的值类型。 更多...
template<typename _tParam >
using | ystdex::details::iterator_reqirement_t = is_same< increment_t< _tParam & >, _tParam & >
template<typename _tParam >
using | ystdex::details::input_iterator_reqirement_t = and_< iterator_reqirement_t< _tParam >, is_convertible< typename std::iterator_traits< _tParam >::iterator_category, std::input_iterator_tag > >
template<typename _tParam , typename _type = void, typename = indirect_t<_tParam&>, typename = increment_t<_tParam&>>
using | ystdex::enable_for_iterator_t = enable_if_t< details::iterator_reqirement_t< _tParam >::value, _type >
| 选择迭代器类型的特定重载避免和其它类型冲突。 更多...
template<typename _tParam , typename _type = void, typename = indirect_t<_tParam&>, typename = increment_t<_tParam&>>
using | ystdex::enable_for_input_iterator_t = enable_if_t< details::input_iterator_reqirement_t< _tParam >::value, _type >
| 选择输入迭代器类型的特定重载避免和其它类型冲突。 更多...

## 详细描述

迭代器特征。

版本
  r127

作者
  FrankHB frank.nosp@m.hb19.nosp@m.89@gm.nosp@m.ail..nosp@m.com

自从
  build 627

创建时间:
  2015-08-30 16:29:07 +0800

修改时间:
  2019-09-04 11:19 +0800

文本编码:
  UTF-8

模块名称:
  YStandardEx::IteratorTrait

在文件 iterator_trait.hpp 中定义.