List Methods for S3 Generic Functions or Classes

List all available methods for an S3 generic function, or all methods for a class.

methods(generic.function, class)
a generic function, or a character string naming a generic function.
a symbol or character string naming a class: only used if generic.function is not supplied.

Function methods can be used to find out about the methods for a particular generic function or class. The functions listed are those which are named like methods and may not actually be methods (known exceptions are discarded in the code). Note that the listed methods may not be user-visible objects, but often help will be available for them.

If class is used, we check that a matching generic can be found for each user-visible object named. If generic.function is given, there is a warning if it appears not to be a generic function. (The check for being generic used can be fooled.)


An object of class "MethodsFunction", a character vector of function names with an "info" attribute. There is a print method which marks with an asterisk any methods which are not visible: such functions can be examined by getS3method or getAnywhere.The "info" attribute is a data frame, currently with a logical column, visible and a factor column from (indicating where the methods were found).


This scheme is called S3 (S version 3). For new projects, it is recommended to use the more flexible and robust S4 scheme provided in the methods package. Functions can have both S3 and S4 methods, and function showMethods will list the S4 methods (possibly none).

The original methods function was written by Martin Maechler.


Chambers, J. M. (1992) Classes and methods: object-oriented programming in S. Appendix A of Statistical Models in S eds J. M. Chambers and T. J. Hastie, Wadsworth & Brooks/Cole.

See Also

S3Methods, class, getS3method.

For S4, showMethods, Methods.

  • methods
  • print.MethodsFunction
library(utils) require(stats) methods(summary) methods(class = "aov") methods("[[") # uses C-internal dispatching methods("$") methods("$<-") # replacement function methods("+") # binary operator methods("Math") # group generic require(graphics) methods("axis") # looks like it has methods, but not generic ## Not run: # methods(print) # over 100 # ## End(Not run) ## --> help(showMethods) for related examples
Documentation reproduced from package utils, version 3.1.2, License: Part of R 3.1.2

Community examples

Looks like there are no examples yet.