[Rd] Automatically retrieve correct collation

Janko Thyson janko.thyson at ku-eichstaett.de
Thu Aug 19 10:35:45 CEST 2010


> -----Ursprüngliche Nachricht-----
> Von: baptiste auguie [mailto:baptiste.auguie at googlemail.com]
> Gesendet: Donnerstag, 19. August 2010 07:41
> An: Janko Thyson
> Cc: r-devel at r-project. org
> Betreff: Re: [Rd] Automatically retrieve correct collation
> 
> Hi,
> 
> roxygen can create the collate field for you, if you specify the
> dependencies in the commented code. I've never tested it with S4
> classes though.
> 
> HTH,
> 
> baptiste

Thanks Baptiste,

I will have a look at Roxygen.

Janko

> 
> On 18 August 2010 22:28, Janko Thyson <janko.thyson at ku-eichstaett.de>
> wrote:
> > Dear List,
> >
> > consider the following scenario:
> >
> > setClass(Class = "A", representation = representation(B = "B", C =
> "C"))
> > setClass(Class = "B", representation = representation(C = "C"))
> > setClass(Class = "C", representation = representation(something =
> > "character"))
> >
> > Obviously, the collation for sourcing these defs needs to be: C, B,
> A. Which
> > doesn't correspond to the default collation of R (alphabetically).
> >
> > I've tried to pick up on how to ensure the right collation when
> building R
> > Packages by reading some previous posts and as far as I understand
> I've
> > basically got two options here:
> > 1) Put all class defs in one script, e.g. allClasses.R.
> > 2) Manually specify the collation via the "Collate" field in the
> DESCRIPTION
> > file.
> >
> > I'm used to organizing my classes, generics, methods etc. on a
> > "one-per-script" basis in various subdirectories (e.g. R/classes,
> R/methods
> > etc.) and try automate manual steps wherever possible (not sure if
> that's
> > the way most of you guys code, but it definitely helped me stay on
> top of
> > things). But this doesn't really go well with my two options above,
> does it?
> > ;-)
> >
> > So I thought about setting up a routine that
> > - investigates the source code of all classes (via parsing and
> looking into
> > the "representation" argument)
> > - finds out the valid collation by itself based on all classes that
> it found
> > in the representation argument of the respective class defs
> > - and then writes all the class defs to one R script, e.g.
>  allClasses.R, so
> > I can bundle all my code in an R Package without worrying about the
> > collation.
> >
> > This way I could stick to my old habits while automating the process
> of
> > building a package a bit ;-)
> >
> > Now, I managed to get this done for "simple" class defs like the ones
> above
> > but haven't looked into more complex class defs (e.g. including
> "contains"
> > etc.) yet.
> >
> > Has anyone tried and succeeded in doing something similar or are all
> of you
> > into the "one-script-contains-all" paradigm? If anyone is interested,
> I'd be
> > glad to share code. Likewise I'd be interested in hearing about other
> "best
> > practices" in this respect.
> >
> > Best regards,
> > Janko
> >
> > ______________________________________________
> > R-devel at r-project.org mailing list
> > https://stat.ethz.ch/mailman/listinfo/r-devel
> >
> 
> 
> 
> --
> ____________________
> 
> Dr. Baptiste Auguié
> 
> Departamento de Química Física,
> Universidade de Vigo,
> Campus Universitario, 36310, Vigo, Spain
> 
> tel: +34 9868 18617
> http://webs.uvigo.es/coloides
> ____________________



More information about the R-devel mailing list