On 20. 12. 2011 16:20, Timon Gehr wrote:

struct Item1(T){}
struct Item2(T){}

mixin template getItems(Items ...){
static if(Items.length) {
private alias Items[0] _item;
mixin _item!int;
mixin getItems!(Items[1..$]);
}
}

struct Group(Items...)
{
mixin getItems!Items;
}

void main(){
alias Group!(Item1, Item2) G;
}


Thank you. Solution 1 worked well.

The need to introduce new symbol '_item' using alias because one cannot mixin Items[0]!int directly seems to me as a bug. Do you happen to know if it is already reported?

Reply via email to