R 从函数外部访问函数定义的环境

R 从函数外部访问函数定义的环境,r,R,假设我在R中有一个闭包,看起来如下所示: closure <- function(driver=system.file("java/driver.jar", package="fake"), db_username=.getDb_username(), db_password=.getDb_password(), db_name=.getDb_name(),

假设我在
R
中有一个闭包,看起来如下所示:

closure <- function(driver=system.file("java/driver.jar", package="fake"),
                    db_username=.getDb_username(), 
                    db_password=.getDb_password(), 
                    db_name=.getDb_name(),
                    tunnel="ssh command"){
  system(tunnel)
  drv <- JDBC("db.jdbc.Driver",
              driver,
              identifier.quote="`")
  db_con <- dbConnect(drv, db_name, db_username, db_password)

  runQuery <- function(sql_query, ...){
    sql_query <- processQuery(sql_query, ...)

    return(.dbRunQuery(db_con, sql_query, dbGetQuery))

  }
  return(runQuery)
}
close我很傻

答案如下:

有关更多信息,请访问
?环境


我可以简单地运行
环境(closure\u return)
并访问那里的变量。

@Frank我在R中输入时没有得到任何返回console@Frank是的,看起来
环境
文档也不错。添加。好的,删除我的评论。“清理”之类的
closure_return <- closure()