Go to English Blog

Listar métodos de uma classe em Ruby

Leia em menos de um minuto

Precisar saber quais são os métodos disponíveis em classe em Ruby? Essa é bem simples:

#!/usr/bin/env ruby

class MyClass
  def my_public_method
  end

  private

  def my_private_method
  end

  protected

  def my_protected_method
  end
end

m = MyClass.new

#lista somente métodos públicos
puts m.public_methods

#lista somente métodos privados
puts m.private_methods

#lista somente métodos protegidos
puts m.protected_methods

#lista todos os métodos
puts m.methods

Vale lembrar que os métodos public_methods e private_methods listam outros métodos que são herdados automaticamente.