Correct way to document S3 methods for S4 classes

Per the methods manual I create a S3 and a S4 method for an S4 class. Take a method:

setClass("uncased", contains = "character")

Then I have the following:

#' @rdname unique
#' @export
unique.uncased <- function(x, incomparables = FALSE, ...) nextMethod(tolower(x))

#' @rdname unique
#' @export
setMethod("unique", "uncased", unique.uncased)

This adds the exportMethods(unique) to the NAMESPACE, but fails to add the S3method(unique, uncased). Instead, it adds export(unique.uncased) and causes the following note in R CMD check :

S3 methods shown with full name in documentation object 'unique':
'unique.uncased'

Trying to use @S3Method tag results in roxygen2 complaining about the tag being deprecated. Am I missing something here?

I have the same problem.
Found the solution there: https://github.com/klutometis/roxygen/issues/741

1 Like