AliasSeq

Holds a sequence of aliases.

$(D_PSYMBOL AliasSeq) can be used to pass multiple parameters to a template at once. $(D_PSYMBOL AliasSeq) behaves as it were just Args. Note that because of this property, if multiple instances of $(D_PSYMBOL AliasSeq) are passed to a template, they are not distinguishable from each other and act as a single sequence. There is also no way to make $(D_PSYMBOL AliasSeq) nested, it always unpacks its elements.

alias AliasSeq(Args...) = Args

Parameters

Args

Symbol sequence.

Return Value

An alias for sequence Args.

Examples

static assert(is(typeof({ alias T = AliasSeq!(short, 5); })));
static assert(is(typeof({ alias T = AliasSeq!(int, short, 5); })));
static assert(is(typeof({ alias T = AliasSeq!(() {}, short, 5); })));
static assert(is(typeof({ alias T = AliasSeq!(); })));

static assert(AliasSeq!().length == 0);
static assert(AliasSeq!(int, short, 5).length == 3);

alias A = AliasSeq!(short, float);
alias B = AliasSeq!(ushort, double);
alias C = AliasSeq!(A, B);
static assert(C.length == 4);

See Also

$(D_PSYMBOL Alias).

Meta