From: Minero Aoki Date: 2002-04-05T18:24:15+09:00 Subject: [ruby-dev:16758] Re: === あおきです。 In mail "[ruby-dev:16757] ===" "Akinori MUSHA" wrote: >  Array, Hash, Proc などで、 === が以下のように定義されていると > 一般的に便利なように思いますが、いかがでしょう。 > - case-when で、 Array や Hash を場合分けしたり、 grep で探す > ことは少なそう。もし無視できない数存在しそうであれば、 かつて when *list という表現がなかったころ、when に配列を 置いたときに include? になってしまうのが嫌、という声があり 消滅したのだと記憶しています。 (その代わりに when *list ができたのでした) また Proc に関して > class Proc > def ===(o) > call(o) これは使われたときに意味が明確でないですし、全ての Proc が 真偽判定に使われるのではないので全ての Proc に定義するのは よくないと思います。こういうことがしたい場合には特異メソッドを 使うということでどうでしょ。 cond = lambda { .... } cond.instance_eval { alias === call } ------------------------------------------------------------------- 青木峰郎