28 #ifndef YB_INC_ystdex_variadic_hpp_
29 #define YB_INC_ystdex_variadic_hpp_ 1
41 template<
size_t... _vSeq>
52 return sizeof...(_vSeq);
83 template<
size_t _vHead,
size_t... _vTail>
100 template<
class,
class>
103 template<
class _tSeq1,
class _tSeq2>
106 template<
size_t... _vSeq1,
size_t... _vSeq2>
120 template<
size_t,
class>
123 template<
size_t _vIdx,
class _tSeq>
126 template<
size_t _vIdx>
129 template<
size_t... _vSeq>
141 template<
size_t _vIdx,
size_t... _vSeq>
150 using type =
typename sub::type;
161 template<
class,
class>
164 template<
class _tSeq,
class _tIdxSeq>
167 template<
size_t... _vSeq,
size_t... _vIdxSeq>
186 template<
class _tSeq>
195 template<
size_t... _vSeq>
218 template<
class _tSeq>
221 template<
size_t... _vSeq>
typename sequence_project< _tSeq, _tIdxSeq >::type sequence_project_t
sequence_split_t< vseq > type
typename sequence_reverse< _tSeq >::type sequence_reverse_t
make_successor_t< make_natural_sequence_t< _vN-1 >> type
typename sequence_split< _tSeq >::type sequence_split_t
typename make_successor< _tSeq >::type make_successor_t
typename sequence_cat< _tSeq1, _tSeq2 >::type sequence_cat_t
static size_t size()
取序列长度。
#define yconstfn
指定编译时常量函数。
typename sequence_element< _vIdx, _tSeq >::type sequence_element_t
#define yconstexpr
指定编译时常量表达式。
sequence_cat_t< sequence_reverse_t< typename sequence_split< vseq >::tail >, sequence_split_t< vseq >> type
typename make_natural_sequence< _vN >::type make_natural_sequence_t