sig
type rule =
Implies_not of Hygiene.pattern * Hygiene.pattern
| Not of Hygiene.pattern
and pattern = Hygiene.suffix
and suffix = string
type penalty = Warn | Fail
type law = {
law_name : string;
law_rules : Hygiene.rule list;
law_penalty : Hygiene.penalty;
}
val check :
?sanitize:string ->
Hygiene.law list -> bool Slurp.entry -> (Hygiene.law * string list) list
end