force {base} | R Documentation |
Force evaluation of an Argument
Description
Forces the evaluation of a function argument.
Usage
force(x)
Arguments
x |
a formal argument. |
Details
force
forces the evaluation of a formal argument. This can
be useful if the argument will be captured in a closure by the lexical
scoping rules and will later be altered by an explicit assignment or
an implicit assignment in a loop or an apply function.
Note
force
does not force the evaluation of promises.
Examples
f <- function(y) function() y
lf <- vector("list", 5)
for (i in seq(along = lf)) lf[[i]] <- f(i)
lf[[1]]() # returns 5
g <- function(y) { force(y); function() y }
lg <- vector("list", 5)
for (i in seq(along = lg)) lg[[i]] <- g(i)
lg[[1]]() # returns 1