| assert_s3_class {admiraldev} | R Documentation |
Is an Argument an Object of a Specific S3 Class?
Description
Checks if an argument is an object inheriting from the S3 class specified.
Usage
assert_s3_class(
arg,
cls,
optional = FALSE,
arg_name = rlang::caller_arg(arg),
message = NULL,
class = "assert_s3_class",
call = parent.frame()
)
Arguments
arg |
A function argument to be checked |
cls |
The S3 class to check for |
optional |
Is the checked argument optional? If set to |
arg_name |
string indicating the label/symbol of the object being checked. |
message |
string passed to |
class |
Subclass of the condition. |
call |
The execution environment of a currently running
function, e.g. You only need to supply Can also be For more information about error calls, see Including function calls in error messages. |
Value
The function throws an error if arg is an object which does not inherit from class.
Otherwise, the input is returned invisibly.
See Also
Checks for valid input and returns warning or errors messages:
assert_atomic_vector(),
assert_character_scalar(),
assert_character_vector(),
assert_data_frame(),
assert_date_vector(),
assert_expr(),
assert_expr_list(),
assert_filter_cond(),
assert_function(),
assert_integer_scalar(),
assert_list_element(),
assert_list_of(),
assert_logical_scalar(),
assert_named(),
assert_numeric_vector(),
assert_one_to_one(),
assert_param_does_not_exist(),
assert_same_type(),
assert_symbol(),
assert_unit(),
assert_vars(),
assert_varval_list()
Examples
example_fun <- function(obj) {
assert_s3_class(obj, "factor")
}
example_fun(as.factor(letters))
try(example_fun(letters))
try(example_fun(1:10))