我已经多次遇到以下问题。
假设您有两个类,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
. 因此,作为参考,这是我的发现。