R/is_assignment.R

Defines functions is_assignment

Documented in is_assignment

#' Check if an expression is an assignment
#'
#' @description
#' `r lifecycle::badge("experimental")`
#'
#' Takes an expression that has been cast to a list and returns true if using
#' left-assignment with either `<-` or `=`
#'
#' @param parse_tree An unevaluated expression as a list
#' @return A logical
#' @keywords internal
is_assignment <- function(parse_tree) {
  any(
    vapply(c("<-", "="),
           function(x) {
             as.name(x) == parse_tree[[1]]
           },
           FUN.VALUE = logical(1)
    )
  )
}

Try the rtern package in your browser

Any scripts or data that you put into this service are public.

rtern documentation built on Jan. 25, 2022, 1:06 a.m.