Skip to contents

Vector and scalar checkers for integers, nonnegative integers, and natural numbers (positive integers). Each function throws an error via cli::cli_abort when the check fails; otherwise it returns invisible NULL.

Usage

check_integer(x, alt_null = FALSE)

check_integer_scalar(x, alt_null = FALSE)

check_nonnegative_integer(x, alt_null = FALSE)

check_nonnegative_integer_scalar(x, alt_null = FALSE)

check_natural(x, alt_null = FALSE)

check_natural_scalar(x, alt_null = FALSE)

Arguments

x

Function argument that is being checked.

alt_null

Logical. If TRUE, NULL is treated as valid input.

Value

If the argument satisfies the corresponding check, returns invisible NULL. Otherwise, the function throws an error.

Functions

  • check_integer(x, alt_null = FALSE) - vector of integers

  • check_integer_scalar(x, alt_null = FALSE) - single integer

  • check_nonnegative_integer(x, alt_null = FALSE) - vector of nonnegative integers (0, 1, 2, …)

  • check_nonnegative_integer_scalar(x, alt_null = FALSE) - single nonnegative integer

  • check_natural(x, alt_null = FALSE) - vector of natural numbers (1, 2, 3, …)

  • check_natural_scalar(x, alt_null = FALSE) - single natural number

Examples

if (FALSE) { # \dontrun{
# integer vectors
check_integer(c(-2, 0, 3))
check_integer(c(1, 2.5, 3))
check_integer("text")
check_integer(NULL, alt_null = TRUE)

# integer scalar
check_integer_scalar(5)
check_integer_scalar(1.2)
check_integer_scalar(c(1, 2))
check_integer_scalar(NULL, alt_null = TRUE)

# nonnegative integer vectors
check_nonnegative_integer(c(0, 1, 2, 3))
check_nonnegative_integer(c(-1, 0, 1))
check_nonnegative_integer(c(1.5, 2))
check_nonnegative_integer(NULL, alt_null = TRUE)

# nonnegative integer scalar
check_nonnegative_integer_scalar(0)
check_nonnegative_integer_scalar(7)
check_nonnegative_integer_scalar(-3)
check_nonnegative_integer_scalar(NULL, alt_null = TRUE)

# natural number vectors
check_natural(c(1, 2, 3, 4))
check_natural(c(1, 2.5, 3))
check_natural(c(0, 1, 2))
check_natural(c(-1, 2, 3))
check_natural("text")
check_natural(NULL, alt_null = TRUE)

# natural number scalar
check_natural_scalar(5)
check_natural_scalar(1)
check_natural_scalar(0)
check_natural_scalar(-3)
check_natural_scalar(1.5)
check_natural_scalar("text")
check_natural_scalar(c(1, 2))
check_natural_scalar(NULL, alt_null = TRUE)
} # }