Manual Pages for UNIX Darwin command on man catch
MyWebUniversity

Manual Pages for UNIX Darwin command on man catch

catch(n) Tcl Built-In Commands catch(n)

NAME

catch - Evaluate script and trap exceptional returns

SYNOPSIS

ccaattcchh script ?varName?

DESCRIPTION

The ccaattcchh command may be used to prevent errors from aborting command interpretation. CCaattcchh calls the Tcl interpreter recursively to execute script, and always returns without raising an error, regardless of any errors that might occur while executing script.

If script raises an error, ccaattcchh will return a non-zero integer value

corresponding to one of the exceptional return codes (see tcl.h for the definitions of code values). If the varName argument is given, then the variable it names is set to the error message from interpreting script. If script does not raise an error, ccaattcchh will return 0 (TCLOK) and set the variable to the value returned from script.

Note that ccaattcchh catches all exceptions, including those generated by

bbrreeaakk and ccoonnttiinnuuee as well as errors. The only errors that are not caught are syntax errors found when the script is compiled. This is

because the catch command only catches errors during runtime. When the

catch statement is compiled, the script is compiled as well and any

syntax errors will generate a Tcl error. EEXXAAMMPPLLEESS The ccaattcchh command may be used in an iiff to branch based on the success of a script.

if { [catch {open $someFile w} fid] } {

puts stderr "Could not open $someFile for writing\n$fid"

exit 1 }

The ccaattcchh command will not catch compiled syntax errors. The first

time proc ffoooo is called, the body will be compiled and a Tcl error will be generated. proc foo {} {

catch {expr {1 +- }}

}

SEE ALSO

error(n), break(n), continue(n) KKEEYYWWOORRDDSS

catch, error

Tcl 8.0 catch(n)




Contact us      |      About us      |      Term of use      |       Copyright © 2000-2019 MyWebUniversity.com ™