Module Private.Munged_path

Util to parse paths that are written using a munged form by git.

Example of such paths:

1. A simple path:

"a/simple/path"

2. A pair of paths, with an arrow separator

"a/simple/path => another/path"

3. (The more involved case). A pair of paths, with common parts

"a/{simple => not/so/simple}/path"

This module is able to parse all these forms and returned a typed version of it.

type t = Vcs.Num_status.Key.t =
  1. | One_file of Vcs.Path_in_repo.t
  2. | Two_files of {
    1. src : Vcs.Path_in_repo.t;
    2. dst : Vcs.Path_in_repo.t;
    }
val sexp_of_t : t -> Sexplib0.Sexp.t
val equal : t -> t -> bool
val parse_exn : string -> t