在我的上一个问题中,我正在寻找一种方法来扩展 Ruby 变量的能力。回答这个问题让我想到了一个新问题。显然,“猴子补丁”解决了这个问题的很大一部分,现在我至少可以使用类似于“猴子补丁”方法进入 Fixnum 检查天气“3”是一个有效值的方法(a = 3).nat
来间接地进行输入。nat
一开始还可以,但仍然有点笨拙和不直观。最后我真正需要的是一种方法来重写、扩展、拦截或重载到 Fixnum 的构造函数,以便a = 3
直接调用方法nat
。
有没有办法做到这一点?
我不仅对“正确的方式”感兴趣,而且可能有点“hacky”。这仅用于我的研究,它可能是一种危险的、不受支持的方式。