|
Throw
Throw[value]は,評価を中止し,この関数に対して適用された最も近くにあるCatchの値としてvalueを返す.
Throw[value, tag]は,Catch[expr, form]だけによりキャッチできる.formはtagにマッチしたパターンである.
ThrowおよびCatchを使うことでNest, Fold,FixedPoint,そしてScan等の関数から退避することが可能になる.
tagにはどのような式でも指定できる.
Throw[value, tag]におけるtagは,Catch[expr, form]のformと比較されるときに毎回再評価を受ける.
ThrowをキャッチするためのCatchが何も指定されていないとき,エラーになり,Throwは未評価のまま返される.
参照セクション:2.6.9.
次も参照:Return,Goto,Interrupt,Abort,Sow.
バージョン1の新関数.バージョン3で大幅改訂
他の例
|