selectSuperClasses

Super Classes (of Specific Kinds) of a Class

Return superclasses of ClassDef, possibly only non-virtual or direct or simple ones.

These functions are designed to be fast, and consequently only work with the contains slot of the corresponding class definitions.

Keywords
classes, programming
Usage
selectSuperClasses(Class, dropVirtual = FALSE, namesOnly = TRUE,
                   directOnly = TRUE, simpleOnly = directOnly,
                   where = topenv(parent.frame()))

.selectSuperClasses(ext, dropVirtual = FALSE, namesOnly = TRUE, directOnly = TRUE, simpleOnly = directOnly)

Arguments
Class

name of the class or (more efficiently) the class definition object (see getClass).

dropVirtual

logical indicating if only non-virtual superclasses should be returned.

namesOnly

logical indicating if only a vector names instead of a named list class-extensions should be returned.

directOnly

logical indicating if only a direct super classes should be returned.

simpleOnly

logical indicating if only simple class extensions should be returned.

where

(only used when Class is not a class definition) environment where the class definition of Class is found.

ext

for .selectSuperClasses() only, a list of class extensions, typically getClassDef(..)@contains.

Value

a character vector (if namesOnly is true, as per default) or a list of class extensions (as the contains slot in the result of getClass).

Note

The typical user level function is selectSuperClasses() which calls .selectSuperClasses(); i.e., the latter should only be used for efficiency reasons by experienced useRs.

See Also

is, getClass; further, the more technical class '>classRepresentation documentation.

Aliases
  • selectSuperClasses
  • .selectSuperClasses
Examples
library(methods) # NOT RUN { setClass("Root") setClass("Base", contains = "Root", slots = c(length = "integer")) setClass("A", contains = "Base", slots = c(x = "numeric")) setClass("B", contains = "Base", slots = c(y = "character")) setClass("C", contains = c("A", "B")) extends("C") #--> "C" "A" "B" "Base" "Root" selectSuperClasses("C") # "A" "B" selectSuperClasses("C", direct=FALSE) # "A" "B" "Base" "Root" selectSuperClasses("C", dropVirt = TRUE, direct=FALSE)# ditto w/o "Root" # }
Documentation reproduced from package methods, version 3.5.2, License: Part of R 3.5.2

Community examples

Looks like there are no examples yet.