These functions help with metaprogramming in
packages built on top of targets.
Usage
tar_deparse_language(expr)
tar_deparse_safe(expr, collapse = "\n", backtick = TRUE)
tar_tidy_eval(expr, envir, tidy_eval)
tar_tidyselect_eval(names_quosure, choices)Arguments
- expr
A language object to modify or deparse.
- collapse
Character of length 1, delimiter in deparsing.
- backtick
logical indicating whether symbolic names should be enclosed in backticks if they do not follow the standard syntax.
- envir
An environment to find objects for tidy evaluation.
- tidy_eval
Logical of length 1, whether to apply tidy evaluation.
- names_quosure
An
rlangquosure withtidyselectexpressions.- choices
A character vector of choices for character elements returned by tidy evaluation.
Details
tar_deparse_language()is a wrapper aroundtar_deparse_safe()which leaves character vectors andNULLobjects alone, which helps with subsequent user input validation.tar_deparse_safe()is a wrapper aroundbase::deparse()with a custom set of fast default settings and guardrails to ensure the output always has length 1.tar_tidy_eval()applies tidy evaluation to a language object and returns another language object.tar_tidyselect_eval()appliestidyselectselection with some special guardrails aroundNULLinputs.
See also
Other utilities to extend targets:
tar_assert,
tar_condition,
tar_test()
Examples
tar_deparse_language(quote(run_model()))
#> [1] "run_model()"