assert_same_type: Are All Arguments of the Same Type?

View source: R/assertions.R

assert_same_typeR Documentation

Are All Arguments of the Same Type?

Description

Checks if all arguments are of the same type.

Usage

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

...

Arguments to be checked

Default value

none

.message

character vector passed to cli_abort(message) when assertion fails.

Default value

c("Arguments {.arg {arg_names}} must be the same type.", i = paste( "Argument types are", paste0("{.arg ", arg_names, "} {.cls ", types, "}", collapse = ", ")))

.class

character vector passed to cli_abort(class) when assertion fails.

Default value

"assert_same_type"

.call

environment passed to cli_abort(call) when assertion fails.

Default value

parent.frame()

Value

The function throws an error if not all arguments are of the same type.

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_s3_class(), assert_symbol(), assert_unit(), assert_vars(), assert_varval_list()

Examples

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"
))

admiraldev documentation built on June 26, 2025, 1:09 a.m.