r - 使用 roxygen2 R CMD 检查 codoc 不匹配警告记录引用类

标签 r documentation roxygen2 reference-class roxygen

我正在尝试使用 roxygen2 为引用类对象制作文档,但当我运行 R CMD 检查时,我不断收到此警告:

  S4 class codoc mismatches from documentation object 'myRefClass-class':
  Slots for class 'myRefClass'
  Code: .xData
  Inherited: .xData
  Docs: field1 field2

这是与上述警告相关的 ref 类和 roxygen2 block :

#' @title myRefClass class
#' @description Description of myRefClass
#' @import methods
#' @exportClass myRefClass
#' @slot field1 A character slot
#' @slot field2 A numeric slot
myRefClass<-setRefClass(Class="myRefClass", 
                        fields=list(field1="character", 
                        field2="numeric"))

这是生成的 R 文档:

myRefClass-class {testPackaging} R Documentation myRefClass class

Description

Description of myRefClass

Slots

field1 A character slot

field2 A numeric slot

至于我能找到的文档,codoc正在测试我的代码和文档之间的一致性。据我所知,所有插槽名称都是相同的;也许我错过了一些东西。 不确定文档是否应该自动将其标记为引用类,或者我是否应该以某种方式表明这一点? 我发现 R 文档表明插槽“.xData,用于启用异常类型的继承”,但我不确定为什么它适用于我在这里所做的事情,或者我是否应该用它做一些事情。

我已经尝试了 roxygen 标签的多种排列,并保持接近此处找到的结构似乎为我提供了来自 R CMD 检查的最佳结果/最少警告:Roxygen2 - how to @export reference class generator? 我一直在网上寻找有关如何将 roxygen2 与引用类一起使用的示例;也许我找错了地方——我运气不太好。

我正在使用 roxygen2 v 3.1.0/RStudio 版本 0.98.501/R 版本 3.0.3/OSX 10.9.2 (注意:尝试升级到 roxygen2 v 4.0,它完全被引用类阻塞,以至于根本没有生成任何文档)

如果有人知道使用 roxygen2 和引用类的 CRAN 包,这样我就可以看到它是如何正确完成的,或者如果有人知道我做错了什么,我将不胜感激。我是 R 中软件包构建的新手。

最佳答案

我通常使用@section Fields,所以在这种情况下:

#' @title myRefClass class
#' @description Description of myRefClass
#' @import methods
#' @exportClass myRefClass
#' @section Fields:
#' \describe{
#' \item{\code{field1}:}{Object of class \code{"character"}, field1 description here}
#' \item{\code{field2}:}{Object of class \code{"numeric"}, field2 description here}
#' }

myRefClass<-setRefClass(Class="myRefClass", 
                        fields=list(field1="character", 
                        field2="numeric"))

更新:使用 roxygen2 4.0.1

#' A Reference Class to represent test1.
#' @name test1
#' @import methods
#' @exportClass myRefClass
#' @field field1 A character vector
#' @field field2 A numeric vector

myRefClass<-setRefClass(Class="myRefClass", 
                        fields=list(field1="character", 
                                    field2="numeric"))

产生

A Reference Class to represent test1.
Description

A Reference Class to represent test1.
Fields

field1

    A character vector
field2

    A numeric vector

关于r - 使用 roxygen2 R CMD 检查 codoc 不匹配警告记录引用类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23707709/

相关文章:

node.js - 如何使用 Express Swagger Generator 在同一条路线上定义多个操作

r - 记录 ggplot2 统计扩展 - devtools::document() 未创建 packagename-ggproto.Rd

使用 Roxygen2 的引用包小插图

r - 使用 roxygen2 生成命名空间 : a small example or template

r - 在 R 中重现并行SVM结果的问题

r - 打开新的 rgl 设备时,绘图样式与默认样式有很大不同

web-services - 记录 ServiceStack Web 服务

delphi - 文档Delphi DLL导出

r - geom_polygon 绘制正态分布和逻辑分布

r - spplot() - 使 color.key 看起来不错