willnetの日記

 | 

2009-09-13

UnboundMethodオブジェクト

18:46 | UnboundMethodオブジェクト - willnetの日記 を含むブックマーク はてなブックマーク - UnboundMethodオブジェクト - willnetの日記

束縛情報のないMethodオブジェクト。メソッドを利用するためには、オブジェクトに束縛してMethodオブジェクトにしてからcallする必要がある。

unbound_plus = Fixnum.instance_method("+")

上記のようにして取得。

plus_2 = unbound_plus.bind(2)

上記のようにして束縛。

plus_2.call(2) #=> 4

上記のようにしてメソッドを起動する。

plus_3 = plus_2.unbind.bind(3)

Methodクラスのunbindメソッドを使ってもUnboudMethodオブジェクトを取得できる。

 |