[Rd] S4 group generic Complex not working (PR#4483)

Prof Brian Ripley ripley at stats.ox.ac.uk
Thu Oct 9 18:46:55 MEST 2003


On Thu, 9 Oct 2003 saikat at stat.wisc.edu wrote:

> The Complex group generic for S4 methods is not working:
> 
>  > setClass('foo', representation(z='complex'))
> [1] "foo"
>  > setMethod('Complex', 'foo', function(z) callGeneric(z at z))
> [1] "Complex"
>  > Arg(new('foo', z=1+0i))
> Error in Arg(new("foo", z = 1 + (0+0i))) :
>          non-numeric argument to function
>  >

> The fix is to add
> 
>      if (DispatchGroup("Complex", call, op, args, env, &x))
> 	return x;
> 
> near the beginning of do_cmathfuns in complex.c.

I don't think that's right: that would set up an S3 group generic 
Complex, and there is no such thing.  That's not how S4 group generics are 
implemented, according to ?Complex.

-- 
Brian D. Ripley,                  ripley at stats.ox.ac.uk
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595



More information about the R-devel mailing list