stop()
call is
try-error
. Since it contains a dash, the name must be specfied
within quotation marks. Alternatively, the name ANY
can be use
to catch any exception. See examples below.
Note that the order which the catch-expressions are specify is important.
For instance, an ANY
catch at the beginning will catch all exception
even if one specify other classes afterwards.trycatch(expr, ..., finally=NULL, envir=parent.frame())
expression
to be evaluated.expression
s. The expression with the
same name as the class of the Exception
thrown when evaluating
expr
expression
that is guaranteed to be called even if
the expression generates an exception.environment
in which the caught expression is to be
evaluated.expression
evaluated.trycatch()
for other exception classes than
try-error
, the functions try()
and stop()
had to undergo minor(!) modification. However, they are fully
compatible with the try
() and
stop
() in the base
package.
To make exceptions to be thrown in the catch expression, e.g. in
finally
or ANY
, such exceptions should extend
(inherit from) the class try-error
, which is for instance the
case with all stop() and throw() generated exceptions.
Currently, from R v1.8.0 there is a new implementation of trycatch(),
which is a "wrapper" around the new tryCatch() function.
If running R v1.7.1 or before the old trycatch() is used for
backward compatibility.tryCatch()
method is available;
see conditions
.
For more information about exceptions see Exception
.
There is also throw
(), stop
(), try
().For a complete example see help(Exception).
Run the code above in your browser using DataLab