小编Mer*_*yde的帖子

NAMESPACE 中的 S3methods 未导出

我正在R使用 devtools::document()开发一个包来创建 NAMESPACE 文件。其中一些函数是 S3methods,用于摘要、预测、绘图、打印,其中泛型在base或 中stats。我正在按照 Hadley 的建议使用 @export,这会导致 NAMESPACE 中的 S3method 条目正确,并且包通过了所有检查 -as-cran。但是,这些函数未在 NAMESPACE 中导出,因此未找到调用 print.myclass(我理解这是避免混乱 NAMESPACE 所需的行为)。但是,通过 Mypackage::print.myclass 调用该函数也会导致该函数不是从 导出的对象的错误Mypackage

问题:这是正确的行为吗?或者是否需要其他步骤才能导出该函数?我曾尝试添加 @method print Myclass 和 @export 但没有运气。devtools在 MAC OS X 10.12.6 下使用 R 3.4.2 和1.13.3

谢谢!梅丽丝

编辑:更新为具有将添加/导出方法和导出功能的代码

简单示例 - 在 RStudio 中构建一个具有以下功能的骨架包:

#' test for export of S3 methods
#'
#' @title "print hello world for any object"
#' @param x object
#' @param digits optional number specifying …
Run Code Online (Sandbox Code Playgroud)

namespaces r devtools

6
推荐指数
1
解决办法
1002
查看次数

标签 统计

devtools ×1

namespaces ×1

r ×1