5

requireソースコードにa が表示された場合。

require "blah"

そのライブラリ (「何とか」) がコアの Ruby インストールによって提供されたのか、それとも gem のインストールによって提供されたのかを判断するにはどうすればよいですか?

4

2 に答える 2

1

を読んで、$LOADED_FEATURESパスが gem からのものかどうかを確認できます。これは、機能がコア インストールに属しているかどうかをテストしていることを意味します。

# return true if library is an external gem
$LOADED_FEATURES.grep(/library/).grep(/gems/).size > 0
于 2013-06-19T00:47:20.647 に答える
1

読み込まれたライブラリ ファイルが見つかるとrequire、そのファイルへのフル パスが$LOADED_FEATURES配列に追加されます。したがって、その配列を調べて、見つかった場所を確認できますblah

$LOADED_FEATURES.find_all { |path| puts path if /blah/ =~ path }
于 2013-06-18T23:11:02.803 に答える