yarv-dev:171
From: Yukihiro Matsumoto <matz ruby-lang.org>
Date: Mon, 6 Sep 2004 00:25:49 +0900
Subject: [yarv-dev:171] Re: eval in rescue clause
まつもと ゆきひろです In message "Re: [yarv-dev:168] eval in rescue clause" on Wed, 01 Sep 2004 12:09:06 +0900, SASADA Koichi <ko1 atdot.net> writes: |1. A を評価 |2. C言語レベルで rb_obj_is_kind_of($!, A) が真なら bodyへ |3. 繰り返し(1へ戻る) | | にしてもいいでしょうか。ポイントは、 | |1. A でひっかかると B, C は評価されない |2. === が再定義されていても無視 | | 1 はたぶん実装の都合でこうなってると思うので問題ないんじゃ |ないかと思います。case/when の仕様とも違いますし。 これはかまいません。ていうか、なんで今はそうしてるんだろうか。 | 2 は、どうでしょうね。そもそも、A,B,C はそれぞれ Module |じゃないといけない、という制限が付いています。それを考えると、 |いちいち === を呼ぶメリットはあまりないんじゃないかと思います。 SystemCallErrorが同じerrnoを持つものを同一視するために === を使ってます。だから、再定義できないとちょっと困ります。 -- ML: yarv-dev quickml.atdot.net 使い方: http://www.atdot.net/~ko1/quickml
168 2004-09-01 12:09 [ko1 atdot.net ] eval in rescue clause -> 171 2004-09-06 00:25 ┗[matz ruby-lang.org ] 172 2004-09-08 17:23 ┗[ko1 atdot.net ] 175 2004-09-08 18:00 ┗[matz ruby-lang.org ] 177 2004-09-08 18:03 ┗[ko1 atdot.net ]