This package is young;
the intent is to provide basic assertions to ensure data
integrity.
\emph{N.B. The behavior of this package changed in version 1.0.0---%
\ref{_assert_} now properly fails on non-match,
not match.}
The \ref{_assert_} template generates a~generic assertion using the
provided predicates.
If the predicates provided to the assertion fail (yields $\bot$),
the system immediately terminates.\footnote{
Beacuse the system stops processing once a terminating classification
yields~$\top$,
only one assertion will ever match,
even if others would match if execution were to continue.}
\ref{_assert_} implements assertions by genearting two classifications---%
one to perform the actual assertion,
and a terminating classification to ensure that the assertion
yields~$\top$.
-assert-
Assertion
-nassert-
_nassert
There is currently one standard assertion---\ref{_fail-on-empty_}.
\ref{_fail-on-empty_} terminates if \ref{_fail-on-empty_/@name@}
is zero,
subject to \ref{_fail-on-empty_/@when@},
\ref{_fail-on-empty_/@class@}, and any other provided predicates.
The name of this assertion is likely to change in the future,
but a~template will be added in its place providing deprecation notices.
is empty