Re: [Rd] Is difftime a "class"

2013-07-09 Thread Kevin R. Coombes

difftime is an S3 class, not an S4 class. To convert it, include the line

setOldClass("difftime")

and the setMethod call should work.

On 7/9/2013 6:03 AM, Dan Murphy wrote:

I am trying to write S4 methods with "difftime" in the signature but
am being "informed" (? not a warning or error) that "difftime" is not
a class. Nevertheless, dispatch takes place. Should I simply ignore
that "information"? Here is a toy example:


setClass("foo", contains = "Date")
setMethod("+", c("foo", "difftime"), function(e1, e2) callNextMethod())

in method for ‘+’ with signature ‘"foo","difftime"’: no definition for
class “difftime”
[1] "+"

x<- new("foo", as.Date("2013-06-30"))
dt<- as.difftime(1, units = "days")
x + dt

[1] "2013-07-01"

Thank you,
Dan Murphy

__
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel


__
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel


[Rd] Is difftime a "class"

2013-07-09 Thread Dan Murphy
I am trying to write S4 methods with "difftime" in the signature but
am being "informed" (? not a warning or error) that "difftime" is not
a class. Nevertheless, dispatch takes place. Should I simply ignore
that "information"? Here is a toy example:

> setClass("foo", contains = "Date")
> setMethod("+", c("foo", "difftime"), function(e1, e2) callNextMethod())
in method for ‘+’ with signature ‘"foo","difftime"’: no definition for
class “difftime”
[1] "+"
> x <- new("foo", as.Date("2013-06-30"))
> dt <- as.difftime(1, units = "days")
> x + dt
[1] "2013-07-01"

Thank you,
Dan Murphy

__
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel