chk
is an R package for developers to check
user-supplied function arguments.
It is designed to be simple, customizable and fast.
chk
provides simple commonly used checks as
(chk_
functions) which can be combined together for more
complex checking.
library(chk)
<- "a"
y
chk_string(y)
chk_flag(y)
#> Error:
#> ! `y` must be a flag (TRUE or FALSE).
<- data.frame(x = 1:2)
data chk_range(nrow(data), c(3, 8))
#> Error:
#> ! `nrow(data)` must be between 3 and 8, not 2.
Or used inside functions to test user-provided arguments.
<- function(x) {
my_fun chk_flag(x)
x
}my_fun(TRUE)
#> [1] TRUE
my_fun(NA)
#> Error in `my_fun()`:
#> ! `x` must be a flag (TRUE or FALSE).
Error messages follow the tidyverse style guide
while the errors themselves are rlang errors of
class chk_error
.
For more information see the Get Started vignette.
To install the release version from CRAN.
install.packages("chk")
The website for the release version is at https://poissonconsulting.github.io/chk/.
To install the development version from GitHub
# install.packages("remotes")
::install_github("poissonconsulting/chk") remotes
or from r-universe.
install.packages("chk", repos = c("https://poissonconsulting.r-universe.dev", "https://cloud.r-project.org"))
Please report any issues.
Pull requests are always welcome.
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.