class Method

def with_class_and_method_name

def with_class_and_method_name
  if self.inspect =~ /<Method: (.*)\#(.*)>/ then
    klass = eval $1
    method  = $2.intern
    raise "Couldn't determine class from #{self.inspect}" if klass.nil?
    return yield(klass, method)
  else
    raise "Can't parse signature: #{self.inspect}"
  end
end