Elements in this tuple as $(D_PSYMBOL AliasSeq).
The length of the tuple.
Elements of this $(D_PSYMBOL Pack).
alias A = Pack!short; alias B = Pack!(3, 8, 9); alias C = Pack!(A, B); static assert(C.length == 2); static assert(A.length == 1); static assert(is(A.Seq == AliasSeq!short)); static assert(B.length == 3); static assert(B.Seq == AliasSeq!(3, 8, 9)); alias D = Pack!(); static assert(D.length == 0); static assert(is(D.Seq == AliasSeq!()));
$(D_PSYMBOL AliasSeq).
Holds a typed sequence of template parameters.
Different than $(D_PSYMBOL AliasSeq), $(D_PSYMBOL Pack) doesn't unpack its template parameters automatically. Consider:
Using $(D_PSYMBOL AliasSeq) template A gets 4 parameters instead of 2, because $(D_PSYMBOL AliasSeq) is just an alias for its template parameters.
With $(D_PSYMBOL Pack) it is possible to pass distinguishable sequences of parameters to a template. So: