Hello Bill, Thanks! Indeed that works. Can you give me a hunch why? Does it have anything to do with environments and scope?
~michal Bill.Venables wrote: > > Try putting a ... argument in the method for g as well > > setGeneric("g", function(object, ...) standardGeneric("g")) > > setMethod("g", "ANY", > function(object, ...) ### change > { > nam <- deparse(substitute(object)) > cat("name:", nam, "\n") > object > } ) > > > Now it works. > > Bill Venables > CSIRO Laboratories > PO Box 120, Cleveland, 4163 > AUSTRALIA > Office Phone (email preferred): +61 7 3826 7251 > Fax (if absolutely necessary): +61 7 3826 7304 > Mobile: +61 4 8819 4402 > Home Phone: +61 7 3286 7700 > mailto:[EMAIL PROTECTED] > http://www.cmis.csiro.au/bill.venables/ > > -----Original Message----- > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] > On Behalf Of Bojanowski, M.J. (Michal) > Sent: Wednesday, 23 January 2008 9:48 AM > To: r-help@r-project.org > Subject: [R] deparse, substitute and S4 generics > > Hello everyone, > > I encountered the following confusing behavior of 'deparse' and > 'substitute' while programming with S4 classes (see example below). It > seems like the presence of '...' argument in the definition of the > generic generates the problem. I have no clue why, can anyone explain > that to me? Are there any "workarounds"? > > Thanks a lot for your time! > > ~Michal > > > > # Let's define two seemingly identical generics > > setGeneric("f", function(object) standardGeneric("f")) > > setMethod("f", "ANY", > function(object) > { > nam <- deparse(substitute(object)) > cat("name:", nam, "\n") > object > } ) > > # and > > setGeneric("g", function(object, ...) standardGeneric("g")) > > setMethod("g", "ANY", > function(object) > { > nam <- deparse(substitute(object)) > cat("name:", nam, "\n") > object > } ) > > > > # now let's test: > > x <- 1 > > # this works > f(x) > > # but this does not, why? what '...' has to do with it? > g(x) > > > > ____________________________________ > Michal Bojanowski > ICS / Department of Sociology > Utrecht University > Heidelberglaan 2; 3584 CS Utrecht > The Netherlands > m.j.bojanowski at uu dot nl > http://www.fss.uu.nl/soc/bojanowski/ > > > [[alternative HTML version deleted]] > > ______________________________________________ > R-help@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide > http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code. > > ______________________________________________ > R-help@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide > http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code. > > ----- ____________________________________ Michal Bojanowski ICS / Department of Sociology Utrecht University Heidelberglaan 2; 3584 CS Utrecht The Netherlands m.j.bojanowski at uu dot nl http://www.fss.uu.nl/soc/bojanowski/ http://bojan.3e.pl -- View this message in context: http://www.nabble.com/deparse%2C-substitute-and-S4-generics-tp15031691p15031992.html Sent from the R help mailing list archive at Nabble.com. ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.