Hi Matthias,
A similar problem to yours (with one level of inheritance less) was disccussed this month on the r-devel list.
You find an answer from JChambers here:
https://stat.ethz.ch/pipermail/r-devel/2004-October/030980.html
And yes specifying _setAs_ to each _setIs_ with the coerce and replace is a _hack_ which is with this version of methods necessary when inherting from Old Classes.
/E
[EMAIL PROTECTED] wrote:
Hello,
am I using 'setIs' in the correct way in the subsequent (artifical) example?
Do I have to specify explicit 'setAs' for 'list' and 'vector' or should this work automatically, since "getClass("List1")" states an explicit coerce also for these classes.
I'm working with R 2.0.0 Patched (2004-10-06) on windows 2000.
Thanks for your advice, Matthias
# example setClass(Class = "List1", representation(List = "list")) setClass(Class = "List2", contains = "list")
setIs(class1 = "List1", class2 = "List2", coerce = function(obj){ new("List2", [EMAIL PROTECTED]) }, replace = function(obj, value){ [EMAIL PROTECTED] <- value })
getClass("List1") # states explicit coerce for 'list' and 'vector' getClass("List2") L1 <- new("List1", List = list("a"))
# all TRUE is(L1, "List2") is(L1, "list") is(L1, "vector")
as(L1, "List2") # works
# both return 'list()' # why not a 'list' with entry "a"? # Is there an additional 'setAs' needed? as(L1, "list") as(L1, "vector")
L2 <- as(L1, "List2") as(L2, "list") # works as(L2, "vector") # works
______________________________________________ [EMAIL PROTECTED] mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
--
Dipl. bio-chem. Witold Eryk Wolski
MPI-Moleculare Genetic
Ihnestrasse 63-73 14195 Berlin
tel: 0049-30-83875219 __("< _
http://www.molgen.mpg.de/~wolski \__/ 'v'
http://r4proteomics.sourceforge.net || / \
mail: [EMAIL PROTECTED] ^^ m m
[EMAIL PROTECTED]______________________________________________ [EMAIL PROTECTED] mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
