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