On 05/30/2011 08:54 AM, Janko Thyson wrote:
Dear List,
when I first started to use S4 classes, I used the function
'completeClassDef()' in order to see the super- and subclasses of a
certain class:
Hi Janko -- I think 'complete' is meant as an adverb here; what you
might want is names(getClassDef("A")@subclasses) (see
slotNames(class(getClassDef("A"))) for other useful info).
Martin
setClass(Class="A", representation=list(a="numeric"))
setClass(Class="B", contains="A", representation=list(b="character"))
# Super
x<- completeClassDefinition("B")
attributes(x)
names(x@contains)
# Sub
x<- completeClassDefinition("A")
attributes(x)
names(x@subclasses)
This also does the trick for Reference Classes for me. However, I
re-read the respective section on the help page and wondered if I should
be more careful about using this function for this purpose as the page says:
"|completeClassDefinition: |Completes the definition of |Class|,
relative to the class definitions visible from environment |where|. If
|doExtends| is |TRUE|, complete the super- and sub-class information.
This function is called when a class is defined or re-defined."
So here are my questions:
1) Is it safe to call 'completeClassDef()' explicitly or can anything be
"overwritten" by this?
2) Is there a better way to query the super-/subclasses of a certain
S4/Reference Class?
Best regards and I'd like to take this opportunity to express my
gratitude to everyone on this list who takes the time to provide such
great help!
Janko
______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel
--
Computational Biology
Fred Hutchinson Cancer Research Center
1100 Fairview Ave. N. PO Box 19024 Seattle, WA 98109
Location: M1-B861
Telephone: 206 667-2793
______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel