ocaml-base-compiler

Official release 4.14.0
Legend:
Library
Module
Module type
Parameter
Class
Class type
Library ocamlcommon
Module Diffing
module type Defs = sig ... end

The core types of a diffing implementation

type change_kind =
| Deletion
| Insertion
| Modification
| Preservation

The kind of changes which is used to share printing and styling across implementation

val prefix : Format.formatter -> (int * change_kind) -> unit
val style : change_kind -> Misc.Color.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 : ( _, _, _, _ ) change -> change_kind
module Define (D : Defs) : sig ... end

Define(Defs) creates the diffing types from the types defined in Defs and the functors that need to be instantatied with the diffing algorithm parameters