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

module function Kernel.#autoload?

autoload?(const_name) -> String | nil[permalink][rdoc]

const_name が Kernel.#autoload 設定されているか調べます。

autoload 設定されていて、autoload 定数がまだ定義されてない(ロードされていない) ときにそのパス名を返します。

autoload 設定されていないか、ロード済みなら nil を返します。

[PARAM] const_name:
定数をString または Symbol で指定します。
------- /tmp/foo.rb ---------
class Foo
  class Bar
  end
end
----- end of /tmp/foo.rb ----

class Foo
end
p Foo.autoload?(:Bar)         #=> nil
Foo.autoload :Bar, '/tmp/foo'
p Foo.autoload?(:Bar)         #=> "/tmp/foo"
p Foo::Bar                    #=> Foo::Bar
p Foo.autoload?(:Bar)         #=> nil

[SEE_ALSO] Kernel.#autoload