我正在尝试构建一个包含自己的S4类定义的包。 R检查有效但发出以下警告:undefined slot classes in definition mySecond
。
我设置为类,而第二个类中的一个插槽是类myFirstClass
。 E.g:
setClass("myFirst",representation(field_one = "character",
field_two = "list")
)
setClass("mySecond",representation(a = "character",
b = "myFirst")
)
注意:虽然S4可能更容易处理,但我想在这里坚持使用S4,因为我在数据库中映射信息,而在这种情况下更喜欢S4更严格的定义。编译确实有效,但我尝试在这里实现CRAN的标准,并希望摆脱警告。 BTW:
getClassDef
为两个类提供了合理的结果。
答案 0 :(得分:8)
也许你的类定义在单独的文件中,并且整理是这样的,mySecond是在myFirst之前定义的?请参阅描述中的Collate:字段(RShowDoc("R-exts")
的1.1.1节),或者遵循一个结构化包的模型,其中文件AllClasses.R包含类定义。