From: MenTaLguY Date: 2008-08-14T08:36:07+09:00 Subject: Re: case statement and ranges --=-Uilv8OWokswQiIX0eDvN Content-Type: text/plain Content-Transfer-Encoding: quoted-printable On Thu, 2008-08-14 at 07:21 +0900, Mini Skirt wrote: > Now what I would like to have some other cases like when amount is lower > that 25, but with no minimum, or when it is higher that 123 ... > I could write something like: >=20 > case > when amount =3D=3D=3D (25..50): 42 > when amount =3D=3D=3D (51..66): 78 > when amount =3D=3D=3D (90..123): 99 > when amount < 25: 100 > when amount > 123: 200 > else 0 # this would happen only when amount is in 67...90 > end If you use version 0.5 my 'case' gem: require 'rubygems' require 'case' case amount when (25..50): 42 when (51..66): 78 when (90..123): 99 when (Case::Cmp < 25): 100 when (Case::Cmp > 123): 200 else 0 end -mental --=-Uilv8OWokswQiIX0eDvN Content-Type: application/pgp-signature; name=signature.asc Content-Description: This is a digitally signed message part -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) iD8DBQBIo3CJEpMFVe94r24RAjxrAJ9hJhnjIjLlqEkAZcJhUM7yEkz1AACfbdIr LfuKSQbAycFv8XI1R4fXTwg= =6w+6 -----END PGP SIGNATURE----- --=-Uilv8OWokswQiIX0eDvN--