我正在编写一个打算用于分析的本地包(而不是像现在一样使用脚本)。我在理解 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.
}
Run Code Online (Sandbox Code Playgroud)
我知道当我安装/加载包时,可以通过 NAMESPACE 访问函数“a”,但我仍然希望函数“b”在内部可用。由于我是该包的唯一预期用户,我可以导出所有内容,但我想知道正确的方法。只是出口?采购?使用 devtools::load_all?
编辑:通过虚拟代码还不够好。修改了它。我认为我的误解的根源在于我期望附加代码,但事实显然并非如此。