Ruby 2.3.0 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Methodクラス > []

instance method Method#[]

self[*args] -> object[permalink][rdoc]
call(*args) -> object
call(*args) { ... } -> object

メソッドオブジェクトに封入されているメソッドを起動します。

引数やブロックはそのままメソッドに渡されます。

self[] の形の呼び出しは通常のメソッド呼び出しに見た目を 近付けるためだけに用意されたもので、Array#[]のような 他の [] メソッドとの意味的な関連性はありません。

メソッドオブジェクトが汚染されている場合、そのメソッドは、セーフレベル 4 で実行されます

[PARAM] args:
self に渡される引数。

[SEE_ALSO] セキュリティモデル

例:

class Foo
  def foo(arg)
    "foo called with arg #{arg}"
  end
end

m = Foo.new.method(:foo) # => #<Method: Foo#foo>
m[1]      # => "foo called with arg 1"
m.call(2) # => "foo called with arg 2"