Ruby 4.1 リファレンスマニュアル

module function Kernel?.autoload_relative

autoload_relative(const_name, feature) -> nilRuby 4.1 から[permalink][rdoc][edit]

定数 const_name を最初に参照した時に、feature を呼び出し元のファイルからの相対パスとして Kernel?.require するように設定します。

Kernel?.autoload と似ていますが、feature の解決方法が Kernel?.require_relative と同様に autoload_relative を呼び出したファイルのディレクトリからの相対パスになる点が異なります。

const_name には、"::" 演算子を含めることはできません。ネストした定数を指定する方法は Module#autoload_relative を参照してください。

const_name が autoload 設定されていて、まだ定義されてない(ロードされていない) ときは、autoload する対象を置き換えます。const_name が(autoload ではなく) 既に定義されているときは何もしません。

相対パスは絶対パスに変換されます。この絶対パスが Kernel?.autoload? の返り値になります。

[PARAM] const_name:
定数を String または Symbol で指定します。
[PARAM] feature:
呼び出し元のファイルからの相対パスで、autoload する対象を指定します。
[EXCEPTION] LoadError:
ファイルのコンテキストなしに呼び出された場合(eval の中など)に発生します。
autoload_relative :MyModule, "my_module.rb"

[SEE_ALSO] Kernel?.autoload

[SEE_ALSO] Kernel?.require_relative

[SEE_ALSO] Module#autoload_relative