package patdiff

  1. Overview
  2. Docs
val default_context : int

Default amount of context shown around each change in the diff

The following constants were all chosen empirically.

val default_line_big_enough : int

Default cutoff for line-level semantic cleanup. Any match of default_line_big_enough or more will not be deleted, even if it's surrounded by large inserts and deletes. Raising this quantity can only decrease the number of matches, and lowering it can only increase the number of matches.

val default_word_big_enough : int

Analogous to default_line_big_enough, but for word-level refinement

val too_short_to_split : int

Governs the behavior of split_for_readability. We will only split ranges around matches of size greater than too_short_to_split. Note that this should always be at least 1, otherwise we will split on a single `Newline token. Raising this quantity will result in less ranges being split, and setting it to infinity is the same as passing in ~interleave:false.

val warn_if_no_trailing_newline_in_both_default : bool
type t = private {
  1. output : Output.t;
  2. rules : Format.Rules.t;
  3. float_tolerance : Core.Percent.t option;
  4. produce_unified_lines : bool;
  5. unrefined : bool;
  6. keep_ws : bool;
  7. split_long_lines : bool;
  8. interleave : bool;
  9. assume_text : bool;
  10. context : int;
  11. line_big_enough : int;
  12. word_big_enough : int;
  13. shallow : bool;
  14. quiet : bool;
  15. double_check : bool;
  16. mask_uniques : bool;
  17. prev_alt : string option;
  18. next_alt : string option;
  19. location_style : Format.Location_style.t;
  20. warn_if_no_trailing_newline_in_both : bool;
}
include Ppx_compare_lib.Comparable.S with type t := t
val compare : t -> t -> int
val warn_if_no_trailing_newline_in_both : t -> bool
val location_style : t -> Format.Location_style.t
val next_alt : t -> string option
val prev_alt : t -> string option
val mask_uniques : t -> bool
val double_check : t -> bool
val quiet : t -> bool
val shallow : t -> bool
val word_big_enough : t -> int
val line_big_enough : t -> int
val context : t -> int
val assume_text : t -> bool
val interleave : t -> bool
val split_long_lines : t -> bool
val keep_ws : t -> bool
val unrefined : t -> bool
val produce_unified_lines : t -> bool
val float_tolerance : t -> Core.Percent.t option
val rules : t -> Format.Rules.t
val output : t -> Output.t
module Fields : sig ... end
val sexp_of_t : t -> Sexplib0.Sexp.t
include Core.Invariant.S with type t := t
val invariant : t -> unit
val create_exn : output:Output.t -> rules:Format.Rules.t -> float_tolerance:Core.Percent.t option -> produce_unified_lines:bool -> unrefined:bool -> keep_ws:bool -> split_long_lines:bool -> interleave:bool -> assume_text:bool -> context:int -> line_big_enough:int -> word_big_enough:int -> shallow:bool -> quiet:bool -> double_check:bool -> mask_uniques:bool -> prev_alt:string option -> next_alt:string option -> location_style:Format.Location_style.t -> warn_if_no_trailing_newline_in_both:bool -> t

Raises if invariant t fails.

val override : ?output:Output.t -> ?rules:Format.Rules.t -> ?float_tolerance:Core.Percent.t option -> ?produce_unified_lines:bool -> ?unrefined:bool -> ?keep_ws:bool -> ?split_long_lines:bool -> ?interleave:bool -> ?assume_text:bool -> ?context:int -> ?line_big_enough:int -> ?word_big_enough:int -> ?shallow:bool -> ?quiet:bool -> ?double_check:bool -> ?mask_uniques:bool -> ?prev_alt:string option -> ?next_alt:string option -> ?location_style:Format.Location_style.t -> ?warn_if_no_trailing_newline_in_both:bool -> t -> t
val default : t
OCaml

Innovation. Community. Security.