2012-05-04 3 views
9

Rの関数の前提条件と事後条件をチェックして文書化するための慣用的な方法は何ですか?Eiffelrequireensureのコンストラクト、またはというブロックで構成されていると考えていますが、ほとんどの言語ではこれらのベークが行われていないため、それらを近似するベストプラクティスが開発されています。Rの関数の前提条件と事後条件をチェックして文書化する慣用方法は何ですか?

前提条件を確認することによって、関数の前提条件を満たさないデータが渡された場合に実行時例外が発生することを意味します。現在、関数の先頭にあるすべての前提条件について、stopifnotというステートメントがあります。事後条件にも同じことが当てはまりますが、パラメータではなく戻り値に関するものです。

さらに、これらの前提条件と事後条件が何であるかを文書化する標準的な方法がありますか?たとえば、JavaのJavaDocコメントでこれらを綴るのはかなり標準的です。

この点でRのベストプラクティスは何ですか?

答えて

2

ドキュメントの面では、私はあなたがroxygen2パッケージを見てみることをお勧めします。 JavaDocとDoxygenに匹敵するのは、コードと共にソースファイルにドキュメントを格納する点です。定義する必要がある項目、例えば多数あります。入力引数は何

  • 関数の戻り値には何

は、しかし、これはあなた自身の作成からあなたを停止しないpre事前条件と事後条件が記載されている項目はpostです。 roxygen2の詳細については、CRANまたはStackOverflowを参照してください。

2

は友好のエラーメッセージが、より冗長なコードif (condition) stop("...message...")ため?stopifnot

または

を参照してください。

関連する問題