namespace: Module namespace handling

namespaceR Documentation

Module namespace handling

Description

make_namespace creates a new module namespace.

Usage

make_namespace(info)

is_namespace(env)

namespace_info(ns, which, default = NULL)

namespace_info(ns, which) <- value

mod_topenv(env = parent.frame())

is_mod_topenv(env)

Arguments

info

the module info.

env

an environment that may be a module namespace.

ns

the module namespace environment.

which

the key (as a length 1 character string) of the info to get/set.

default

default value to use if the key is not set.

value

the value to assign to the specified key.

Details

The namespace contains a module’s content. This schema is very much like R package organisation. A good resource for this is: <http://obeautifulcode.com/R/How-R-Searches-And-Finds-Stuff/>

Value

make_namespace returns the newly created module namespace for the module described by info.

Note

Module namespaces aren’t actual R package namespaces. This is intentional, since R makes strong assumptions about package namespaces that are violated here. In particular, such namespaces would have to be registered in R’s internal namespace registry, and their (de)serialisation is handled by R code which assumes that they belong to actual packges that can be loaded via 'loadNamespace'.


box documentation built on May 29, 2024, 5:55 a.m.

Related to namespace in box...