Examples for 'rlang::new_quosure'


Create a quosure from components

Aliases: new_quosure as_quosure is_quosure

Keywords:

### ** Examples

# `new_quosure()` creates a quosure from its components. These are
# equivalent:
new_quosure(quote(foo), current_env())
<quosure>
expr: ^foo
env:  0x55ccfe05d9f8
quo(foo)
<quosure>
expr: ^foo
env:  0x55ccfe05d9f8
# `new_quosure()` always rewraps its input into a new quosure, even
# if the input is itself a quosure:
new_quosure(quo(foo))
<quosure>
expr: ^<quosure>
env:  0x55ccfe05d9f8
# This is unlike `as_quosure()` which preserves its input if it's
# already a quosure:
as_quosure(quo(foo))
<quosure>
expr: ^foo
env:  0x55ccfe05d9f8
# `as_quosure()` uses the supplied environment with naked expressions:
env <- env(var = "thing")
as_quosure(quote(var), env)
<quosure>
expr: ^var
env:  0x55ccfe96d478
# If the expression already carries an environment, this
# environment is preserved. This is the case for formulas and
# quosures:
as_quosure(~foo, env)
<quosure>
expr: ^foo
env:  0x55ccfe05d9f8
as_quosure(~foo)
<quosure>
expr: ^foo
env:  0x55ccfe05d9f8
# An environment must be supplied when the input is a naked
# expression:
try(
  as_quosure(quote(var))
)
Warning: `as_quosure()` requires an explicit environment as of rlang 0.3.0. Please
supply `env`.
This warning is displayed once every 8 hours.
<quosure>
expr: ^var
env:  0x55ccfe05d9f8

[Package rlang version 1.1.4 Index]