For a package pkg, pkg::name
returns the value of the
exported variable name
in namespace pkg
, whereas
pkg:::name
returns the value of the internal variable
name
. The package namespace will be loaded if it was not
loaded before the call, but the package will not be attached to the
search path.
Specifying a variable or package that does not exist is an error.
Note that pkg::name
does not access the objects in the
environment package:pkg
(which does not exist until the
package's namespace is attached): the latter may contain objects not
exported from the namespace. It can access datasets made available by
lazy-loading.