chk

Lifecycle: stable R build status Codecov test coverage License: MIT Tinyverse status CRAN status CRAN downloads

chk is an R package for developers to check user-supplied function arguments.

It is designed to be simple, customizable and fast.

Installation

To install the latest release from CRAN

install.packages("chk")

To install the latest development version from GitHub

# install.packages("remotes")
remotes::install_github("poissonconsulting/chk")

Demonstration

chk provides simple commonly used checks as (chk_ functions) which can be combined together for more complex checking.

library(chk)

y <- "a"

chk_string(y)
chk_flag(y)
#> Error: `y` must be a flag (TRUE or FALSE).

chkor(chk_flag(y), chk_number(y))
#> Error: At least one of the following conditions must be met:
#> * `y` must be a flag (TRUE or FALSE).
#> * `y` must be a number (non-missing numeric scalar).

data <- data.frame(x = 1:2)
chk_range(nrow(data), c(3, 8))
#> Error: `nrow(data)` must be between 3 and 8, not 2.

Error messages follow the tidyverse style guide while the errors themselves are rlang errors of subclass chk_error.

Information

For more information see the Get Started vignette.

Inspiration

Contribution

Please report any issues.

Pull requests are always welcome.

Code of Conduct

Please note that the chk project is released with a Contributor Code of Conduct. By contributing to this project, you agree to abide by its terms.