On Sat, Jun 22, 2013 at 4:18 PM, anonymous
<anonymous@example.com> wrote:
On Saturday, 22 June 2013 at 23:03:17 UTC, Dicebot wrote:
http://dpaste.1azy.net/22d5eee2
------------------------------------
import std.traits;
template getTemplate(T)
{
static if (is(T == TI!TP, alias TI, TP))
alias! Of course!
{
alias getTemplate = TI;
}
else
static assert (false);
}
Replacing the static if with template specialization makes it shorter:
template getTemplate(T : TI!TP, alias TI, TP)
{
alias getTemplate = TI;
}
great, thanks!
improved to support arbitrary number of a
template getTemplate(T : TI!TP, alias TI, TP...)
{
alias getTemplate = TI;
}
however, indeed seems to work with types only, not functions.