gpt4 book ai didi

ruby - pry 默认加载哪些库?

转载 作者:数据小太阳 更新时间:2023-10-29 08:18:04 24 4
gpt4 key购买 nike

当我在 pry 中使用 Tempfile 类时,我没有使用 require 它。

% pry -f
pry(main)> Tempfile
Tempfile < #<Class:0x00007fb5121149b8>

但是当在 irb 中时,我必须首先要求 tempfile

% irb
irb(main):001:0> Tempfile
NameError: uninitialized constant Tempfile
from (irb):1
from /Users/ironsand/.rbenv/versions/2.4.3/bin/irb:11:in `<main>'
irb(main):002:0> require 'tempfile'
=> true

所以看起来pry 默认加载一些库。实际加载了哪些库?

这是我的环境

 % ruby -v
ruby 2.4.3p205 (2017-12-14 revision 61247) [x86_64-darwin17]
% irb --version
pirb 0.9.6(09/06/30)
% pry --version
Pry version 0.11.3 on Ruby 2.4.3

最佳答案

您可以比较 $LOADED_FEATURES 以查看默认 pry session 与 irb session (或普通 ruby​​ 脚本)中加载的所有内容.

简短的回答是 Pry 加载它需要的任何库来提供自己的行为。长答案太长(而且很可能会过时,或者版本之间存在差异)无法在此处列出——最好询问您当前的环境。

最好不要依赖其他库来为您加载它们的依赖项,因为这些依赖项可能会发生变化。 (虽然在这种情况下,很难注意到您缺少 require,因为一切仍然有效。)

关于ruby - pry 默认加载哪些库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51729422/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com