我知道我可以做到以下三行:
class << self
alias :generate :new
end
但是出于好奇,有没有一种更简单的方法(没有分号)像:
class_alias :generate, :new
我知道我可以做到以下三行:
class << self
alias :generate :new
end
但是出于好奇,有没有一种更简单的方法(没有分号)像:
class_alias :generate, :new
由于Ruby 1.9,您可以使用singleton_class
方法访问类的singleton对象.这样,您也可以访问alias_method
方法.方法本身是私有的,因此需要使用send
调用它.这是你的一句台词:
singleton_class.send(:alias_method, :generate, :new)
但是请记住,alias
在这里不起作用.