というか、まあ比較しながらじゃないと私が分からないだけなんだけど。
catchとthrow
Rubyにおいてcatch・throwはループ処理のメソッドで、例外処理とは全く関係ない。例外処理はraise・rescueメソッドを使う。
- catch
- ループを抜け出す為のラベルとして使う。
- throw
- 設定されたcatchに抜ける為のメソッド。
throwはイメージとしてgotoみたいな感じ?
catch :ラベル名 do 処理 処理 for ほげほげ do 処理 throw :ラベル名 処理条件 end 処理 処理 end # ← throw :ラベル名 に引っかかったらここに抜ける
こういうこと?