findClass {methods} | R Documentation |
Functions to find and manipulate class definitions.
removeClass(Class, where) isClass(Class, formal=TRUE, where) getClasses(where, inherits = missing(where)) findClass(Class, where, unique = "") resetClass(Class, classDef, where) sealClass(Class, where)
Class |
character string name for the class. The functions will
usually take a class definition instead of the string. To restrict
the class to those defined in a particular package, set the
|
where |
the When searching for class definitions, |
unique |
if |
inherits |
in a call to |
formal |
Should a formal definition be required? |
classDef |
For |
These are the functions that test and manipulate formal class definitions. Brief documentation is provided below. See the references for an introduction and for more details.
removeClass
:Remove the definition of this class, from the environment
where
if this argument is supplied; if not,
removeClass
will search for a definition, starting in the
top-level environment of the call to removeClass
, and
remove the (first) definition found.
isClass
:Is this the name of a formally defined class? (Argument
formal
is for compatibility and is ignored.)
getClasses
:The names of all the classes formally defined on where
. If
called with no argument, all the classes visible from the
calling function (if called from the top-level, all the classes
in any of the environments on the search list). The
inherits
argument can be used to search a particular
environment and all its parents, but usually the default setting
is what you want.
findClass
:The list of environments or positions on the search list in
which a class definition of Class
is found. If
where
is supplied, this is an environment (or namespace)
from which the search takes place; otherwise the top-level
environment of the caller is used. If unique
is supplied
as a character string, findClass
returns a single
environment or position. By default, it always returns a list.
The calling function should select, say, the first element as a
position or environment for functions such as get
.
If unique
is supplied as a character string,
findClass
will warn if there is more than one definition
visible (using the string to identify the purpose of the call),
and will generate an error if no definition can be found.
resetClass
:Reset the internal definition of a class. Causes the complete
definition of the class to be re-computed, from the
representation and superclasses specified in the original
call to setClass
.
This function is called when aspects of the class definition are changed. You would need to call it explicitly if you changed the definition of a class that this class extends (but doing that in the middle of a session is living dangerously, since it may invalidate existing objects).
sealClass
: Seal the current definition of the specified
class, to prevent further changes. It is possible to seal a class
in the call to setClass
, but sometimes further changes have
to be made (e.g., by calls to setIs
). If so, call
sealClass
after all the relevant changes have been made.
Chambers, John M. (2008) Software for Data Analysis: Programming with R Springer. (For the R version.)
Chambers, John M. (1998) Programming with Data Springer (For the original S4 version.)
setClassUnion
,
Methods
,
makeClassRepresentation