Enums - probably an old subject
Michal Minich
michal.minich at gmail.com
Thu Nov 21 00:05:01 PST 2013
On Thursday, 21 November 2013 at 07:42:48 UTC, Craig Dillabaugh
wrote:
> I should also mention, this post likely better belongs in:
>
> digitalmars.D.learn
I don't entirely think so. I think the OP is arguing that D
should be able to identify symbol as specific enum's field when
used:
- in place of function argument when the fn parameters is of
enum type
- and when comparing for equality with variable of enum type.
ie. the lookup of the symbol should be first inside the enum, and
the continue normally.
There was plan long long time ago to implement it, but I don't
remember for which reason it was not.
In order to consider this again for implementation I think proper
DIP should be written where complete semantics of this should be
described. For one I don't know how it should be have if you
would have variable of the same name as enum field i.e:
enum State { on, off }
auto State s;
auto on = 1;
if (on == on) ?
And I think it would be especially confusing when enum which is
function parameters has the same field name as local variable on
call site:
void change (State s) {}
void main () { State on = State.off, change (on) }
More information about the Digitalmars-d
mailing list