Ruby のコード追うのに便利だったメソッド1

  • Ruby のコード追っていて便利だったメソッドの忘備録

Method#source_location

docs.ruby-lang.org

  • メソッドがどこで定義されているか教えてくれる
[8] pry(#<Thor::Command>)> instance.method(:perform).source_location
=> ["$HOME/.rbenv/versions/2.6.2/lib/ruby/gems/2.6.0/gems/railties-5.1.6/lib/rails/commands/application/application_command.rb", 23]
  • Proc もあるらしい

docs.ruby-lang.org

Method#original_name

docs.ruby-lang.org

  • alias で名前が変わってしまったメソッドの元の名前がわかる
[14] pry(#<Thor::Command>)> instance.method(:application).original_name
=> :perform

Method#owner

docs.ruby-lang.org

  • メソッドがどのクラスで定義されているかわかる

Object#methods

docs.ruby-lang.org

  • オブジェクトが持つメソッドの一覧を出してくれる