From: Shin Nishiyama Date: 2003-07-10T17:49:31+09:00 Subject: Re: Doing a "case" on class Hi, case does not use == but === when comparision, and irb(main):032:0> Fixnum == Fixnum => true irb(main):033:0> Fixnum === Fixnum => false because $ ri Module#=== ------------------------------------------------------------- Module#=== mod === anObject -> true or false ------------------------------------------------------------------------ Case Equality---Returns true if anObject is an instance of mod or one of mod's descendents. Of limited use for modules, but can be used in case statements to classify objects by class. so, you shuould code like > fred = 123 > case fred > when Fixnum > puts "Yippee!" > > # when > > else > puts "I don't know what to do with #{fred.class}" > end Shin Nishiyama