打印对象的独特方法

Dru*_*Dru 2 ruby reflection ruby-on-rails

我正在尝试使用红宝石网络蜘蛛框架Anemone.我想知道如何打印与对象关联的所有方法?例如,下面的代码输出puts page.url但我想知道除了url之外还有哪些其他方法可用.如何打印所有相关方法?

require 'anemone'

    Anemone.crawl("http://www.fsu.edu") do |anemone|
      anemone.on_every_page do |page|
        puts page.url 
      end 
    end 
Run Code Online (Sandbox Code Playgroud)

回答 puts (page.methods - Object.public_methods)

jde*_*eno 8

我用这个来理清无趣的事情:

irb> pp (page.methods - Object.new.methods).sort
Run Code Online (Sandbox Code Playgroud)

此外,从IRB我使用Wirble gem popoc类似的方法:

irb> po page
Run Code Online (Sandbox Code Playgroud)

更新:这些天我用Pry.当Pry可用时,ls命令效果很好:

pry> ls page
Run Code Online (Sandbox Code Playgroud)