Хотя этот вопрос уже задавался ( Как правильно документировать методы S4 с использованием roxygen2 ), что было в 2011 году, и все изменилось. После долгих поисков и экспериментов я думаю, что работает следующее:
#' Define Class A
#'
#' @slot slt numeric.
#'
#' @export
#'
setClass("A",
slots = c(slt="numeric")
)
#' Subset method for A class
#'
#' @param A character: signature supported
#' @param integer character: signature supported
#' @param missing character: signature supported
#' @param x Object of Account class
#' @param i integer index
#' @param j integer index
#' @param ... other arguments passed to subset
#' @param drop not used
#' @rdname A-class
#'
#'
#' @export
setMethod("[", c("A", "integer", "missing", "ANY"),
function(x, i, j, ..., drop=TRUE)
{
methods::initialize(x, slt=x@slt[i])
})
Пакет с этой документацией дает четкую проверку CMD. Я использую RStudio версии 1.2.5033, R версии 3.6.3 (2020-02-29) и Roxygen2 версии 7.1.0.
Я обнаружил, что команда Rstudio Insert Roxygen Skeleton более или менее бесполезна для документирования метод: он абсолютно ничего не вставил.
Мой вопрос таков: хотя это работает, я не уверен, соответствует ли это текущему передовому опыту. Можно ли это улучшить?