Checks if all arguments are of the same type.
assert_same_type(
...,
.message = c("Arguments {.arg {arg_names}} must be the same type.", i =
paste("Argument types are", paste0("{.arg ", arg_names, "} {.cls ", types, "}",
collapse = ", "))),
.class = "assert_same_type",
.call = parent.frame()
)Arguments to be checked
none
character vector passed to cli_abort(message) when assertion fails.
c("Arguments {.arg {arg_names}} must be the same type.", i = paste(
"Argument types are", paste0("{.arg ", arg_names, "} {.cls ", types, "}",
collapse = ", ")))
character vector passed to cli_abort(class) when assertion fails.
"assert_same_type"
environment passed to cli_abort(call) when assertion fails.
The function throws an error if not all arguments are of the same type.
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_s3_class(),
assert_symbol(),
assert_unit(),
assert_vars(),
assert_varval_list()
example_fun <- function(true_value, false_value, missing_value) {
assert_same_type(true_value, false_value, missing_value)
}
example_fun(
true_value = "Y",
false_value = "N",
missing_value = NA_character_
)
try(example_fun(
true_value = 1,
false_value = 0,
missing_value = "missing"
))
#> Error in example_fun(true_value = 1, false_value = 0, missing_value = "missing") :
#> Arguments `true_value`, `false_value`, and `missing_value` must be the
#> same type.
#> ℹ Argument types are `true_value` <double>, `false_value` <double>,
#> `missing_value` <character>