ADT members follow.
ADT members follow. Other than Simple, these are all recursively-defined.
Factory constructor to build a claim.
Factory constructor to build a claim.
Unlike its one-argument cousin (the macro), this method does _not_ do any fancy analysis. It simply pairs a Boolean value with a String describing that expression.
Claims returns by this method are always Simple claims.
Transform a Boolean expression into a labeled Prop.
Transform a Boolean expression into a labeled Prop.
The contents of the expression will be analyzed, to provide more informative messages if the expression fails.
Currently this macro may evaluate sub-expressions multiple times. This means that this macro is NOT SAFE to use with impure code, since it may change evaluation order or cause multiple evaluations.
While claimant.Claim(...)
is not directly configurable in any
meaningful sense, it's relatively easy to define a new
claimant.System and implement your own macro.
This method is Claimant's raison d'etre.
This method is called by the apply macro.
This method is called by the apply macro.
In turn, it calls sys.deconstruct
, and then converts the result
of that (a Claim
) into a Prop
.
This System describes how we label expressions.