1个不稳定版本
0.1.1 | 2022年2月25日 |
---|---|
0.1.0 |
|
#1520 在 Rust模式
8KB
121 行
iter-diff
迭代器之间的差异
IterDiff
特质可以用来遍历两个迭代器之间的差异。每个元素的差异通过Diff
枚举来枚举。枚举的变体表示需要向左侧迭代器应用哪些更改才能达到右侧迭代器。
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);