Dunolint.Rule
type ('predicate, 'invariant) t = [
| `enforce of 'invariant
| `return
return stops the evaluation of the rule without trying to enforce any invariant.
return
| `cond of ('predicate Blang.t * ('predicate, 'invariant) t) list
]
val equal : ('p -> 'p -> bool) -> ('i -> 'i -> bool) -> ('p, 'i) t -> ('p, 'i) t -> bool
val eval : ('predicate, 'invariant) t -> f:('predicate -> Trilang.t) -> [ `enforce of 'invariant | `return ]
module Stable : sig ... end