Package 'bindr'

Title: Parametrized Active Bindings
Description: Provides a simple interface for creating active bindings where the bound function accepts additional arguments.
Authors: Kirill Müller [aut, cre] , RStudio [cph, fnd]
Maintainer: Kirill Müller <[email protected]>
License: MIT + file LICENSE
Version: 0.1.2.9005
Built: 2024-11-27 01:22:41 UTC
Source: https://github.com/krlmlr/bindr

Help Index


bindr: Parametrized Active Bindings

Description

Provides a simple interface for creating active bindings where the bound function accepts additional arguments.

Details

See create_env() for creating an environment populated with active bindings, and populate_env() for populating an existing environment.

Author(s)

Maintainer: Kirill Müller [email protected] (ORCID)

Other contributors:

  • RStudio [copyright holder, funder]

See Also

Useful links:


Create or populate an environment with parametrized active bindings

Description

Leverages makeActiveBinding() by allowing parametrized functions that take the name of the binding and an arbitrary number of additional arguments.

Usage

create_env(names, fun, ..., .envir = parent.frame(), .enclos = parent.frame())

populate_env(env, names, fun, ..., .envir = parent.frame())

Arguments

names

A name, or a list of names, or a character vector; in the latter case the names are mangled if they are not representable in the native encoding

fun

A function with at least one argument, which will be called to compute the value of a binding. The function will be called with the binding name as first argument (unnamed), and ... as additional arguments

...

Additional arguments to fun

.envir

The environment in which fun will be executed, important if fun calls other functions that are not globally visible

.enclos

The enclosing environment (parent.env) for the newly created environment

env

An environment

Examples

env <- create_env(letters, paste0, "-lowercase")
env$a
env$c
env$Z
populate_env(env, LETTERS, paste0, "-uppercase")
env$a
env$Z