From: nobu.nakada@... Date: 2000-03-12T12:20:23+09:00 Subject: [ruby-dev:9428] Re: Symbol#=== なかだです。 At Sat, 11 Mar 2000 22:11:52 +0900, matz@netlab.co.jp (Yukihiro Matsumoto) wrote: > | when で Symbol が使えるように Symbol#=== があると嬉しいです。 > > えー、Symbol#===でrespond_toの働きをさせるんですか? > Symbolってのはメソッド名だけに使われるわけじゃないんであんま > り賛成しません。 たしかに。それに後で考えたら case x when :foo こんなんじゃ x が Symbol で :foo と等しいかが知りたいのか、x がメ ソッド foo を持っているオブジェクトかが知りたいのか、全然明らかじゃ ないですね。ダメっす。 そういやこういうものも作ってあったのでした。作っただけでほとん ど使ってないというか、すっかり忘れてたというか。 # 思い憑きだけで作るから… class Responsibility def initialize(mid) @mid = mid end def ===(obj) obj.respond_to?(@mid) end alias =~ === end def Responsibility(mid) Responsibility.new(mid) end Symbol にくっつけたらこんなかな。 (:-).type.module_eval { def responsible() Responsibility.new(self) end } -- そうだ 強気に ちょっと インチキに☆彡 中田 "Bugるくらいがちょうどいいかも;-)" 伸悦