From: keiju@... (=?ISO-2022-JP?B?GyRCQFBETTc9PHkbKEI=?=) Date: 2002-07-05T16:54:37+09:00 Subject: [ruby-dev:17675] Re: substitution at when-clause けいじゅ@日本ラショナルソフトウェアです. In [ruby-dev:17669] the message: "[ruby-dev:17669] Re: substitution at when-clause", on Jul/05 08:17(JST) TAKAHASHI Masayoshi writes: >高橋征義です。 >> あとなんか事例はないかなぁ... 事例募集中!! >えーと、その前に構文の意味がよく判らないのですが、 うーん... わかりづらいかなぁ... >これってつまり、 > >for x case x.foo(y,z) >when a > hoge >when b > funi >end > >が、 > >f = Proc.new{|x| x.foo(y,z)} >if f.call(a) > hoge >elsif f.call(b) > funi >end > >にほぼ相当する、ということでいいんでしょうか? です. ># 違ったりして(汗 ># 少なくとも、「f = Proc.new{|a| b.foo(c,a)}」、つまり ># レシーバにもメソッドの引数にもなりうるんですよね? です. いいこと言いますね. その通りで, 評価式中でwhenに渡すパラメータが レシーバにも引数にもなれるところが, ミソです. # 一般には f = proc{|x| expr_with_x} ですけど. __ ..............................石塚 圭樹@日本ラショナルソフトウェア... ----------------------------------->> e-mail: keiju@rational.com <<---