exitCheck: Exit Error Checks

Description Usage Details Examples

View source: R/utils.R

Description

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

Usage

1

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

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
# 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) )

pkgmaker documentation built on May 2, 2019, 4:42 p.m.