From simon.urbanek at r-project.org  Fri Sep  7 20:30:20 2012
From: simon.urbanek at r-project.org (Simon Urbanek)
Date: Fri, 7 Sep 2012 14:30:20 -0400
Subject: [Rd] Need to tell R CMD check that a function qr.R is not a
	method
In-Reply-To: <504A3969.4050607@gmail.com>
References: <0CAEE2B1235DF643B0F5E1EAE1487B5309472AFD@023-CH1MPN1-043.023d.mgd.msft.net>
	<12FFEEBD-0124-49ED-82DB-8E8C8B241D14@r-project.org>
	<504A3969.4050607@gmail.com>
Message-ID: <01DDD529-8C55-49C0-A761-0AC06F57380A@r-project.org>

On Sep 7, 2012, at 2:14 PM, Duncan Murdoch <murdoch.duncan at gmail.com> wrote:

> On 07/09/2012 2:00 PM, Simon Urbanek wrote:
>> On Sep 7, 2012, at 12:59 PM, "Warnes, Gregory" <gregory.warnes at novartis.com> wrote:
>> 
>> >
>> > On 9/7/12 12:55 PM, "Uwe Ligges" <ligges at statistik.tu-dortmund.de> wrote:
>> >
>> >> On 07.09.2012 17:05, Tim Hesterberg wrote:
>> >>> When creating a package, I would like a way to tell R that
>> >>> a function with a period in its name is not a method.
>> >>
>> >> You can't. There are few exception for historic names (S definitions)
>> >> hardcoded in R.
>> >>
>> >
>> > Would it be possible to add a \notmethod{} decorator to allow package maintainers to avoid these messages?
>> >
>> 
>> I would strongly support any solution since it has bitten me as well...
> 
> An alternative would be to say that if it's not declared to be a method in the NAMESPACE file, it's not one.

Yes, that's what I was expecting in the first place ...

(BTW: \function{} may be more natural than \notmethod{})


>  I think that would actually be more work though, since it would probably break a lot of packages...
> 

I wonder - those would already get a warning that they don't declare S3 methods properly so it may not be as surprising. Moreover it won't actually break anything at this point, just silence some warnings (unless we get to distinguish S3 methods from functions in S3 dispatch, but I last time I was told we are not anywhere close to a solution on that one ...).



[Rd] Need to tell R CMD check that a function qr.R is not a method
Simon Urbanek