Просмотреть доступные методы ruby

как я могу просмотреть все доступные методы для объекта в ruby. Я использую aptana IDE при вводе файла. никакие методы не отображаются. Я исхожу из фона eclipse/java.

Спасибо

Ответ 1

Существует несколько методов:

obj.methods
obj.public_methods
obj.private_methods
obj.protected_methods
obj.singleton_methods

Обновление

  • Чтобы получить методы объекта отдельно от всех унаследованных методов, вы можете:

    obj.methods(ложь)

  • Как упоминается в комментариях Tempus, следующая команда очень полезна для получения текущих методов объекта помимо унаследованных методов Object (базового класса):

    obj.methods - Object.methods

Ответ 2

Вы можете передать true методам, если вы хотите игнорировать методы, определенные в суперклассах:

obj.methods(true)
obj.public_methods(true)
obj.private_methods(true)
obj.protected_methods(true)
obj.singleton_methods(true)

Или, если вы хотите удалить наиболее распространенные методы, определенные в классе Object, вы хотите добавить либо - Object.methods, либо - Object.instance_methods, в зависимости от того, является ли obj классом или экземпляром класса.

Ответ 3

Если у вас запущен интерпретатор Ruby, <object>.methods покажет доступные методы для объекта. В Eclipse, когда я набрал File., ничего не произошло, пока я не сделал команду Content Assist (CTRL + пробел). В этот момент я получил список методов.

Ответ 4

Я также хотел бы отметить, что obj.methods не возвращает отсортированные имена методов, поэтому вы можете сделать obj.methods.sort.

Ответ 5

Вы можете вызвать File.methods в интерактивном интерпретаторе Ruby, чтобы просмотреть все доступные методы. Я не уверен, есть ли способ в среде IDE, которую вы используете, поскольку я раньше не использовал ее.