Throw

Throw[value]
stops evaluation and returns value as the value of the nearest enclosing Catch.

Throw[value,tag]
is caught only by Catch[expr,form] where tag matches form.

DetailsDetails

  • You can use Throw and Catch to exit functions such as Nest, Fold, FixedPoint, and Scan.
  • tag can be any expression.
  • tag in Throw[value,tag] is reevaluated every time it is compared to form in Catch[expr,form].
  • An error is generated and an unevaluated Throw is returned if there is no appropriate enclosing Catch to catch the Throw.
Introduced in 1988
(1.0)
| Updated in 1996
(3.0)