Module Patdiff_lib.Patdiff_core
module Format : module type of sig ... end
module Output : module type of sig ... end
val default_context : int
val default_line_big_enough : int
val default_word_big_enough : int
val diff : context:int -> line_big_enough:int -> keep_ws:bool -> prev:string array -> next:string array -> string Import.Patience_diff.Hunk.t list
diff ~context ~keep_ws ~prev ~next
usesPatience_diff.String
to get a list of hunks describing the comparison betweenprev
andnext
.
val remove_ws : string -> string
val refine : rules:Format.Rules.t -> produce_unified_lines:bool -> output:Output.t -> keep_ws:bool -> split_long_lines:bool -> interleave:bool -> word_big_enough:int -> string Import.Patience_diff.Hunk.t list -> string Import.Patience_diff.Hunk.t list
refine hunks
maps eachRange.Replace (prev, next)
inhunks
to a diff ofprev
againstnext
.
val explode : string array -> keep_ws:bool -> [ `Newline of int * string option | `Word of string ] array
val print : prev_file:string -> next_file:string -> rules:Format.Rules.t -> output:Output.t -> location_style:Format.Location_style.t -> string Import.Patience_diff.Hunk.t list -> unit
Print a hunk list, usually from
diff
orrefine
val output_to_string : ?print_global_header:bool -> file_names:(string * string) -> rules:Format.Rules.t -> output:Output.t -> location_style:Format.Location_style.t -> string Import.Patience_diff.Hunk.t list -> string
Output a hunk list, usually from
diff
orrefine
, to a string
val iter_ansi : rules:Format.Rules.t -> f_hunk_break:((int * int) -> (int * int) -> unit) -> f_line:(string -> unit) -> string Import.Patience_diff.Hunk.t list -> unit
Iter along the lines of the diff and the breaks between hunks. Offers more flexibility regarding what the caller wants to do with the lines
val patdiff : ?context:int -> ?keep_ws:bool -> ?rules:Format.Rules.t -> ?output:Output.t -> ?produce_unified_lines:bool -> ?split_long_lines:bool -> ?print_global_header:bool -> ?location_style:Format.Location_style.t -> ?interleave:bool -> ?line_big_enough:int -> ?word_big_enough:int -> prev:diff_input -> next:diff_input -> unit -> string
Runs the equivalent of the command line version of patdiff on two given contents
prev
andnext
. UsesPatience_diff.String
.