[R] Where to declare S4 classes?

Prof Brian Ripley ripley at stats.ox.ac.uk
Sun Mar 5 09:05:12 CET 2006

The key steps are

1)  setClass and setMethod calls are executed at the top level in your 
package See e.g. file mle.R in the stats4 package which ships with R.

2) The package is installed with SaveImage: yes or LazyLoad: yes.

The stats4 package is shipped with R partly as an example of using S4 

On Sun, 5 Mar 2006, Patrick Giraudoux wrote:

> Dear listers,
> I am making a trial to move from S3 to S4... I have created some classes
> of interest and they work acceptably well for the purpose. I am now
> wondering how to make them operate in a package. In clear when a package
> is loaded (eg library(mypackage)) where should I put the class descriptions:
> setClass("Prior",representation(Distrib="character",Params="list"))
> setClass("SamplePrior",representation("Prior",Sample="list"))
> so that they are created and then usable for functions after a simple
> call to library(mypackage).
> It is probably something trivial, but I could not find out something
> clear on this (eg example) in the R-help-list, writing R-extensions, nor
> in  S programming... and trying to get this info through reading other
> library codes has been unsuccessful.
> Patrick
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html

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-help mailing list