[Rd] ":::" operator doesn't work with data object Ecdat:::Crime
@purd|e@@ @end|ng |rom gm@||@com
Tue Mar 17 09:22:43 CET 2020
(Macavity, Macavity, ..., and when you reach the scene of crime
Macavity's not there...)
I suspect your data objects are like Macavity, they're not there.
I found this in the R Internals 1.17.
Lazy-load databases are loaded into the exports for a package, but not
into the namespace environment itself. Thus they are visible when the
package is attached, and also via the :: operator. This was a
deliberate design decision...
The manual is not explicit about the converse, but implies (I think)
that the converse is true.
(i.e. Non-lazyloaded datasets are not supposed to available via this mechanism).
I didn't check your examples.
Are your examples lazyloaded?
And are they any different from other similar packages/datasets?
> A different but related issue is that "plm::Crime" says "Error:
> 'Crime' is not an exported object from 'namespace:plm'", even though
> "library(plm); data(Crime); Crime" works. I would naively think a user
> should be able to compare "Crime" objects documented in different
> packages using the "::" and ":::" operators, even if a package
> maintainer chooses not to "export" data objects.
> What do you think?
More information about the R-devel