1

我有一个 S3 课程,我正在尝试研究如何为其设置打印功能。

这部分很好。

print.webglobe <- function(wg, ...){
  "it worked!"
}

但是,如果我运行devtools::check()它,我会收到以下不祥的消息:

checking S3 generic/method consistency ... WARNING
print:
  function(x, ...)
print.webglobe:
  function(wg, ...)

我尝试添加附加代码:

print <- function(wg, ...){
  UseMethod("webglobe", wg)
}

但是,有了这个礼物,print.webglobe()似乎永远不会被访问,我的 S3 类只是打印为某种列表。

如何正确设置?

4

1 回答 1

2

将 更改wgx。方法的形式参数必须与泛型的参数匹配,因为来自泛型调用的参数基于名称传递给方法。这就是为什么 theprint()没有按您期望的方式工作的原因,因为wg它被发送到wg而不是方法的第一个参数。

于 2017-04-22T11:33:22.057 回答