2

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 ブロックです。

#' @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 ドキュメント myRefClass クラス

説明

myRefClass の説明

スロット

field1 文字スロット

field2 数値スロット

私が見つけたドキュメンテーションに関しては、codoc が私のコードとドキュメンテーションの間の一貫性をテストしています。私が知る限り、すべてのスロット名は同じです。おそらく私は何かを逃しています。ドキュメントがこれを参照クラスとして自動的にマークする必要があるかどうか、または何らかの方法でそれを示す必要があるかどうかわかりませんか? スロット「.xData は、異常な型からの継承を有効にするために使用される」ことを示す R ドキュメントを見つけましたが、ここで行っていることになぜそれが適用されるのか、またはそれを使用して何かを行う必要があるのか​​ わかりません。

私はroxygenタグの順列をいくつか試しましたが、ここで見つかった構造に近づけることで、R CMDチェックから最良の結果/最小の警告が得られるようです: Roxygen2 - @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でのパッケージ構築は初めてです。

4

1 に答える 1

6

私は通常@section Fields、この場合は so を使用します。

#' @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
于 2014-05-17T20:08:39.237 に答える