如果一个包中有一个函数声明。声明参数时没有类型,只有在运行时,才能调用该函数。
有没有办法描述R函数参数类型,以便这些描述可用于静态分析?
用例:IDE的内省。
====编辑====
答案 0 :(得分:2)
一般情况下,R
是动态类型的,这可能是一个很大的优势或负担。 R
中的任何对象都有一种类型的过程,这些对象通常可以被强制(或强制转换),但我不认为这就是你所要求的。对于某些方法,您可能希望查看类系统(?class
)。但通常,由函数编写者在使用它们之前检查输入值。此外,您可能会发现此paper很有趣。
查看?browseEnv
,也许驱动它的代码可能会对您的项目感兴趣。或RStudio?
答案 1 :(得分:0)
R包assertthat
(https://cran.r-project.org/web/packages/assertthat/index.html)在这个领域提供了一些帮助。它适用于testthat
,可以在打包时进行测试。