Namespaces are the environment where all the functions of a package live. The parent environments of namespaces are the imports environments, which contain all the functions imported from other packages.

ns_env(x = caller_env())

ns_imports_env(x = caller_env())

ns_env_name(x = caller_env())


  • For ns_env(), the name of a package or an environment as a string.

    • An environment (the current environment by default).

    • A function.

    In the latter two cases, the environment ancestry is searched for a namespace with base::topenv(). If the environment doesn't inherit from a namespace, this is an error.


A namespace environment.

Life cycle

These functions are experimental and may not belong to the rlang package. Expect API changes.

See also