Documenting setter functions with roxygen

1.4k views Asked by At

I have a function that does nothing more than ads a unique attr to any R object. Base demo:

#' Setter function
#' @param x an R object
#' @param value a character value to set
#' @export
`foo<-` <- function(x, value){
    attr(x, 'foo') <- value
    return(x)
}

This works like a charm except for generating a good Rd file, relevant part:

\usage{
  foo(var, value) <- value
}

And of course it triggers a warning while running R CMD check as it should be foo(var) <- value.

Any hints would be really apprecieted!


Update: thanks to richierocks it seems there is a fix

1

There are 1 answers

3
Andrie On BEST ANSWER

You can use the roxygen tag @usage

Here is an example from one of my packages:

#' @rdname pattern
#' @usage pattern(x) <- value
#' @param value New value
#' @export pattern<-
"pattern<-" <- function(x, value=c("^", "($|(_\\d+(_\\d+)*)$)")){
  attr(x, "pattern") <- value
  x
}

This results in my desired documentation:

Usage

  pattern(x) <- value

Arguments
x surveydata object

value New value