R.oo (version 1.24.0)

abort: Aborts the current expression call

Description

Aborts the current expression call and returns to the top level prompt/browser without signaling a condition.

Usage

# S3 method for default
abort(..., call.=TRUE, domain=NULL)

Arguments

...

(optional) Objects coerced to character and pasted together without a separator, or a @condition object. If no object are given, no message is printed.

call.

If TRUE, the call is added to the message, otherwise not.

domain

Used to translate the message (see gettext()). If NA, messages will not be translated.

Value

Returns nothing.

Details

There are still cases where one can "catch" the abort and undo it, cf. [1].

References

[1] R-devel thread '', Sept 11, 2012, https://stat.ethz.ch/pipermail/r-devel/2012-September/064838.html.

See Also

throw(). stop(). Internally, invokeRestart()("abort") is utilized.

Examples

Run this code
# NOT RUN {
 foo <- function() {
  cat("foo()...\n")
  on.exit(cat("foo()...done\n"))
  tryCatch({
    stop("Woops!")
  }, error = function(ex) {
    cat("An error was caught: ", ex$message, "\n", sep="")
  })
  cat("Continuing...\n")
}

bar <- function() {
  cat("bar()...\n")
  on.exit(cat("bar()...done\n"))
  tryCatch({
    abort("Woops!")
  }, error = function(ex) {
    cat("An error was caught: ", ex$message, "\n", sep="")
  })
  cat("This message will never be displayed...\n")
}

# An error generated by stop() can be caught
foo()

# ...which is not possible when using abort()
bar()

# This expression is never reached
cat("This line will never be outputted.\n")

# }

Run the code above in your browser using DataLab