Jean-Christophe BOUETTE wrote:

>>---------- Message transféré ----------
>>From: Uwe Ligges <[EMAIL PROTECTED]>
>>To: Erin Hodgess <[EMAIL PROTECTED]>
>>Date: Sun, 08 Jan 2006 15:09:06 +0100
>>Subject: Re: [R] exporting methods/classes
>>Erin Hodgess wrote:
>>
>>
>>>Dear R People:
>>>
>>>I'm still struggling with sending methods and classes as part of
>>>creating a new package.
>>>
>>>Where does the .onLoad function go?  Within R itself or in a file
>>>in one of the new package directories?
>>
>>Simply save the .onLoad function in some .R file (e.g. zzz.R) in the
>>package's ./R directory.
>>
>>
>>
>>
>>>Here are my latest efforts:
>>>
>>>
>>>Here's the last part of the woof1-Ex.Rout
>>>
>>>
>>>
>>>>library('woof1')
>>>
>>>Error in loadNamespace(package, c(which.lib.loc, lib.loc),
>>>keep.source = keep.source) :
>>>      in 'woof1' classes for export not defined: dog
>>>Error: package/namespace load failed for 'woof1'
>>>Execution halted
>>
>>So this looks like you have defined S4 classes for export in your
>>Namespace but you have no call that starts with
>>
>>setClass("dog", ......
>>
> 
> Well, it's not that easy for a newbie (like me) to track that problem.
> Using package.skeleton() (on my old R 2.1.1) puts all the function
> definitions in the ./R subdirectory, but not the call to setClass (or
> did I make something wrong?). Maybe it's one of the things that should
> be documented to make package creation easier. Of course, I know
> somebody will point me to some doc where it is stated but the fact is
> that it was not obvious.

Well, according to the documentation, package.skeleton "saves functions 
and data to appropriate places" (but not calls like setClass() and friends).

Please consider package.skeleton() only as a function that helps to set 
up the basic directory structure and required files. You have to edit 
the files afterwards, and add stuff like the mentioned calls to all 
those S4 generators.


> By the way, I'd like to thank Uwe Ligges and Duncan Murdoch for the
> helpful article in R-Help 5/2, it was really useful to me. If I manage

Nice to hear (you mean R News, though), thank you.
Although I still do not understand why it helps so much more to have 
those examples (compared to the information given in the manual).

Uwe Ligges



> to understand all the steps necessary to make an S4 namespace package
> I promise to write a "S4 Package step by step for newbies" :-)
> 
> Regards,
> Jean-Christophe Bouëtté.
> 
> 
> 
>>in the R code in your package, hence the class "dog" is undefined.
>>
>>
>>
>>>Here's the NAMESPACE
>>>importFrom(graphics,plot)
>>>exportClasses("dog")
>>>exportMethods("plot","show")
>>
>>
>>You don't export any other functions?
>>
>>
>>Uwe Ligges
>>
>>
>>
>>
>>
>>>thanks yet again,
>>>Sincerely,
>>>Erin
>>>mailto: [EMAIL PROTECTED]
>>>
>>>______________________________________________
>>>R-help@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
>>
>>
>>
>>
> 
> ______________________________________________
> R-help@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

______________________________________________
R-help@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

Reply via email to