由于某种原因,d
在我输入 irb 后立即定义了一个名为的变量。知道它是什么吗?
问问题
87 次
3 回答
6
你irbtools
有机会使用吗?如果是,则有一个名为 的预定义方法d
,大致如下所示:
def d
self.tap { |v| puts v }
end
它可以用来调试这样的消息链:obj.some_method.d.other_method
.
由于它是在Object
级别定义的,因此如果您只是在 IRB 顶层调用它,它应该会返回main
。
于 2012-06-12T15:17:57.077 回答
4
您可以使用开关运行irb
以-f
抑制加载~/.irbrc
:
irb -f
这将很快告诉您是否d
来自您的某个地方~/.irbrc
(很可能是 - 请参阅迈克尔的回答)。
于 2012-06-12T15:19:40.883 回答
2
不适合我:
$ irb
>> d
NameError: undefined local variable or method `d' for main:Object
from (irb):1
于 2012-06-12T15:10:24.643 回答