setGenericS3 {R.methodsS3} | R Documentation |
Note that this method is a internal method called by
setMethodS3
() and there is no reason for calling it directly!
Creates a generic function in S3 style, i.e. setting a
function with name name
that dispatches the method name
via UseMethod
. If there is already a function named name
that function is renamed to name.default
.
## Default S3 method: setGenericS3(name, envir=parent.frame(), ellipsesOnly=TRUE, dontWarn=getOption("dontWarnPkgs"), validators=getOption("R.methodsS3:validators:setGenericS3"), ...)
name |
The name of the generic function. |
envir |
The environment for where this method should be stored. |
ellipsesOnly |
If TRUE , the only arguments in the generic function
will be ... . |
dontWarn |
If a non-generic method with the same name is found it
will be "renamed" to a default method. If that method is found in
a package with a name that is not found in dontWarn
a warning will be produced, otherwise it will be renamed silently. |
validators |
An optional list of function s that can be used
to assert that the generated generic function meets certain
criteria. |
... |
Not used. |
Henrik Bengtsson (http://www.braju.com/R/)
To define a method for a class see setMethodS3
().
For more information about S3, see UseMethod
().
myCat.matrix <- function(..., sep=", ") { cat("A matrix:\n"); cat(..., sep=sep); cat("\n"); } myCat.default <- function(..., sep=", ") { cat(..., sep=sep); cat("\n"); } setGenericS3("myCat"); myCat(1:10); mat <- matrix(1:10, ncol=5); attr(mat, "class") <- "matrix"; # Has to be done as of [R] V1.4.0. myCat(mat);