Ruby 2.3.0 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Methodクラス > []
self[*args] -> object
[permalink][rdoc]call(*args) -> object
call(*args) { ... } -> object
メソッドオブジェクトに封入されているメソッドを起動します。
引数やブロックはそのままメソッドに渡されます。
self[] の形の呼び出しは通常のメソッド呼び出しに見た目を 近付けるためだけに用意されたもので、Array#[]のような 他の [] メソッドとの意味的な関連性はありません。
メソッドオブジェクトが汚染されている場合、そのメソッドは、セーフレベル 4 で実行されます
[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"