YSTest: ystdex::vseq::details::unique< _tSeq, _vN > 模板结构体 参考

YSTest PreAlpha_b900_20201012 The YSLib Test Project

Public 类型 | Private 类型 | 所有成员列表
ystdex::vseq::details::unique< _tSeq, _vN > 模板结构体 参考

`#include <variadic.hpp>`

## Public 类型

using | type = concat_t< half, cond_t< is_same< half_back, last_front >, pop_front_t< last >, last > >

## Private 类型

using | split = split_n< _vN/2, _tSeq >
using | half = _t< unique< typename split::type > >
using | last = _t< unique< typename split::tail > >
using | half_back = back_t< half >
using | last_front = front_t< last >

## 详细描述

### template<class _tSeq, size_t _vN = seq_size<_tSeq>::value>
struct ystdex::vseq::details::unique< _tSeq, _vN >

注解
  使用二分实现减少递归实例化深度。

自从
  build 649

在文件 variadic.hpp 第 809 行定义.

## 成员类型定义说明

## ◆ half

template<class _tSeq , size_t _vN = seq_size<_tSeq>::value>

using ystdex::vseq::details::unique< _tSeq, _vN >::half = _t<unique<typename split::type> >

private

在文件 variadic.hpp 第 813 行定义.

## ◆ half_back

template<class _tSeq , size_t _vN = seq_size<_tSeq>::value>

using ystdex::vseq::details::unique< _tSeq, _vN >::half_back = back_t<half>

private

在文件 variadic.hpp 第 815 行定义.

## ◆ last

template<class _tSeq , size_t _vN = seq_size<_tSeq>::value>

using ystdex::vseq::details::unique< _tSeq, _vN >::last = _t<unique<typename split::tail> >

private

在文件 variadic.hpp 第 814 行定义.

## ◆ last_front

template<class _tSeq , size_t _vN = seq_size<_tSeq>::value>

using ystdex::vseq::details::unique< _tSeq, _vN >::last_front = front_t<last>

private

在文件 variadic.hpp 第 816 行定义.

## ◆ split

template<class _tSeq , size_t _vN = seq_size<_tSeq>::value>

using ystdex::vseq::details::unique< _tSeq, _vN >::split = split_n<_vN / 2, _tSeq>

private

在文件 variadic.hpp 第 812 行定义.

## ◆ type

template<class _tSeq , size_t _vN = seq_size<_tSeq>::value>

using ystdex::vseq::details::unique< _tSeq, _vN >::type = concat_t<half, cond_t<is_same<half_back, last_front>, pop_front_t<last>, last> >

在文件 variadic.hpp 第 819 行定义.

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

- variadic.hpp