Ответ 1
Вы можете использовать метод Module#instance_methods
:
o.class.instance_methods(false)
Предупреждение Документация кажется неправильной, она говорит, что:
Без аргумента или с аргументом, который является ложным, экземпляр методы в моде возвращаются, в противном случае методы в моде и моде возвращаются суперклассы.
Но на самом деле параметр по умолчанию: true
:
String.instance_methods.size
# => 184
String.instance_methods(false).size
# => 130