Ruby 2.3.0 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > 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
[permalink][rdoc]define_method(name) { ... } -> Symbol
インスタンスメソッド name を Object に定義します。
ブロックを与えた場合、定義したメソッドの実行時にブロックが Object インスタンスの上で BasicObject#instance_eval されます。
[SEE_ALSO] Module#define_method
include(*modules) -> self
[permalink][rdoc]引数 modules で指定したモジュールを後ろから順番にインクルードします。
include Math
hypot(3, 4) # => 5.0
[SEE_ALSO] Module#include
to_s -> "main"
[permalink][rdoc]inspect -> "main"
"main" を返します。
private(*name) -> Object
[permalink][rdoc]メソッドを private に設定します。
引数が与えられた時には引数によって指定されたメソッドを private に 設定します。
引数なしのときは今後このクラスまたはモジュール定義内で新規に定義さ れるメソッドを関数形式でだけ呼び出せるように(private)設定します。
[SEE_ALSO] Module#private
public(*name) -> Object
[permalink][rdoc]メソッドを public に設定します。
引数なしのときは今後このクラスまたはモジュール定義内で新規に定義さ れるメソッドをどんな形式でも呼び出せるように(public)設定します。
引数が与えられた時には引数によって指定されたメソッドを public に設 定します。
[SEE_ALSO] Module#public
using(module) -> self
[permalink][rdoc]引数で指定したモジュールで定義された拡張を有効にします。
有効にした拡張の有効範囲については以下を参照してください。
module Sloth
refine String do
def downcase
self
end
end
end
"ABC".downcase # => "abc"
using Sloth
"ABC".downcase # => "ABC"
[SEE_ALSO] Module#refine, Module#using