package cascade

  1. Overview
  2. Docs
On This Page
  1. Utilities
CSS generation and manipulation library for OCaml

Install

dune-project
 Dependency

Authors

Maintainers

Sources

cascade-1.2.1.tbz
sha256=1cf5079b3797cd6e70fbced8dc2631074f357d36fcdea8597c7ba17ac2903f6e
sha512=43f5e6a3986f8f43ce948b8f1d59f6f00e1047f5707c5449b6323b683d2ecd51a0fb34793aad9c48904a67b0f7268d7379ab9baf29917c25a962064bfa3ab694

doc/cascade.diff/Cascade_diff/String_diff/index.html

Module Cascade_diff.String_diffSource

String difference analysis and formatting.

Sourceval default_max_width : int

default_max_width is the default maximum width for formatted output (60 characters).

Sourcetype config = {
  1. max_width : int;
    (*

    Maximum display width.

    *)
  2. short_threshold : int;
    (*

    Threshold below which strings are shown inline.

    *)
  3. show_caret : bool;
    (*

    Whether to display position indicators.

    *)
  4. indent : int;
    (*

    Left margin for position indicators.

    *)
}

Configuration for formatting.

Sourcetype t = {
  1. position : int;
    (*

    Character position of first difference.

    *)
  2. line_expected : int;
    (*

    Line number in expected string.

    *)
  3. column_expected : int;
    (*

    Column in expected string.

    *)
  4. line_actual : int;
    (*

    Line number in actual string.

    *)
  5. column_actual : int;
    (*

    Column in actual string.

    *)
  6. context_before : (string * string) list;
    (*

    Lines before difference.

    *)
  7. diff_lines : string * string;
    (*

    Lines containing the difference.

    *)
  8. context_after : (string * string) list;
    (*

    Lines after difference.

    *)
}

The type for string differences with context.

Sourceval diff : ?context_size:int -> expected:string -> string -> t option

diff ?context_size ~expected ~actual analyzes the difference between two strings. Returns None if strings are equal, otherwise returns detailed difference information with surrounding context lines. Default context_size is 3.

Sourceval pp : ?config:config -> ?expected_label:string -> ?actual_label:string -> Buffer.t -> t -> unit

pp ?config ?expected_label ?actual_label buf t pretty-prints a string diff in unified diff format with adaptive line formatting. Default labels are "Expected" and "Actual".

Utilities

Sourceval first_diff_pos : string -> string -> int option

first_diff_pos s1 s2 is the position of the first differing character, or None if the strings are equal.

Sourceval truncate_middle : int -> string -> string

truncate_middle max_len s truncates s to at most max_len characters, preserving both the beginning and end with ellipsis in the middle if truncation occurs.