switch with enum

tcak via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Tue Nov 24 19:51:46 PST 2015


I have seen a code a while ago, but even by looking at 
documentation, I couldn't have found anything about it.

Let's say I have defined an enum;

enum Status: ubyte{
  Busy = 1,
  Active = 2
}

and received a ubyte value from user.

ubyte userValue;

I want to switch over userValue, but that should depend on Status.

switch( userValue ){
...
}

What I mean is that compiler should enforce values of enum 
"Status" to be declared in switch as it would be done with "final 
switch", but as you can guess, user might enter a value that is 
not defined by Status. Thus, I should be able to enter the case 
"default" as well.

I remember it something like switch( userValue ) with( Status 
){...}, but not sure about it. Maybe it was D1 code. Is there 
anything like this currently?


More information about the Digitalmars-d-learn mailing list