Here is another, more standard version:

switch(model.ctor){
  case DivideSentenceStep1:
  case DivideSentenceStep2:

}

All you need to do is setting ctor to the real constructor of your 
class. But on the other hand case by type is bad smell anyway, maybe 
your classes should implement what's in the case.

Cheers,
Ralf.



Dan Shryock wrote:
> Nope, you're not missing anything, that was exactly my point because 
> that's all people are getting by using the switch statement in the way 
> that they are.  The syntax that I suggested is actually the only way of 
> doing that sort of logic in xsl and jstl (using xml format of course).
> 
> Dan
> 
> On 2/16/06, *Scott Hyndman* <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>> 
> wrote:
> 
>     That appears to be an "if, else if, else" statement with different
>     words...and a seemingly unnecessary outer block (the choose).
> 
>     Am I missing something?
> 
>     Scott
> 
>     -----Original Message-----
>     From:   [EMAIL PROTECTED]
>     <mailto:[EMAIL PROTECTED]> on behalf of Dan Shryock
>     Sent:   Thu 2/16/2006 11:01 AM
>     To:     Open Source Flash Mailing List
>     Cc:
>     Subject:        Re: [osflash] switch - case
> 
>     IMHO it is an abuse simply because the syntax isn't necessarily
>     obvious for
>     someone who expects a case inside of a switch to match the param to the
>     switch.  Maybe we should all start lobbying the major c based
>     languages to
>     support a syntax like this ;)
> 
>     choose{
>        when(bla){
>           //...
>        }
>        when(bla2){
>           //...
>        }
>        otherwise{
>           //...
>        }
>     }
> 
>     Dan
> 
>     On 2/16/06, Evan < [EMAIL PROTECTED]
>     <mailto:[EMAIL PROTECTED]>> wrote:
>      >
>      > I'm confused about you think that's an abuse of switch? That's a
>     valid use
>      > that's been used for YEARS in C programming, it's nothing new.
>      >
>      > -Evan
>      >
>      > On 2/15/06, Bob Ippolito <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>
>     wrote:
>      > >
>      > >
>      > > On Feb 15, 2006, at 8:59 AM, Jos Yule wrote:
>      > >
>      > > > Ralf Bokelberg wrote:
>      > > >> You can do it like this
>      > > >>
>      > > >> switch( true){
>      > > >>      case (model instanceof DivideSentenceStep1):
>      > > >>               //...
>      > > >>      case (model instanceof DivideSentenceStep2):
>      > > >>               //...
>      > > >>      default:
>      > > >>               //...
>      > > >> }
>      > > >
>      > > > That is very clever.
>      > >
>      > > Why the heck would you want to abuse switch like that?
>      > >
>      > > if (mode instanceof ...) {
>      > >         // ...
>      > > } else if (mode instanceof ...) {
>      > >         // ...
>      > > } else if (mode instanceof ...) {
>      > >         // ...
>      > > } else {
>      > >         // ...
>      > > }
>      > >
>      > > -bob
>      > >
>      > >
>      > > _______________________________________________
>      > > osflash mailing list
>      > > [email protected] <mailto:[email protected]>
>      > > http://osflash.org/mailman/listinfo/osflash_osflash.org
>      > >
>      >
>      >
>      > _______________________________________________
>      > osflash mailing list
>      > [email protected] <mailto:[email protected]>
>      > http://osflash.org/mailman/listinfo/osflash_osflash.org
>      >
>      >
>      >
> 
> 
> 
> 
>     _______________________________________________
>     osflash mailing list
>     [email protected] <mailto:[email protected]>
>     http://osflash.org/mailman/listinfo/osflash_osflash.org
> 
> 
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> osflash mailing list
> [email protected]
> http://osflash.org/mailman/listinfo/osflash_osflash.org

_______________________________________________
osflash mailing list
[email protected]
http://osflash.org/mailman/listinfo/osflash_osflash.org

Reply via email to