Как расширить ссылочный класс, определенный в пакете R?

Я хочу позволить пользователям расширять ссылочный класс, который я определил в своем пакете. Вот игрушечный пример:

# my_package/R/Main.R
#' My Main class
#' @export
Main <- setRefClass("Main")

После загрузки этого пакета я получаю предупреждение, когда пытаюсь его расширить:

library(my_package)
Child <- setRefClass("Child", contains = "Main")
# Warning message:
# Class "Main" is defined (with package slot ‘my_package’) but no metadata object found to revise subclass information---not exported?  Making a copy in package ‘.GlobalEnv’

Как мне избавиться от этого предупреждения?

1 ответ

Решение

Не забудьте экспортировать определение класса из вашего пакета, в файл my_package/NAMESPACE добавьте

exportClasses("Main")
Другие вопросы по тегам