#' Does the requested input exist in the environment?
#'
#' @note [`exists()`][base::exists] only supports `character(1)`, so we are
#' exporting [isExisting()] as a convenience function to check multiple
#' variables in a single call.
#'
#' @name check-vector-isExisting
#' @note Updated 2023-10-02.
#'
#' @inherit check
#' @inheritParams AcidRoxygen::params
#'
#' @param x `character`.
#' Variable names to check in `environment`.
#'
#' @seealso `assertive.code::is_existing()`.
#'
#' @examples
#' a <- 1L
#' b <- 2L
#'
#' ## TRUE ====
#' isExisting(c("a", "b"))
#' allAreNonExisting(c("x", "y"))
#'
#' ## FALSE ====
#' isExisting(c("x", "y"))
NULL
## Vector ======================================================================
#' @describeIn check-vector-isExisting Vectorized.
#' @export
## Updated 2023-10-02.
isExisting <-
    function(x,
             envir = parent.frame(),
             inherits = FALSE) {
        ok <- hasLength(x)
        if (!isTRUE(ok)) {
            return(ok)
        }
        ok <- isCharacter(x)
        if (!isTRUE(ok)) {
            ko <- rep(x = FALSE, times = length(x))
            return(setCause(ko, false = "not character"))
        }
        ok <- bapply(
            X = x,
            FUN = exists,
            USE.NAMES = FALSE,
            envir = envir,
            inherits = inherits
        )
        setCause(ok, false = "non-existing")
    }
#' @describeIn check-vector-isExisting Vectorized.
#' @export
## Updated 2023-09-29.
isNonExisting <-
    function(x,
             envir = parent.frame(),
             inherits = FALSE) {
        ok <- !isExisting(
            x = x,
            envir = envir,
            inherits = inherits
        )
        setCause(ok, false = "existing")
    }
## Scalar ======================================================================
#' @describeIn check-vector-isExisting Scalar.
#' @export
## Updated 2023-09-29.
allAreExisting <-
    function(x,
             envir = parent.frame(),
             inherits = FALSE) {
        ok <- isExisting(
            x = x,
            envir = envir,
            inherits = inherits
        )
        if (!all(ok)) {
            return(falseFromVector(ok))
        }
        TRUE
    }
#' @describeIn check-vector-isExisting Scalar.
#' @export
## Updated 2023-09-29.
allAreNonExisting <-
    function(x,
             envir = parent.frame(),
             inherits = FALSE) {
        ok <- isNonExisting(
            x = x,
            envir = envir,
            inherits = inherits
        )
        if (!all(ok)) {
            return(falseFromVector(ok))
        }
        TRUE
    }
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.