Hi John,
John Chambers wrote: > A problem with callNextMethod, which is caching an inherited method as > if it was not inherited, causing confusion on the next search. Should > be fairly easy to fix, but may be a while before I get time to do so. > > By the way, I hope your simplified example does not reflect what > happens in the actual one. > callNextMethod(.Object) > throws away all the ... arguments to new(), which rather defeats the > purpose of having initialize() methods. Generally, callNextMethod() > should get no arguments or all the arguments it needs, including ... > See ?callNextMethod Thanks for looking at this! Yes it is a simplified version of a real case and here .Object is all what callNextMethod() needs because the initialize method for an "A" object takes no argument other than .Object More generally I don't see what's wrong with not passing to callNextMethod all the arguments coming from the call to new: setClass("A", representation(toto="integer")) setMethod("initialize", "A", function(.Object, toto0) [EMAIL PROTECTED] <- as.integer(toto0); .Object}) new("A", 45.1) setClass("Ab", contains="A") setMethod("initialize", "Ab", function(.Object, x, y) callNextMethod(.Object, x*y+1)) new("Ab", 5, 2) Regards, H. ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel