エラーの発生を通知します。このシグナルはTry-Catchステートメントでキャッチできる。
Throw Value
スローする値。通常はErrorオブジェクト。事例:
throw ValueError("Parameter #1 invalid", -1, theBadParam)
あらゆる種類の値を投げることができるが、クラスを指定せずにCatchを使用した場合(またはCatchや Finallyを指定せずにTryを使用した場合)、Errorクラスのインスタンスのみをキャッチする。
Catchの中で実行されている間は、Valueを省略することで、キャッチした値を再スローすることができる(そのためだけに出力変数を指定する必要はない)。これはネストされたTry-Finally内でもサポートされるが、ネストされたTry-Catch内ではサポートされない。throw
の行は、Catch文の本体に物理的に含まれる必要はない。
throw
(Error())
のように式が括弧で囲まれている場合、throw
の後のスペースまたはタブはオプションである。
スローされた値や実行時エラーは、Try-Catchでキャッチできる。このような場合、実行はcatch文に移されるか、tryの次の文に移される。スローされた値がキャッチされなかった場合、以下のことが起こる:
Error Object, Try, Catch, Finally, OnError
Tryをご覧ください。