Thanks so much for the quick and useful reply... The suggestion to use "case obj when Class1, Class2" completely fulfills my needs, most appreciated :-D
On 16 Jan, 17:39, Rob Biedenharn <[email protected]> wrote: > On Jan 16, 2009, at 12:21 PM, jmfreitas wrote: > > > I need to check if a given object is an instance of a range of > > Classes, > > Are you sure? It would be more idiomatic to check for duck-typing: > obj.respond_to? :my_method > or to just call it and deal with the consequences: > begin > obj.my_method > rescue NoMethodError > # deal with it > end > > You already have something similar with: > case obj > when Class1, Class2 > # Yippee! > else > # Drat! > end > > > and I was wondering if I could do it by passing in is_a? an > > hash of classes, instead of calling is_a? for each class I have to > > compare... > > As I state in the subject (obj.is_one_of? {Class1, Class2, ...}), this > > could justify a method "obj.is_one_of?" which returns true if the > > object "obj" is an instance of Class1 or Class2... > > Is there something that I'm missing? > > What are you trying to do that causes you to want this? > > -Rob > > Rob Biedenharn http://agileconsultingllc.com > [email protected] --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---

