set_attrs

0th

Percentile

Add attributes to an object

set_attrs() adds, changes, or zaps attributes of objects. Pass a single unnamed NULL as argument to zap all attributes. For uncopyable types, use mut_attrs().

Usage
set_attrs(.x, ...)

mut_attrs(.x, ...)

Arguments
.x

An object to decorate with attributes.

...

A list of named attributes. These have explicit splicing semantics. Pass a single unnamed NULL to zap all attributes from .x.

Details

Unlike structure(), these setters have no special handling of internal attributes names like .Dim, .Dimnames or .Names.

Value

set_attrs() returns a modified shallow copy of .x. mut_attrs() invisibly returns the original .x modified in place.

Aliases
  • set_attrs
  • mut_attrs
Examples
# NOT RUN {
set_attrs(letters, names = 1:26, class = "my_chr")

# Splice a list of attributes:
attrs <- list(attr = "attr", names = 1:26, class = "my_chr")
obj <- set_attrs(letters, splice(attrs))
obj

# Zap attributes by passing a single unnamed NULL argument:
set_attrs(obj, NULL)
set_attrs(obj, !!! list(NULL))

# Note that set_attrs() never modifies objects in place:
obj

# For uncopyable types, mut_attrs() lets you modify in place:
env <- env()
mut_attrs(env, foo = "bar")
env
# }
Documentation reproduced from package rlang, version 0.1.6, License: GPL-3

Community examples

Looks like there are no examples yet.