【Ruby3.x】Gem::Specification::raw_require_paths()メソッドの使い方
raw_require_pathsメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
raw_require_pathsメソッドは、RubyのGemの仕様を定義するGem::Specificationクラスに属し、そのGemがRubyプログラムからライブラリファイルをrequireする際に検索するパスのリストを取得するために実行されるメソッドです。RubyのGemは、自身のコードがどのディレクトリに配置されているかをrequire_pathsという情報で指定します。例えば、ほとんどのGemではライブラリコードがlibディレクトリに格納されており、この情報が["lib"]として設定されます。このメソッドは、Gem::Specificationオブジェクトが内部で保持している、加工されていない「生の(raw)」require pathの配列をそのまま返します。
Gemがインストールされると、このrequire_pathsで指定されたディレクトリがRubyのロードパス($LOAD_PATH)に追加されます。これにより、開発者はrequire 'my_gem/my_file'のように記述するだけで、Gem内のファイルにアクセスできるようになります。raw_require_pathsメソッドが返すパスのリストは、このロードパスに追加される元の情報そのものです。Gemの内部構造を理解したり、ロードパスの挙動をデバッグしたりする際に、この生の設定値を確認するために利用されます。
構文(syntax)
1spec = Gem::Specification.new do |s| 2 s.name = "example_gem" 3 s.version = "1.0.0" 4 s.summary = "A simple example gem" 5 s.require_paths = ["lib", "vendor/my_library"] 6end 7 8spec.raw_require_paths
引数(parameters)
引数なし
引数はありません
戻り値(return)
Array<String>
このメソッドは、Gemの仕様において、Rubyのrequireメソッドがライブラリを検索する際に参照するディレクトリのパスを文字列の配列として返します。