Diffing
module type Defs = sig ... end
type change_kind =
| Deletion
| Insertion
| Modification
| Preservation
val prefix : (int * change_kind) Format_doc.printer
val style : change_kind -> Misc.Style.style list
type (!'left, !'right, !'eq, !'diff) change =
| Delete of 'left
| Insert of 'right
| Keep of 'left * 'right * 'eq
| Change of 'left * 'right * 'diff
val classify : ('a, 'b, 'c, 'd) change -> change_kind
module Define (D : Defs) : sig ... end