R/throw.R

Defines functions throw

Documented in throw

#' Throw a Condition
#'
#' Throws a condition of class c("error", "maSAE", "condition").
#'
#' We use this condition as an error dedicated to \pkg{ maSAE.}
#'
#' @param message_string The message to be thrown.
#' @param system_call The call to be thrown.
#' @param ... Arguments to be passed to
#' \code{\link[base:structure]{base::structure}}.
#' @return The function does never return anything, it stops with a
#' condition of class c("error", "maSAE", "condition").
#' @keywords internal
#' @examples
#' tryCatch(maSAE:::throw("Hello error!"), maSAE = function(e) {
#'   return(e)
#' })
throw <- function(message_string, system_call = sys.call(-1), ...) {
  condition <- structure(
    class = c("error", "maSAE", "condition"),
    list(message = message_string, call = system_call),
    ...
  )
  stop(condition)
}

Try the maSAE package in your browser

Any scripts or data that you put into this service are public.

maSAE documentation built on April 12, 2021, 5:06 p.m.