Checks if the argument is a list of expressions where the expressions are
variable-value pairs. The value can be a symbol, a string, a numeric, an
expression, or NA.
Usage
assert_varval_list(
  arg,
  required_elements = NULL,
  accept_expr = TRUE,
  accept_var = FALSE,
  optional = FALSE,
  arg_name = rlang::caller_arg(arg),
  message = NULL,
  class = "assert_varval_list",
  call = parent.frame()
)Arguments
- arg
- A function argument to be checked - Default value
- none 
 
- required_elements
- A - charactervector of names that must be present in- arg- Default value
- NULL
 
- accept_expr
- Should expressions on the right hand side be accepted? - Default value
- TRUE
 
- accept_var
- Should unnamed variable names (e.g. - exprs(USUBJID)) on the right hand side be accepted?- Default value
- FALSE
 
- optional
- Is the checked argument optional? If set to - FALSEand- argis- NULLthen an error is thrown.- Default value
- FALSE
 
- arg_name
- string indicating the label/symbol of the object being checked. - Default value
- rlang::caller_arg(arg)
 
- message
- string passed to - cli::cli_abort(message). When- NULL, default messaging is used (see examples for default messages).- "{arg_name}"can be used in messaging.- Default value
- NULL
 
- class
- Subclass of the condition. 
- call
- The execution environment of a currently running function, e.g. - call = caller_env(). The corresponding function call is retrieved and mentioned in error messages as the source of the error.- You only need to supply - callwhen throwing a condition from a helper function which wouldn't be relevant to mention in the message.- Can also be - NULLor a defused function call to respectively not display any call or hard-code a code to display.- 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 variable-value expressions.
Otherwise, the input it returned invisibly.
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_vars()
Examples
library(dplyr, warn.conflicts = FALSE)
library(rlang)
example_fun <- function(vars) {
  assert_varval_list(vars)
}
example_fun(exprs(DTHDOM = "AE", DTHSEQ = AESEQ))
try(example_fun(exprs("AE", DTSEQ = AESEQ)))
#> Error in example_fun(exprs("AE", DTSEQ = AESEQ)) : 
#>   Argument `vars` must be a named list of expressions where each element
#> is a symbol, character scalar, numeric scalar, an expression, or NA, but is a
#> list.
#> ℹ To create a list of expressions use `exprs()`.
