【发布时间】:2016-11-29 19:39:27
【问题描述】:
我正在编写一个我打算用于分析的本地包(而不是像以前那样使用脚本)。我很难理解 R 以这种方式采购/确定范围的方式。假设我有一个 R/some_functions.R 文件,其中包含:
#' function a
#' @export
a <- function(a) {
print(a)
}
#' function b, not exporting
b <- function(b) {
print(b)
}
#' function c
cc <- function() {
a("cat") # will run
b("dog") # will not run, can't find function.
}
我知道当我安装/加载包时,函数“a”可以通过 NAMESPACE 访问,但我仍然希望函数“b”在内部可用。由于我是该软件包的唯一预期用户,因此我可以 export all ,但我想知道正确的方法。 只是出口?采购?使用 devtools::load_all?
编辑:通过虚拟代码还不够好。修改它。我认为我误解的根源是我希望附加代码,但显然不是这样。
【问题讨论】:
-
如果你让它打印(“b”)还会发生这种情况吗?
-
@Roland 我编辑了我的伪代码,在函数 cc() 中它确实有效。
标签: r