Caught Error Block: catch
Less than 1 minuteBuiltin CommandsError Handling
Caught Error Block: catch
Handles the exception code raised by
tryortrypipe
Description
catch is designed to be used in conjunction with try and trypipe as it handles the exceptions raised by the aforementioned.
Usage
[ try | trypipe ] { code-block } -> <stdout>
catch { code-block } -> <stdout>
!catch { code-block } -> <stdout>
Examples
try {
out "Hello, World!" -> grep: "non-existent string"
out "This command will be ignored"
}
catch {
out "An error was caught"
}
!catch {
out "No errors were raised"
}
Detail
catch can be used with a bang prefix to check for a lack of errors.
catch forwards on the stdin and exit number of the calling function.
Synonyms
catch!catch
See Also
- Disable Error Handling In Block:
unsafe: Execute a block of code, always returning a zero exit number - Function / Module Defaults:
runmode: Alter the scheduler's behaviour at higher scoping level - If Conditional:
if: Conditional statement to execute different blocks of code depending on the result of the condition - Pipe Fail:
trypipe: Checks for non-zero exits of each function in a pipeline - Schedulers: Overview of the different schedulers (or 'run modes') in Murex
- Stderr Checking In Pipes:
trypipeerr: Checks state of each function in a pipeline and exits block on error - Stderr Checking In TTY:
tryerr: Handles errors inside a block of code - Switch Conditional:
switch: Blocks of cascading conditionals - Try Block:
try: Handles non-zero exits inside a block of code
This document was generated from builtins/core/structs/try_doc.yaml.