Is it possible to evaluate an enum's base type? Ideally something like:

enum somestrs : string { ... }
enum d = 0.0;
template EnumBaseType(E) if (is(E==enum)) { ... }
unittest {
   static assert( is(EnumBaseType!somestrs == string) );
   static assert( is(EnumBaseType!d : float) );
   static assert(!is(EnumBaseType!d == float) );
}

A template like this would make at least my life easier.

Reply via email to