[ruby-list:412] Re: reexecute from rescue [ Re: about exception ]

From: matz@... (Yukihiro Matsumoto)
Date: 1996-08-13 10:12:17 UTC
List: ruby-list #412
まつもと ゆきひろです.

In message "[ruby-list:410] Re: reexecute from rescue [ Re: about exception ]"
    on 96/08/13, 石塚圭樹 <keiju@shljapan.co.jp> writes:
|
|けいじゅ@SHLジャパンです. 

|なるほど, 例外が起こった時の処理を イテレータブロック(?)として渡すわけ
|ですね. この方法なら対処できそうです. 
|
|Smalltalk の
|
|coll remove: elm ifAbsent: [...]
|
|と同じ考えですね. ruby でも こういう感じのメソッドがあるかと思って調べ
|ましたがありませんでした. やはり, 例外があるからかな?

そうでしょうね.今までのところあまりこういう使い方が必要なこ
とはありませんでした.私は無い時には「無いよ」といわれる方が
好きです.

|そうすると, break で rescue 節を抜ける(begin..endを終る)ことはできない
|のですね?  

できません.rescue節はif文のelse節と同じで特別に脱出できる構
文ではないのです.

|trap(closureも含めて)中で, breakは意味が分かりましたが, nextはどういう
|動作を行なうのでしょうか?

そのclosureの最初から実行をやり直します.

                                まつもと ゆきひろ /:|)

In This Thread

Prev Next