switch to member
Ivan Kazmenko via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Sat Jan 14 03:38:32 PST 2017
On Saturday, 14 January 2017 at 03:20:24 UTC, Ignacious wrote:
> switch(x)
> {
> case X:
> q.X = e;
> break;
> case Y:
> q.Y = e;
> break
> etc...
> }
Do you mean that verbatim? Or are the case values strings, like:
switch(x)
{
case "foo":
q.foo = e;
break;
case "bar":
q.bar = e;
break
}
> I imagine one could write a string mixin that generates the
> cases and assignments but I'm hoping for a more elegant
> solution.
In any case, I also can imagine a mixin answer, but not much
better. Unless you want to actually look at the broader picture
and maybe redesign the surrounding code to somehow cleverly get
rid of the switch altogether. The question as it is however
doesn't give the context to make it possible.
Ivan Kazmenko.
More information about the Digitalmars-d-learn
mailing list