restrictR: Composable Runtime Contracts

Build reusable validators from small building blocks using the base pipe operator. Define runtime contracts once with restrict() and enforce them anywhere in code. Validators compose naturally, support dependent rules via formulas, and produce clear, path-aware error messages. No domain-specific language, no operator overloading, just idiomatic R.

Version: 0.3.0
Depends: R (≥ 4.1.0)
Suggests: knitr, rmarkdown, svglite, testthat (≥ 3.0.0)
Published: 2026-10-05
DOI: 10.32614/CRAN.package.restrictR
Author: Gilles Colling ORCID iD [aut, cre, cph]
Maintainer: Gilles Colling <gilles.colling051 at gmail.com>
BugReports: https://github.com/gcol33/restrictR/issues
License: MIT + file LICENSE
URL: https://gillescolling.com/restrictR/, https://github.com/gcol33/restrictR
NeedsCompilation: no
Language: en-US
Citation: restrictR citation info
Materials: README, NEWS
CRAN checks: restrictR results

Documentation:

Reference manual: restrictR.html , restrictR.pdf
Vignettes: Runtime Contracts for R Functions (source, R code)

Downloads:

Package source: restrictR_0.3.0.tar.gz
Windows binaries: r-devel: restrictR_0.1.0.zip, r-release: restrictR_0.1.0.zip, r-oldrel: restrictR_0.3.0.zip
macOS binaries: r-release (arm64): restrictR_0.3.0.tgz, r-oldrel (arm64): restrictR_0.3.0.tgz, r-release (x86_64): restrictR_0.3.0.tgz, r-oldrel (x86_64): restrictR_0.3.0.tgz
Old sources: restrictR archive

Linking:

Please use the canonical form https://CRAN.R-project.org/package=restrictR to link to this page.

mirror server hosted at Truenetwork, Russian Federation.