Как создать псевдоним метода класса в модуле?
Я использую Ruby v1.9.2 и гем Ruby on Rails v3.2.2. У меня был следующий модуль
module MyModule
extend ActiveSupport::Concern
included do
def self.my_method(arg1, arg2)
...
end
end
end
и я хотел псевдонимметод класса my_method
, Итак, я заявил следующее (не работает) код:
module MyModule
extend ActiveSupport::Concern
included do
def self.my_method(arg1, arg2)
...
end
# Note: the following code doesn't work (it raises "NameError: undefined
# local variable or method `new_name' for #").
def self.alias_class_method(new_name, old_name)
class < self
alias_method new_name, old_name
end
end
alias_class_method :my_new_method, :my_method
end
end