On Saturday, 15 August 2015 at 15:37:42 UTC, QuizzicalFella wrote:
I'd like to be able to call someFunc(TRIANGLE) rather than
someFunc(PolygonT.TRIANGLE).
Two options come to mind:
alias TRIANGLE = PolygonT.TRIANGLE;
// etc
Or at the usage site:
with(PolygonT) {
someFunc(TRIANGLE);
}
I don't mind if adding another enum with members of the same
name like this:
enum CelestialBodiesT : byte { MOON, SUN, BLACK_HOLE, STAR }
...would force me to call someFunc(PolygonT.STAR) by the
compiler, but for the case where there's no ambiguity, I don't
want to write out the type of the enum...
That'll work as long as the two enums are defined in separate
modules, then only import the one you need to use at the time.
Otherwise, they will conflict and it will force you to write it
out long form again.