En Rubí 1.9+, puede simplemente hacer:
Vehicle.singleton_class.private_instance_methods(false)
#=> [:background]
en Ruby 1.8, las cosas son un poco más complicado.
Vehicle.private_methods
#=> [:background, :included, :extended, :method_added, :method_removed, ...]
devolverá todos los métodos privados. Puedes realizar un filtrado la mayor parte de los declarados fuera haciendo
Vehicle.private_methods - Module.private_methods
#=> [:background, :append_features, :extend_object, :module_function]
pero eso no quiere llegar a ser muy de todos ellos, usted tiene que crear un módulo para hacer eso
Vehicle.private_methods - Module.new.private_methods
#=> [:background]
Este último tiene el desafortunado requisito de crear un módulo solo para descartarlo.