From: Erik Veenstra Date: 2006-07-23T01:43:47+09:00 Subject: Re: when I say method_defined? I mean it! > def wrap_method( sym, &blk ) > raise ArgumentError, "method does not exist -- #{sym}" unless method_defined?( sym ) > old = instance_method(sym) > define_method(sym) { |*args| blk.call(old.bind(self), *args) } > end Replace "unless method_defined?( sym )" with "unless (method(sym) rescue nil)". But you don't need this check. instance_method(sym), on the next line, already performs this check for you. gegroet, Erik V. - http://www.erikveen.dds.nl/