R/utils_ternary.R

#' @title Ternary operator
#' @param a lhs
#' @param b rhs
#' @export
"%:%" <- function(a, b) {
  x <- strsplit(paste(deparse(substitute(a)), col = "\n"), "%?%", fixed = T)[[1]]
  if (length(x) != 2) stop("Invalid syntax for ternary operator.")
  if (eval(parse(text = x[1]))) eval(parse(text = x[2])) else b
}
adamleejohnson/R-ajtools documentation built on April 4, 2022, 7:24 a.m.