1

我有一个通用的打印功能,我认为我已经根据通用功能(LINK,诚然我有点难以掌握)和这个问题(LINK)正确设置了它。但是,它仍然会在检查中引发警告。下面是一个模拟函数、打印方法、roxygen 文档和检查中的错误。有关打印功能正在做什么的背景;基本上我希望输出看起来不像是类,但它仍然带有一个类,用于通过后续函数处理该对象。如何使警告消失(并保留打印功能)?

FUN <- function(x) {
    class(x) <- "full_matrix"
    x
}

#' Prints a fuul_matrix object
#' 
#' prints a test object
#' 
#' @param full_matrix The full_matrix object
#' @method print full_matrix
#' @S3method print full_matrix
print.full_matrix <- function(full_matrix) {
    x <- full_matrix
    class(x) <- NULL
    print(x)
}

x <- FUN(mtcars)
x
class(x)

警告:

* checking S3 generic/method consistency ... WARNING
print:
  function(x, ...)
print.full_matrix:
  function(full_matrix)

print:
  function(x, ...)
print.incomplete_matrix:
  function(incomplete_matrix)

See section 'Generic functions and methods' of the 'Writing R
Extensions' manual.
4

1 回答 1

2

编写 R 扩展

一个方法必须具有泛型的所有参数,包括 ... 如果泛型有。

你的方法既没有x也没有...

于 2012-12-04T02:24:39.063 回答