Crates.io | iter-diff |
lib.rs | iter-diff |
version | 0.1.1 |
source | src |
created_at | 2022-02-25 22:37:53.947123 |
updated_at | 2022-02-25 22:46:29.916087 |
description | Differences between iterators |
homepage | https://github.com/ureeves/iter-diff |
repository | https://github.com/ureeves/iter-diff |
max_upload_size | |
id | 539688 |
size | 21,373 |
The IterDiff
trait can be used to iterate through the differences between
two iterators. The differences between each element are enumerated by Diff
.
The variants of the enum express the changes one would need to make to the
left-hand iterator in order to attain the right-hand iterator.
use iter_diff::prelude::*;
let a = [0, 1, 2, 3];
let b = [0, 2, 2];
let diffs: Vec<_> = a.iter_diff(b).collect();
assert_eq!(diffs.len(), 4);
assert_eq!(diffs[0], Diff::Keep);
assert_eq!(diffs[1], Diff::Change(2));
assert_eq!(diffs[2], Diff::Keep);
assert_eq!(diffs[3], Diff::Remove);