I need to find all global variables being used in a function and findGlobals() in the codetools package works quite nicely. However, I am not able to find variables that are used in formulae. Simply avoiding formulae in functions is not an option because I do not have control over what functions this will be applied to.
Here is an example to illustrate: library(codetools) xGlobal <- rnorm(10) yGlobal <- rnorm(10) plotFn1 <- function() { plot(yGlobal ~ xGlobal) } plotFn2 <- function() { y <- yGlobal x <- xGlobal plot(y ~ x) } plotFn3 <- function() { plot(xGlobal, yGlobal) } findGlobals(plotFn1, merge=FALSE)$variables # character(0) findGlobals(plotFn2, merge=FALSE)$variables # [1] "xGlobal" "yGlobal" findGlobals(plotFn3, merge=FALSE)$variables # [1] "xGlobal" "yGlobal" I would like to find that plotFn1 also uses globals xGlobal and yGlobal. Any suggestions on how I might do this? ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.