[Rd] new.env does not recognize parents from subclasses of "environment"
spinuvit.list at gmail.com
Thu Oct 21 18:00:01 CEST 2010
Here is an infinite recursion error which occurs only with S4
setClass("myenv", contains = "environment")
env <- new("myenv")
env[[".me"]] <- env at .xData
#Error: evaluation nested too deeply: infinite recursion / options(expressions=)?
With basic types it works as expected:
env1 <- new.env()
env1[[".me"]] <- env1
May be this is related to active bindings that you mentioned, but I am still
reporting it here.
> Thanks for the report. Should now be fixed in r-devel and 2.12 patched (rev 53383).
> Please do report any cases where a subclass of environment doesn't work. There are some known cases in locking and
> active binding, that will be fixed in due course.
> The workaround for any such problem is usually as.environment().
> On 10/20/10 3:17 AM, Vitaly S. wrote:
>> Dear Developers,
>> A lot has been changed in the R12.0 with respect to behavior of "environment"
>> subclasses. Many thanks for that.
>> One small irregularity, though; new.env does not allow the parent to be from S4
>>> setClass("myenv", contains="environment")
>>  "myenv"
>> Error in new.env(parent = new("myenv")) : 'enclos' must be an environment
>> I wonder if this is a "planed" behavior.
>> The use of .xData slot obviously works:
>> <environment: 063bb9e8>
>> R-devel at r-project.org mailing list
More information about the R-devel