なかだです。 At Thu, 7 Oct 1999 02:36:41 +0900, 中村暁史 Nakamura Akifumi <BXQ04723 / nifty.ne.jp> wrote: > 他のどの値(nilも)と一致しない値、 > ってのを「自分で作る」にはどうすりゃいいでしょう? > > たとえば、「未定義を表す値」を。nilを使えばいいのかも > 知れませんが、nilが事情により(笑)使えない場合、 > nilの替わりをすることにする値ってのを。 > 勿論nilと同じ能力を持つ必要はないです。 > 印としてnilの代用品だと判るだけでいいです。 > > で、作り方。 > 出鱈目にクラスをでっちあげてそれ(Class値そのもの)を > 使うという手もありそうですが…ブキミ… > > class Undefined;end > def undefined; Undefined; end > > 一応これでundefが返す値は「他のどの値とも > (稼動中は)一致しない」わけですよね…でも… > > もう少しブキミでない手は有りますか? こういうものを作ったことがありますが、やっぱりブキミでしょうか (^^;)。というかこれしか思い付かなかったんですが。 class <<(WhiteOut = Object.new) INSPECTION = "WhitedOutItem".freeze def inspect; INSPECTION; end def clone; nil end alias === equal? end …ひょっとして同じようなことを考えてるんでしょうか。 # http://member.nifty.ne.jp/nokada/archive/shadowy.rb -- そうだ 強気に ちょっと インチキに☆彡 中田 "Bugるくらいがちょうどいいかも;-)" 伸悦