isS4 {base} | R Documentation |
Tests whether the object was created from a formally defined class.
isS4(object) asS4(object, value = TRUE)
object |
Any R object. |
value |
A single logical value; not NA . |
Note that isS4
does not rely on the methods
package, so in particular it can be used to detect the need to
require
that package. (But asS4
does depend on
methods.)
You should not set the flag directly unless you really know why. As
from R 2.6.0, S4 methods are restricted to S4 objects for primitive
functions; asS4
allows method dispatch of S4 methods on
primitives for S3 classes. For all other purposes, an object will
satisfy isS4(x)
if and only if it should.
Note that S4 methods can only be set on those primitives which are
‘internal generic’ and %*%
.
isS4
always returns TRUE
or FALSE
according to
whether the internal flag marking an S4 object has been turned on for
this object.
asS4
will turn this flag on or off. But see the details.
isS4(pi) # FALSE isS4(getClass("MethodDefinition")) # TRUE