Open mgirlich opened 11 months ago
I would quite like this too. I have a pretty janky function that I often use check_dots_named()
for this very purpose:
function(dots, call = rlang::caller_env()) {
if (!rlang::is_named2(dots)) {
cli::cli_abort(
"All arguments provided to {.arg ...} must be named",
call = call
)
}
invisible(dots)
}
I frequently see checks that something is named, especially when using
...
, e.g. inhttr2::req_template()
:It might make sense to also check that the names are unique. So, this would basically become a version of
vctrs::vec_names2(..., repair = "check_unique")
.I also added an issue in https://github.com/r-lib/vctrs/issues/1895 as I think it makes sense in both places. Also see #1236 for a feature request for checking that dynamic dots are named.
It might also be worth to add
check_unnamed()
(though this is needed way less often).Some places I found this check
* `httr2::req_template()` * `httr2::modify_list()` * `tidyr::pack()` * `tidyr::separate_wider_regex()` * `tidyr::check_unique_names()` * `tidyr::separate_wider_delim()` (unnamed)