From hpages at fhcrc.org  Fri Apr  8 20:55:58 2011
From: hpages at fhcrc.org (=?ISO-8859-1?Q?Herv=E9_Pag=E8s?=)
Date: Fri, 08 Apr 2011 11:55:58 -0700
Subject: [Rd] question about assignment warnings for replacement methods
In-Reply-To: <4D9B5C5B.2020209@gmail.com>
References: <4D9B56AB.2020403@fhcrc.org> <4D9B5C5B.2020209@gmail.com>
Message-ID: <4D9F5A3E.7030305@fhcrc.org>

Hi Duncan, Marc,

On 11-04-05 11:15 AM, Duncan Murdoch wrote:
> On 05/04/2011 1:51 PM, Marc Carlson wrote:
>> Hi,
>>
>> I have seen several packages that with the most recent version of R are
>> giving a warning like this:
>>
>> Assignments in \usage in documentation object 'marginalData-methods':
>> marginalData(object) = value
>>
>> I assume that this is to prevent people from making assignments in their
>> usage statements (which seems completely understandable). But what
>> about the case above? This is a person who just wants to show the
>> proper usage for a replacement method. IOW they just want to write
>> something that looks like what you actually do when you use a
>> replacement method. They just want to show users how to do something
>> like this:
>>
>> replacementMethod(object)<- newValue
>>
>>
>> So is that really something that should not be allowed in a usage
>> statement?
>
> If replacementMethod was a replacement function, then
>
> replacementMethod(object)<- newValue
>
> is supposed to be fine.

Yes, 'replacementMethod(object) <- newValue' vorks indeed, but
not 'replacementMethod(object) = newValue'.

> But if it is an S3 method, it should be
>
> \method{replacementMethod}{class}(object)<- newValue
>
> and if it is an S4 method I think it should be
>
> \S4method{replacementMethod}{signature_list}(object)<- newValue

In the case reported by Marc, replacementMethod was both: a
replacement (generic) function and a replacement method. And the
man page had an alias for both. Marc replaced

   replacementMethod(object) = newValue

with

   \S4method{replacementMethod}{signature_list}(object)<- newValue

and that solved the problem. But replacing '=' with '<-' solves it too.

Shouldn't 'R CMD check' treat the 2 assignment operators the same way
since they are equivalent?

Thanks!
H.

>
> (though the manual suggests using the S3 style, I'm not sure how
> literally to take it).
>
> Duncan Murdoch
>
> ______________________________________________
> R-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel


-- 
Herv? Pag?s

Program in Computational Biology
Division of Public Health Sciences
Fred Hutchinson Cancer Research Center
1100 Fairview Ave. N, M2-B876
P.O. Box 19024
Seattle, WA 98109-1024

E-mail: hpages at fhcrc.org
Phone:  (206) 667-5791
Fax:    (206) 667-1319



[Rd] question about assignment warnings for replacement methods
=?ISO-8859-1?Q?Herv=E9_Pag=E8s?=