Определите класс следующим образом. Я хочу позвонить one_method
динамически. По умолчанию wow.one_method
вызывает первый one_method
. Если я хочу изменить поведение метода, просто вызовите redefine
.
Я могу реализовать метод как свойство типа функции, но это не то, что я хочу.
Если я использую следующий код напрямую, он сообщит об ошибках. Не могли бы вы немного его изменить.
class Wow
def one_method
puts "hello Ruby"
end
def redefine(what="none")
define_method :one_method do
puts what
end
end
end
wow = Wow.new
wow.redefine("Whatever I want.")