/
Template arguments

Template arguments

Given a type S, which is an instantiation of a template T, how do you get the arguments out of S?

alias S = T!(A, B, C);

static if(is(S : U!(Ts), alias U, Ts...)) {
	pragma(msg, Ts);
}
  • This doesn't seem to work with alias templates, only templates that generate symbols

 

from http://dlang.org/expression#IsExpression, item #7