在重新加载时避免递归别名

时间:2012-10-29 11:50:20

标签: ruby alias reload

有时候,我们使用alias替换一个修改过的方法,如下所示:

alias old_foo :foo
private :old_foo
def foo
  ...
  old_foo
  ...
end

如果确保这样的文件只加载一次就可以了,但在某些情况下,可能会发生这样的文件多次加载。在这种情况下,普通的方法定义是可以的:它们将被同一个东西覆盖。并且,变量也可以(尽管它们可能会发出警告消息)。但是对于别名,这种情况会造成巨大的混乱和无限循环。在上述情况下进行别名的最安全的方法是什么,以便在文件多次加载时不会搞砸?

0 个答案:

没有答案