bru_used_vars: Extract basic variable names from expression

View source: R/used.R

bru_used_varsR Documentation

Extract basic variable names from expression

Description

Extracts the variable names and function names from an R expression by traversing the expression structure. Internal helper function for new_bru_used() and bru_used().

Usage

bru_used_vars(x, result = new_bru_used_vars())

new_bru_used_vars(
  x = list(vars = character(0), funs = character(0), objects = list())
)

## Default S3 method:
bru_used_vars(x, result = new_bru_used_vars())

## S3 method for class ''<-''
bru_used_vars(x, result = new_bru_used_vars())

## S3 method for class 'call'
bru_used_vars(x, result = new_bru_used_vars())

## S3 method for class 'expression'
bru_used_vars(x, result = new_bru_used_vars())

## S3 method for class 'quosure'
bru_used_vars(x, result = new_bru_used_vars())

## S3 method for class 'formula'
bru_used_vars(x, result = new_bru_used_vars())

## S3 method for class 'bru_used_vars'
format(x, ...)

## S3 method for class 'bru_used_vars'
print(x, ...)

Arguments

x

A formula, expression, or other supported class. For the format and print methods, a bru_used_vars object.

result

A bru_used_vars object; a list with elements vars, funs, and objects, by default provided by new_bru_used_vars()

Value

A bru_used_vars object with elements

vars

character; names of directly accessed variables.

funs

character; names of functions called.

objects

named list; one character vector per container objects with variables names accessed via $, [[, or [. If the access is ambiguous, the container object name is stored in vars.

Functions

  • new_bru_used_vars(): Create a bru_used_vars object.

See Also

Other bru_used: bru_used(), bru_used_update(), new_bru_used()

Examples

bru_used_vars(~.)
bru_used_vars(~ a + b + c_latent + d_eval())

# Ignores the LHS:
bru_used_vars(a ~ b)

# Detects variables accessed via pronouns and objects,
# as well as function calls:
bru_used_vars(~ cos(x$z) + y_eval() + .latent$"q")


inlabru documentation built on July 28, 2026, 9:07 a.m.