Ruby 3.0.0 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Kernelモジュール > autoload

module function Kernel.#autoload

autoload(const_name, feature) -> nil[permalink][rdoc]

定数 const_name を最初に参照した時に feature を Kernel.#require するように設定します。

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

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

[PARAM] const_name:
定数をString または Symbol で指定します。
[PARAM] feature:
require と同様な方法で autoload する対象を指定します。
[EXCEPTION] LoadError:
featureのロードに失敗すると発生します。

# ------- /tmp/foo.rb ---------
class Bar
end
# ----- end of /tmp/foo.rb ----

autoload :Bar, '/tmp/foo'
p Bar #=> Bar

[SEE_ALSO] Kernel.#autoload?,Module#autoload,Kernel.#require