On Wed, Jul 08, 2009 at 02:48:31AM +1000, Derek Parnell wrote:
>    switch (X) {
>       case 1: funcA(); break;
>       case 2,5,7,10 .. 17, 24, 32: funcB(); break;
>       case 3,6,8,18 .. 23: funcC(); break;
>    }
> In other words, allowing a range of value inside a list of values.
> 
> How is this possible in today's D?

switch(X) {
        case 1: stuff; break;
        case 2,5,7: case 10: .. case 17: case 24,32: stuff; break;
        case 3,6,8: case 18: .. case 23: stuff; break;
}

This compiles on the new dmd. Only one item is allowed on a case range,
but you can just use fall through behaviour to make it its own case right
after the list.




-- 
Adam D. Ruppe
http://arsdnet.net

Reply via email to