[Rd] RFC: Declaring "foo.bar" as nonS3method() ?!
murdoch.duncan at gmail.com
Fri Jun 12 13:12:41 CEST 2015
On 12/06/2015 6:41 AM, John Fox wrote:
> And my non-cross-posted cross-posting:
> "Dear Martin,
> Thank you for addressing this issue. Introducing a nonS3method() directive in NAMESPACE seems a reasonable solution. It could replace export() for functions with "."s in their names.
I think these are separate questions: all.effects() could be exported
or not, and independently could be an S3 method or not.
> On Fri, 12 Jun 2015 10:12:07 +0200
> Martin Maechler <maechler at stat.math.ethz.ch> wrote:
>> This is a topic ' "apparent S3 methods" note in R CMD check '
>> from R-package-devel
>> which is relevant to here because some of us have been thinking
>> about extending R because of the issue.
>> John Fox, maintainer of the 'effects' package has enquired about
>> the following output from 'R CMD check effects'
>> >> * checking S3 generic/method consistency ... NOTE
>> >> Found the following apparent S3 methods exported but not registered:
>> >> all.effects
>> and added
>> >> The offending function, all.effects(), is deprecated in favour of
>> >> allEffects(), but I'd rather not get rid of it for backwards compatibility.
>> >> Is there any way to suppress the note without removing all.effects()?
>> and I had agreed that this was a "False Positive" in this case.
>> and then
>> > Now I agree .. and have e-talked about this with another R core
>> > member .. that it would be desirable for the package author to
>> > effectively declare the fact that such a function is not an S3
>> > method even though it "looks like it" at least if looked from far.
>> > So, ideally, you could have something like
>> > nonS3method("all.effects")
>> > somewhere in your package source ( in NAMESPACE or R/*.R )
>> > which would tell the package-checking code -- but *ALSO* all the other S3
>> > method code that all.effects should be treated as a regular R
>> > function.
>> > I would very much like such a feature in R, and for that reason,
>> > I'm cross posting this (as one of the famous exceptions that
>> > accompany real-life rules!!) to R-devel.
>> and actually I did *not* cross post, but have now moved the
>> relevant part of the thread to R-devel.
>> Martin Maechler,
>> ETH Zurich
>> R-devel at r-project.org mailing list
> John Fox, Professor
> McMaster University
> Hamilton, Ontario, Canada
> R-devel at r-project.org mailing list
More information about the R-devel