R doesn’t come with a built-in constructor function for conditions, but we can easily add one.
(Advanced R, by Hadley Wickham)
Actually, there is simpleCondition()
, simpleError()
and the like, but they don't allow specifying an additional class. The functions in this package allow it:
library(condition)
cond <- new_error("Something went wrong", class = "oops")
cond
## <oops: Something went wrong>
is.error(cond)
## [1] TRUE
See the vignette for additional details.
condition
(condition-package)Condition
(Error, Message, SimpleCondition, SimpleError, SimpleMessage, SimpleWarning, Warning)is.condition
(is.error, is.message, is.warning)new_condition
(new_error, new_message, new_warning)