我正在制作一个奇怪的类,我想捕获发送到类的对象的每个方法。我可以通过method_missing实现我想要的大部分内容,例如Ruby:捕获发送到对象的所有方法
class MyClass
def method_missing m, *args
# do stuff
end
end
问题在于MyClass从Object继承的所有实例方法。我可以一一浏览每种方法并重新定义它们,但我希望采取更灵活的方法。当我尝试触摸这些实例方法时,我尝试过的所有元编程方法都有一个NameError抱怨。
这就是我正在寻找的! – Max
使用BasicObject会好得多,因为它完成同样的事情并且更安全。 – Max
已记录。当发布这个答案时,1.8在生产场景中仍然很常见,因此'BasicObject'还不存在。 – numbers1311407