pub fn parse_diff_name_status(input: &str) -> Result<Vec<DiffEntry>>Available on crate feature
parse only.Expand description
Parse the output of git diff --name-status -z.
§Errors
Returns Error::ParseError if an entry is malformed.
§Example
use git_spawn::parse::{parse_diff_name_status, DiffKind};
let input = "M\0foo.txt\0A\0bar.txt\0R100\0old.rs\0new.rs\0";
let entries = parse_diff_name_status(input).unwrap();
assert_eq!(entries.len(), 3);
assert_eq!(entries[0].kind, DiffKind::Modified);
assert_eq!(entries[2].kind, DiffKind::Renamed);
assert_eq!(entries[2].similarity, Some(100));
assert_eq!(entries[2].original_path.as_deref(), Some("old.rs"));
assert_eq!(entries[2].path, "new.rs");