Many R-internal functions are generic and allow methods to be written for.
The following primitive and internal functions are generic,
i.e., you can write methods
for them:
[
,
[[
,
$
,
[<-
,
[[<-
,
$<-
,
length
,
length<-
,
dimnames
,
dimnames<-
,
dim
,
dim<-
,
names
,
names<-
,
levels<-
,
c
,
unlist
,
cbind
,
rbind
,
as.character
,
as.complex
,
as.double
,
as.integer
,
as.logical
,
as.raw
,
as.vector
,
is.array
,
is.matrix
,
is.na
,
is.nan
,
is.numeric
,
rep
,
seq.int
(which dispatches methods for "seq"
)
and xtfrm
In addition, is.name
is a synonym for is.symbol
and
dispatches methods for the latter. Similarly, as.numeric
is a synonym for as.double
and dispatches methods for the
latter, i.e., S3 methods are for as.double
, whereas S4 methods
are to be written for as.numeric
.
Note that all of the group generic functions are also internal/primitive and allow methods to be written for them.
.S3PrimitiveGenerics
is a character vector listing the
primitives which are internal generic and not group generic.
Currently as.vector
, cbind
,
rbind
and unlist
are the internal
non-primitive functions which are internally generic.
For efficiency, internal dispatch only occurs on objects, that
is those for which is.object
returns true.
methods
for the methods which are available.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.