Exit Error Checks
exitCheck provides a mechanism to distinguish the exit status
in on.exit expressions.
exitCheck()
It generates a function that is used wihtin a function's body to
"flag" normal exits and in its on.exit expression
to check the exit status of a function.
Note that it will correctly detect errors only if all normal exit
are wrapped into a call to it.
# define some function
f <- function(err){
# initialise an error checker
success <- exitCheck()
# do something on exit that depends on the error status
on.exit({
if(success()) cat("Exit with no error: do nothing\n")
else cat("Exit with error: cleaning up the mess ...\n")
})
# throw an error here
if( err ) stop('There is an error')
success(1+1)
}
# without error
f(FALSE)
# with error
try( f(TRUE) )Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.