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 =
| One_file of Vcs.Path_in_repo.t
| Two_files of {
src : Vcs.Path_in_repo.t;
dst : Vcs.Path_in_repo.t;
}
val sexp_of_t : t -> Sexplib0.Sexp.t
val parse_exn : string -> t