env_has: Does an environment have or see bindings?

View source: R/env-binding.R

env_hasR Documentation

Does an environment have or see bindings?

Description

env_has() is a vectorised predicate that queries whether an environment owns bindings personally (with inherit set to FALSE, the default), or sees them in its own environment or in any of its parents (with inherit = TRUE).

Usage

env_has(env = caller_env(), nms, inherit = FALSE)

Arguments

env

An environment.

nms

A character vector of binding names for which to check existence.

inherit

Whether to look for bindings in the parent environments.

Value

A named logical vector as long as nms.

Examples

parent <- child_env(NULL, foo = "foo")
env <- child_env(parent, bar = "bar")

# env does not own `foo` but sees it in its parent environment:
env_has(env, "foo")
env_has(env, "foo", inherit = TRUE)

hadley/rlang documentation built on Nov. 1, 2024, 4 p.m.