From: gotoken@... (GOTO Kentaro) Date: 2001-03-05T22:09:55+09:00 Subject: [ruby-list:28527] Re: case ... end In message "[ruby-list:28523] case ... end" on 01/03/05, "Tomotaka Ito" writes: >case var > when String > when Integer > when File,IO > ... >end > >確かcase対象とwhen節の比較は===メソッドで行われると思ったので、 >RubyデスクトップリファレンスでKernelモジュールの===メソッドの項(P42ですね)を >見てみましたところ、 Kernel#=== ではなく when の右に書かれたものの === が呼ばれます。 この場合は Class#=== です。 >「等しいまたは所属する」と書いてあったもんで、この挙動にちょっと違和感を憶え >たのですが、 インスタンスはクラスに所属するという感覚でしょうね。 Klass === x は x.is_a? Klass と同じです。 >達人であるみなさんの意見をお聞きしたいと思い投稿してみました。 こういうのは返事が書きにくくなるのでやめましょう ^^;;;; -- Gotoken