Ruby 2.5.0 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > mainオブジェクト

object main

クラス・モジュールの継承リスト: main

要約

トップレベルでの self を表すオブジェクトです。

main では参照できない事に注意してください。トップレベルで self から参照してください。

トップレベルで定義したメソッドは Object の private インスタンスメソッドとして定義されます。

例: トップレベルで定義したメソッドの確認

basic_private_methods = private_methods(false)
basic_public_methods = public_methods(false)
private def explicit_private_method
end

# トップレベルで定義したメソッドは main オブジェクトの private メソッドと して定義される
def implicit_private_method
end

public def explicit_public_method
end

# main オブジェクトで独自定義した private method のみを取得する
p private_methods(false) - basic_private_methods
# => [:explicit_private_method, :implicit_private_method]

# main オブジェクトで独自定義した public method のみを取得する
p public_methods(false) - basic_public_methods
# => [:explicit_public_method]

特異メソッド

定義 説明
define_method(name, method) -> Symbol
define_method(name) { ... } -> Symbol

インスタンスメソッド name を Object に定義します。

include(*modules) -> self

引数 modules で指定したモジュールを後ろから順番に Object にインクルードします。

to_s -> "main"
inspect -> "main"

"main" を返します。

private(*name) -> self

メソッドを private に設定します。

public(*name) -> self

メソッドを public に設定します。

using(module) -> self

引数で指定したモジュールで定義された拡張を有効にします。