On Saturday, 25 January 2014 at 08:53:19 UTC, Timon Gehr wrote:
alias Seq(T...)=T;

struct A(T...){}
struct B{}
struct C{}

alias T=A!(B,C);


static if(is(T==X!Y,alias X,Y...)){
    static assert(__traits(isSame, X, A));
    static assert(is(Y==Seq!(B,C)));
}

It won't work for templated function type though and probably some other cases I have forgotten by today. That was the problem locking fullyQualifiedName update as such functionality in Phobos is suppose to be generic.

That said, probably adding simple special case for aggregate types is worth it as it seems most common thing to encounter.

Reply via email to