Panic.recover
Panic.recoverexpected_typesaction
Documentation
Executes the provided action and converts a possible panic matching any of
the provided types into a dataflow Error.
If action executes successfully, the result of Panic.recover is the
result of that action. Otherwise, if it panicked with a type matching one
of the expected error types, that panic is returned as a dataflow error.
Unexpected panics are passed through as-is. it is the panic that was
thrown after conversion to a dataflow error.
Arguments
expected_types: The types of expected panics which should be recovered. This can either be a Vector of types or a single type.action: The code to execute that potentially panics.
Examples
Converting an expected panic to a dataflow error.
Panic.recover Illegal_Argument (Panic.throw (Illegal_Argument.Error "Oh!" Nothing))
Converting one of many expected panic types to a dataflow error.
Panic.recover [Illegal_Argument, Illegal_State] (Panic.throw (Illegal_Argument.Error "Oh!" Nothing))