R.oo (version 1.2.7)

trycatch: Evaluates an expression with the possibility to catch exceptions (DEPRECATED)

Description

This function is deprecated. Use tryCatch() instead. Evaluates an expression with the possibility to catch exceptions. The class of the exception thrown by a standard 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.

Usage

trycatch(expr, ..., finally=NULL, envir=parent.frame())

Arguments

expr
The expression to be evaluated.
...
A catch list of named expressions. The expression with the same name as the class of the Exception thrown when evaluating expr
finally
An expression that is guaranteed to be called even if the expression generates an exception.
envir
The environment in which the caught expression is to be evaluated.

Value

  • Returns the value of the last expression evaluated.

Details

To make 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.

See Also

From R v1.8.0 the tryCatch() method is available; see conditions. For more information about exceptions see Exception. There is also throw(), stop(), try().

Examples

Run this code
For a complete example see help(Exception).

Run the code above in your browser using DataCamp Workspace