R: Return the closure environment of a function

fn_env {rlang} | R Documentation

## Return the closure environment of a function

### Description

Closure environments define the scope of functions (see `env()`). When a function call is evaluated, R creates an evaluation frame (see `ctxt_stack()`) that inherits from the closure environment. This makes all objects defined in the closure environment and all its parents available to code executed within the function.

### Usage

    fn_env(fn)

    fn_env(x) <- value

### Arguments

`fn, x` | A function.
`value` | A new closure environment for the function.

### Details

`fn_env()` returns the closure environment of `fn`. There is also an assignment method to set a new closure environment.

### Examples

    env <- child_env("base")
    fn <- with_env(env, function() NULL)
    identical(fn_env(fn), env)

    other_env <- child_env("base")
    fn_env(fn) <- other_env
    identical(fn_env(fn), other_env)

[Package rlang version 0.4.7 Index]