rlang v0.0.0.9000


Monthly downloads



by Hadley Wickham

Tools for Language Objects and Evaluation

A toolbox for working with calls, unevaluated code, and anything related to evaluation in R.



Build Status Coverage Status

The rlang package provides tools to work with expressions and calls in R. It is a fork of lazyeval that is larger in scope than just non-standard evaluation.


Install the development version from github with:

# install.packages("devtools")
devtools::install_github("hadley/rlang", build_vignettes = TRUE)

Functions in rlang

Name Description
as_name Coerce an object to a name or call.
as_function Coerce to function.
along Helper to create vectors with matching length.
as_quoted_f Coerce quoted expressions to quoted formula.
as_env Coerce to an environment.
abort Signal an error, warning, or message.
arg_expr Find the expression associated with an argument
arg_capture Capture an expression and evaluation environment.
arg_inspect Inspect an argument
arg_missing Generate or handle a missing argument
call_inspect Inspect a call.
call_new Create a call by "hand"
call_fn_name Extract function name of a call
call_fn Extract function from a call
cnd_new Create a condition object.
call_modify Modify the arguments of a call.
ast_ Display a call (or expression) as a tree.
call_standardise Standardise a call against formal arguments
bare-type-predicates Bare type predicates
call_args Extract arguments from a call
env_bury Bury bindings and define objects in new scope.
env_caller Get the environment of the caller frame.
dots_inspect Inspect dots
env_assign Assign objects to an environment.
env_assign_lazily Assign a promise to an environment.
cnd_signal Signal a condition.
env_namespace Get the namespace of a package.
env_clone Clone an environment.
env_scoped Scope environments
env_empty Get the empty environment.
env<- Assignment operator for environments.
env Get an environment.
is_condition Is object a condition?
frame_position Find the position or distance of a frame on the evaluation stack.
frame_dots Extract dots
f_list Build a named list from the LHS of formulas
is_dot_symbol Is object a ..n symbol?
f_rhs Get/set formula components.
f_new Create a formula object by "hand".
f_text Turn RHS of formula into a string/label.
is_formula Is object a formula?
is_frame Is object a frame?
fn_new Create a function by "hand"
is_function Is object a function?
fn_fmls Extract arguments from a function
names2 Get names of a vector.
modify Modify a vector.
is_lang Is an object a language object?
new-vectors Create new vectors.
op-colon-equals Quoting assignment operator.
restarting Create a restarting handler.
return_from Jump to or from a frame.
rst_list Restarts utilities.
rst_abort Jump to the abort restart.
with_attributes Add attributes to an object.
type-predicates Type predicates
fn_env Return the closure environment of a function.
f_unwrap Unwrap a formula
invoke Invoke a function with a list of arguments.
is_call Is object a call?
is_stack Is object a stack?
is_named Is object named?
parse_expr Parse R code.
op-null-default Default value for NULL.
env_has Does an environment have or see bindings?
env_get Get an object from an environment.
with_restarts Establish a restart point on the stack.
stack Call stack information
stack_trim Trim top call layers from the evaluation stack.
env_set Set an environment.
env_unbind Remove bindings from an environment.
op-get-attr Infix attribute accessor.
op-na-default Replace missing values.
exiting Create an exiting or in place handler.
interp Interpolate a formula
has_length How long is an object?
f_eval Evaluate a formula
is_env Is object an environment?
is_empty Is object an empty vector or NULL?
prepend Prepend a vector.
splice Splice objects and lists of objects into a list
set_names Set names of a vector.
prim_name Name of a primitive function
is_true Is object identical to TRUE or FALSE?
with_env Evaluate an expression within a given environment.
scalar-type-predicates Scalar type predicates
rst_muffle Jump to a muffling restart.
missing Missing values.
with_handlers Establish handlers on the stack.
data_source Evaluate a formula
f_quote Interpolate a quoted expression.
expr_eval Evaluate an expression in an environment.
expr_label Turn an expression to a label.
tidy_capture Capture an expression and evaluation environment.
tidy_eval_env Create a tidy evaluation environment.
tidy_quote_expr Untidy quotation of an expression.
tidy_quote Tidy quotation of an expression.
tidy_eval Evaluate a formula
tidy_interp Process unquote operators in a captured expression.
empty_env Get the empty environment.
env_assign_promise Assign a promise to an environment.
caller_env Get the environment of the caller frame.
as_fquote Coerce quoted expressions to quoted formula.
new_f Create a formula object by "hand".
new_fn Create a function by "hand"
ns_env Get the namespace of a package.
new_cnd Create a condition object.
new_call Create a call by "hand"
scoped_env Scope environments
as_tidy_quote Coerce expressions to a tidy formula quote.
tidy_dots Capture dots.
op-definition Definition operator.
new_tidy_quote Create a tidy quote by hand.
new_formula Create a formula object by "hand".
is_integerish Is a vector integer-like?
has_name Does an object have an element with this name?
No Results!

Last month downloads


License GPL-3
LazyData true
VignetteBuilder knitr
RoxygenNote 6.0.1

Include our badge in your README