| assert_all_are_valid_variable_names {assertive.code} | R Documentation |
Checks strings to see if they are valid variable names.
assert_all_are_valid_variable_names(x, allow_reserved = TRUE,
allow_duplicates, na_ignore = FALSE,
severity = getOption("assertive.severity", "stop"))
assert_any_are_valid_variable_names(x, allow_reserved = TRUE,
allow_duplicates, na_ignore = FALSE,
severity = getOption("assertive.severity", "stop"))
is_valid_variable_name(x, allow_reserved = TRUE, allow_duplicates)
x |
Input to check. |
allow_reserved |
If |
allow_duplicates |
Deprecated and ignored. |
na_ignore |
A logical value. If |
severity |
How severe should the consequences of the assertion be?
Either |
The assert_* functions return nothing but throw an error if the
corresponding is_* function returns FALSE.
http://4dpiecharts.com/2011/07/04/testing-for-valid-variable-names/
make_random_string <- function(n)
{
paste0(sample(letters, n, replace = TRUE), collapse = "")
}
long <- c(make_random_string(10000), make_random_string(10001))
x <- c("x", "y_y0.Y", ".", "x y", "...", "..1", long)
unname(is_valid_variable_name(x))
unname(is_valid_variable_name(x, allow_reserved = FALSE))
#These examples should fail.
assertive.base::dont_stop(
assert_all_are_valid_variable_names(c("...", "..1"), allow_reserved = FALSE)
)