[Rd] Retrieving an unevaluated argument
hadley wickham
h.wickham at gmail.com
Wed Feb 1 23:01:52 CET 2006
I'm trying to retrieve an unevalated argument (a list in particular).
I can do this easily when I call the function directly:
a1 <- function(x) match.call()$x
> a1(list(y=x^2))
list(y = x^2)
But when the function is called by another function, it gets trickier
b <- function(x, f) f(x)
> b(list(x^2), a1)
x
The best I've been able to do is:
a2 <- function(x) parse(text=deparse(substitute(x, parent.frame())))[[1]]
> b(list(x^2), a2)
list(x^2)
But I'm sure there must be a better way!
Hadley
More information about the R-devel
mailing list