On Friday, 1 May 2015 at 10:04:46 UTC, Namespace wrote:
How about this:

----
struct A {
  int x = 42;
}

struct B {
  int x = 7;
}

T factory(T)() {
  return T();
}

void main()
{
  auto a = factory!(A);
}
----

Of course, you can restrict the type to A or B, or both:
----
T factory(T)() if (is(T == A) || is(T == B)) {
  return T();
}
----

Reply via email to