Checks if an argument is a character vector
Arguments
- arg
A function argument to be checked
- values
A
character
vector of valid values forarg
- named
If set to
TRUE
, an error is issued if not all elements of the vector are named.- optional
Is the checked argument optional? If set to
FALSE
andarg
isNULL
then an error is thrown
Value
The function throws an error if arg
is not a character vector or if
any element is not included in the list of valid values. 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_data_frame()
,
assert_date_vector()
,
assert_expr_list()
,
assert_expr()
,
assert_filter_cond()
,
assert_function_param()
,
assert_function()
,
assert_has_variables()
,
assert_integer_scalar()
,
assert_list_element()
,
assert_list_of()
,
assert_logical_scalar()
,
assert_named_exprs()
,
assert_named()
,
assert_numeric_vector()
,
assert_one_to_one()
,
assert_param_does_not_exist()
,
assert_s3_class()
,
assert_same_type()
,
assert_symbol()
,
assert_unit()
,
assert_vars()
,
assert_varval_list()
Examples
example_fun <- function(chr) {
assert_character_vector(chr)
}
example_fun(letters)
try(example_fun(1:10))
#> Error in assert_character_vector(chr) :
#> `chr` must be a character vector but is an integer vector
example_fun2 <- function(chr) {
assert_character_vector(chr, named = TRUE)
}
try(example_fun2(c(alpha = "a", "b", gamma = "c")))
#> Error in assert_named(arg) : All elements of `arg` must be named.
#> The following elements are not named: 2