Серхио решил это за меня, хотя я не совсем понимаю, как!
Хорошей практикой считалось инкапсулировать методы в модуле, чтобы пользователи гема могли использовать их напрямую (hello
) или ограничены (Example::hello
) как им угодно.
Удалив self.
, метод может быть доступен только напрямую.Включая self.
это не работает вообще.Однако, выполнив:
module Example
extend self
def hello
puts "Hello"
end
end
extend Example
... он работает в обоих направлениях.