Learn R Programming

pkgmaker (version 0.32.10)

exitCheck: Exit Error Checks

Description

exitCheck provides a mechanism to distinguish the exit status in on.exit expressions.

Usage

exitCheck()

Arguments

Value

Either x or the success status when called without arguments.

Details

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.

Examples

Run this code

# 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) )

Run the code above in your browser using DataLab