R:方法适用于错误的类(as.numeric.foo不适用于foo)

时间:2019-02-07 08:52:21

标签: r class methods

我正在写一个程序包,在其中创建一个类c("foo", "list")(基本上是一个列表)的对象。我尝试添加自定义as.numeric()方法:

#' @method as.numeric foo
#' @export
as.numeric.foo <- function(x, ...){
  return(x$bar)
}

但是,当我执行as.numeric(foo)时,它会出错:

Error: (list) object cannot be coerced to type 'double'

好像它使用as.numeric.list而不是as.numeric.foo

当我运行methods("as.numeric")时,as.numeric.foo*已正确注册...

如何强制选择正确的方法?

0 个答案:

没有答案