lazyeval (version 0.2.0)

f_capture: Make a promise explicit by converting into a formula.

Description

This should be used sparingly if you want to implement true non-standard evaluation with 100% magic. I recommend avoiding this unless you have strong reasons otherwise since requiring arguments to be formulas only adds one extra character to the inputs, and otherwise makes life much much simpler.

Usage

f_capture(x)

dots_capture(..., .ignore_empty = TRUE)

Arguments

x, ...

An unevaluated promises

.ignore_empty

If TRUE, empty arguments will be silently dropped.

Value

f_capture returns a formula; dots_capture returns a list of formulas.

Examples

Run this code
# NOT RUN {
f_capture(a + b)
dots_capture(a + b, c + d, e + f)

# These functions will follow a chain of promises back to the
# original definition
f <- function(x) g(x)
g <- function(y) h(y)
h <- function(z) f_capture(z)
f(a + b + c)
# }

Run the code above in your browser using DataCamp Workspace