[Rd] Class generator functions for reference classes
John Chambers
jmc at r-project.org
Wed Oct 31 22:34:41 CET 2012
The values returned by setRefClass(), getRefClass() now (rev. 61058)
have class "refObjectGenerator" as they do in 2.15.2, for the sake of
back compatibility.
This is only a reversion of the class name. The behavior of such
objects as generator functions with additional reference methods should
remain as in rev. 61035.
John
On 10/30/12 2:09 PM, John Chambers wrote:
> A heads up for those using Rcpp and perhaps other packages related to
> reference classes.
>
> The changes in 61035 cause a problem for classes defined with a slot
> using the return value of setRefClass(), notably for Rcpp. The name of
> that class changed.
>
> Rather than introduce back-incompatibility, I will rename a couple of
> classes so the class name of the return value remains the same. (It's
> not as natural a naming scheme as what is in place, but not the first
> time back-compatibility has won out over preferred design.)
>
> It will be a day or two before I can get to this, so don't panic if your
> package does not install from the current r-devel until then.
>
> John
>
> On 10/27/12 2:07 PM, John Chambers wrote:
>> As of rev. 61035 in r-devel, setRefClass() now returns a generator
>> function, as setClass() has done since 2.15.0.
>>
>> The convenient style is now:
>> mEdit <- setRefClass("mEdit",......)
>> xx <- mEdit(data = xMat)
>>
>> instead of
>> xx <- mEdit$new(data = xMat)
>>
>> The returned object still has fields and methods accessible as before.
>>
>> See the "Value" and "Reference Class Generators" sections of
>> ?ReferenceClasses for details.
>>
>> Thanks to Romain François for suggesting this.
>>
>> John
>>
>> ______________________________________________
>> R-devel at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-devel
>
> ______________________________________________
> R-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
More information about the R-devel
mailing list