Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on May 5th, 2012  |  syntax: None  |  size: 0.49 KB  |  hits: 9  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. How to check what class implements specified method in Ruby?
  2. require 'net/http'
  3. req = Net::HTTP::Get.new( "http://localhost:8080/" )
  4. req.basic_auth( "user", "password" )
  5.        
  6. req.method(:basic_auth).owner
  7. # => Net::HTTPHeader
  8.        
  9. Kernel.instance_method(:method).bind(req).(:basic_auth).owner
  10. # => Net::HTTPHeader
  11.        
  12. class Object
  13.   def which method
  14.     self.class.ancestors.find { |a| a.instance_methods(false).include? method.to_s }
  15.   end
  16. end
  17.        
  18. puts req.which :basic_auth    #=> Net::HTTPHeader