Generate 'Rd' markup to list methods for a generic function. Makes it easier to document S3, S4, and S7 generics by automatically finding and linking to method documentation.
doclisting automatically generates itemized lists of methods for a generic function, suitable for inclusion in roxygen2 documentation. Each method links to its help topic, and methods from other packages are clearly labeled.
You can install the released version from CRAN:
install.packages("doclisting")
Or the development version from GitHub:
pak::pak("hadley/doclisting")
methods_list() and methods_inline() generate Rd markup listing all
methods for a generic:
cat(doclisting::methods_list("mean"))
#> \itemize{
#> \item \code{\link[=Dates]{Date}}
#> \item \code{default}
#> \item \code{\link[=difftime]{difftime}}
#> \item \code{\link[=DateTimeClasses]{POSIXct}}
#> \item \code{\link[=DateTimeClasses]{POSIXlt}}
#> \item \code{quosure} (\pkg{rlang})
#> }
cat(doclisting::methods_inline("mean"))
#> \code{\link[=Dates]{Date}}, \code{default}, \code{\link[=difftime]{difftime}},
#> \code{\link[=DateTimeClasses]{POSIXct}},
#> \code{\link[=DateTimeClasses]{POSIXlt}}, \code{quosure} (\pkg{rlang})
You can use it in roxygen2 documentation in two ways:
Compute methods when the package is documented (i.e. at
devtools::document() time), use inline R code in your roxygen
comment:
#' @description
#' `r doclisting::methods_list("my_generic")`
You’ll need to add doclisting to Suggests.
Compute methods when documentation is rendered (i.e. at ? time), use
an Rd code block:
#' @description
#' `Rd doclisting::methods_list("my_generic")`
You’ll need to add doclisting to Imports and add dummy call to
methods_list() to eliminate the R CMD check note:
ignore_unused_imports <- function() {
doclisting::methods_list
}