在R中检查和记录函数前置条件和后置条件的惯用方法是什么?

fma*_*ark 10 design-by-contract exception-handling r

在R中检查和记录函数前置条件和后置条件的惯用方法是什么?我会考虑Eiffel的建成requireensure结构或Dinout艺术在这里的块的状态,但这些在接近他们,所以已经开发的最佳实践出炉的大多数语言都没有.

通过检查前置条件,我的意思是,如果传递了不符合函数假设的数据,则会抛出某种运行时异常.目前stopifnot,我可以在函数开始时考虑每个前提条件.这同样适用于后置条件,但是对于返回值而不是参数.

此外,是否有标准的方法来记录这些先决条件和后置条件是什么?例如,在Java中用JavaDoc注释拼写这些是非常标准的.

R在这方面的最佳做法是什么?

mds*_*ner 5

S4类的有效性检查,其中检查通过'setValidity'与类定义一起存储.参见例如:

http://www.r-project.org/conferences/useR-2004/Keynotes/Leisch.pdf