assert_vars {admiraldev} | R Documentation |
Is an Argument a List of Variables?
Description
Checks if an argument is a valid list of symbols (e.g., created by exprs()
)
Usage
assert_vars(
arg,
expect_names = FALSE,
optional = FALSE,
arg_name = rlang::caller_arg(arg),
message = NULL,
class = "assert_vars",
call = parent.frame()
)
Arguments
arg |
A function argument to be checked |
expect_names |
If the argument is set to |
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 not a list of symbols (e.g., created
by exprs()
and returns the input invisibly otherwise.
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_same_type()
,
assert_symbol()
,
assert_unit()
,
assert_varval_list()
Examples
library(dplyr, warn.conflicts = FALSE)
library(rlang)
example_fun <- function(by_vars) {
assert_vars(by_vars)
}
example_fun(exprs(USUBJID, PARAMCD))
try(example_fun(quos(USUBJID, PARAMCD)))
try(example_fun(c("USUBJID", "PARAMCD", "VISIT")))
try(example_fun(exprs(USUBJID, toupper(PARAMCD), desc(AVAL))))
example_fun_name <- function(by_vars) {
assert_vars(by_vars, expect_names = TRUE)
}
example_fun_name(exprs(APERSDT = APxxSDT, APEREDT = APxxEDT))
try(example_fun_name(exprs(APERSDT = APxxSDT, APxxEDT)))