[Rd] group generics
Ross Boylan
ross at biostat.ucsf.edu
Wed Nov 25 01:34:25 CET 2009
I have classes A and B, where B contains A. In the implementation of
the group generic for B I would like to use the corresponding group
generic for A. Is there a way to do that?
I would also appreciate any comments if what I'm trying to do seems like
the wrong approach.
Here's a stripped down example:
setClass("A",
representation=representation(xa="numeric")
)
setMethod("Arith", signature(e1="numeric", e2="A"), function(e1, e2) {
new("A", ax=e1*e2 at xa)
}
)
setClass("B",
representation=representation(xb="numeric"),
contains=c("A")
)
setMethod("Arith", signature(e1="numeric", e2="B"), function(e1, e2) {
# the next line does not work right
v <- selectMethod("callGeneric", signature=c("numeric", "A"))(e1, e2)
print(v)
new("B", v, xb=e1*e2 at xb)
}
)
Results:
> t1 <- new("B", new("A", xa=4), xb=2)
> t1
An object of class “B”
Slot "xb":
[1] 2
Slot "xa":
[1] 4
> 3*t1
Error in getGeneric(f, !optional) :
no generic function found for "callGeneric"
Thanks.
Ross Boylan
More information about the R-devel
mailing list