前田です。
proc/lambda/Proc.newってイテレータ呼び出しじゃない
時は、procを呼んでいるメソッドをイテレータ呼び出し
した時にそのイテレータをオブジェクト化してくれるん
ですね。
class Test
def foo
@proc = proc
end
def call
@proc.call
end
end
test = Test.new
test.foo {
print "abc\n"
}
test.call
Cでadd_hookを書いた時にrubyでも同じことができるのでは、
と思って、試したらできたので小躍りしてしまいました:-)
とても便利なのですが、これは保証された動作でしょうか?
# マニュアルにないのでちょっと不安だったりします。
--
前田 修吾 <shugo / po.aianet.ne.jp>