Here I'm testing T is either a class or interface:

void foo(T)(T bar) if (is(T == class) || is(T == interface))
{
    ...
}

Is there a more elegant way of testing T for multiple types? Because it doesn't scale well if I need to add more.

I would love to use something like this:

void foo(T)(T bar) if (T in [class, interface])
{
    ...
}

Is something like this currently possible using type tuples?

Reply via email to