Tests whether the object is an instance of an S4 class.
isS4(object)asS4(object, flag = TRUE, complete = TRUE)
asS3(object, flag = TRUE, complete = TRUE)
Any R object.
Optional, logical: indicate direction of conversion.
Optional, logical: whether conversion to S3 is completed. Not usually needed, but see the details section.
isS4 always returns TRUE or FALSE according to
  whether the internal flag marking an S4 object has been turned on for
  this object.
asS4 and asS3 will turn this flag on or off,
  and asS3 will set the class from the objects .S3Class
  slot if one exists.  Note that asS3 will not  turn
  the object into an S3 object
  unless there is a valid conversion; that is, an object of type other
  than "S4" for which the S4 object is an extension, unless
  argument complete is FALSE.
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.
asS3 uses the value of
  complete to control whether an attempt is made to transform
  object into a valid object of the implied S3 class.  If
  complete is TRUE,
  then an object from an S4 class extending an S3 class will be
  transformed into an S3 object with the corresponding S3 class (see
  S3Part).  This includes classes extending the
  pseudo-classes array and matrix: such objects will have
  their class attribute set to NULL.
isS4 is primitive.
is.object for a more general test; Introduction
  for general information on S4; Classes_Details for more on S4
  class definitions.
# NOT RUN {
isS4(pi) # FALSE
isS4(getClass("MethodDefinition")) # TRUE
# }
Run the code above in your browser using DataLab