require
ソースコードにa が表示された場合。
require "blah"
そのライブラリ (「何とか」) がコアの Ruby インストールによって提供されたのか、それとも gem のインストールによって提供されたのかを判断するにはどうすればよいですか?
require
ソースコードにa が表示された場合。
require "blah"
そのライブラリ (「何とか」) がコアの Ruby インストールによって提供されたのか、それとも gem のインストールによって提供されたのかを判断するにはどうすればよいですか?
を読んで、$LOADED_FEATURES
パスが gem からのものかどうかを確認できます。これは、機能がコア インストールに属しているかどうかをテストしていることを意味します。
# return true if library is an external gem
$LOADED_FEATURES.grep(/library/).grep(/gems/).size > 0
読み込まれたライブラリ ファイルが見つかるとrequire
、そのファイルへのフル パスが$LOADED_FEATURES
配列に追加されます。したがって、その配列を調べて、見つかった場所を確認できますblah
$LOADED_FEATURES.find_all { |path| puts path if /blah/ =~ path }