Load default parameter values
func_load.RdFor a function or list of functions
Usage
func_load(fun, envir = globalenv(), eval = TRUE)Arguments
- fun
(function) Function object, not character name of function. required
- envir
Environment to load default parameters in to. Default: `globalenv()`. required
- eval
(logical) evaluate `call`s?. default: `TRUE`. If `TRUE`, any parameter values that have class `call` will be run through `rlang::eval_tidy()`. For example: lists, anonymous functions, function calls themselves. required
Examples
# one function
foo <- function(w=5, y=4) w+y
func_load(foo)
w; y
#> [1] 5
#> [1] 4
# many functions
foo <- function(w=5, y=4) w+y
bar <- function(a="a", b="b") c(a,b)
func_load(c(foo, bar))
w; y; a; b
#> [1] 5
#> [1] 4
#> [1] "a"
#> [1] "b"
# function with a function as a default parameter
mars <- function() 5
venus <- function(z = mars(), m = list(goo = "bar"), v = function(e) e) {
list(z, z, v)
}
mars()
#> [1] 5
venus()
#> [[1]]
#> [1] 5
#>
#> [[2]]
#> [1] 5
#>
#> [[3]]
#> function (e)
#> e
#> <environment: 0x560fe6d95b78>
#>
# z
# m
# v
if (FALSE) { # \dontrun{
func_load(venus)
class(z); z
class(m); m
class(v); v
## eval=FALSE
func_load(venus, eval=FALSE)
class(z); z
class(m); m
class(v); v
} # }