foreach over enums?

Simen kjaeraas simen.kjaras at gmail.com
Tue Sep 21 16:16:22 PDT 2010


%u <e at ee.com> wrote:

> enum X { A=3, B=1, C }
>
> void main() {
>     foreach(e;X)
>         writefln(e.stringof," = ",e);
> }
> //X.A = 3
> //X.B = 1
> //X.C = 2
> or
> //X.B = 1
> //X.C = 2
> //X.A = 3


enum X { A=3, B=1, C }

void main( ) {
     foreach( e;  __traits(allMembers, X) ) {
         writeln( "X.", e, " = ", mixin( "X."~e ) );
     }
}


-- 
Simen


More information about the Digitalmars-d-learn mailing list