【发布时间】:2012-11-22 10:07:17
【问题描述】:
我已经多次遇到以下问题。
假设您有两个类,classA 和 classB 在以下文件 classA.R 中描述:
#' the class classA
#'
#' This is a class A blabla
#' \section{Slots}{\describe{\item{\code{A}}{a Character}}}
#' @ name classA
#' @rdname classA
#' @exportClass classA
setClass("classA",representation(A="character"))
还有classB.R
#' the class classB
#'
#' This is a class B blabla
#' \section{Slots}{\describe{\item{\code{B}}{an object of class A}}}
#' @ name classB
#' @rdname classB
#' @exportClass classB
setClass("classB",representation(B="classA"))
我相信roxygen2 按字母顺序阅读了这些文件,但事实并非如此。如果我尝试构建包,我可能会收到以下错误:
roxygenize("./myExample")
Error in getClass(Class, where = topenv(parent.frame())) :
"ClassA" is not a defined class
我如何确保roxygenize() 知道读取文件的顺序,即应该先读取哪个类定义?
注意:我知道我回答了自己的问题。那是因为我经常遇到这个问题,并且在查看roxygen2的代码后意识到了正确的方法。因此,作为参考,这是我的发现。
【问题讨论】:
标签: r documentation package s4 roxygen2