R/functional_coerce_expr_to_function.R
expr_to_fun.Rd
Convert expression into function object.
expr_to_fun(expr_, order = NULL, vec_arg = FALSE)
ee <- expression(b1 + (b0 - b1)*exp(-k*x) + b2*x)
ff1 <- expr_to_fun(ee)
formals(ff1)
#> $b0
#>
#>
#> $b1
#>
#>
#> $b2
#>
#>
#> $k
#>
#>
#> $x
#>
#>
ff2 <- expr_to_fun(ee, vec_arg=TRUE)
formals(ff2)
#> $parm
#>
#>
#> $length_parm
#> [1] 5
#>
#> $names_parm
#> c("b0", "b1", "b2", "k", "x")
#>
formals(ff2)$length_parm
#> [1] 5
formals(ff2)$names_parm |> eval()
#> [1] "b0" "b1" "b2" "k" "x"
ee <- expression(matrix(c(x1+x2, x1-x2, x1^2+x2^2, x1^3+x2^3), nrow=2))
ff1 <- expr_to_fun(ee)
ff2 <- expr_to_fun(ee, vec_arg=TRUE)
formals(ff2)
#> $parm
#>
#>
#> $length_parm
#> [1] 2
#>
#> $names_parm
#> c("x1", "x2")
#>
formals(ff2)$length_parm
#> [1] 2
formals(ff2)$names_parm |> eval()
#> [1] "x1" "x2"