instance method Method#===

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

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

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

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

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

[SEE_ALSO] UnboundMethod#bind_call

[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"