Skip to main content

diff_ops

Function diff_ops 

Source
pub fn diff_ops<T: Eq + Hash>(a: &[T], b: &[T], max_cost: usize) -> Edit
Expand description

Diffs two sequences. max_cost caps one Myers run (see the module docs); it is clamped to 1..=2048.

use ashlar_diff::{diff_ops, Op};

let edit = diff_ops(&["a", "b", "c"], &["a", "c", "d"], 1024);
assert_eq!(edit.cost(), 2);
assert_eq!(edit.ops.first(), Some(&Op::Equal { old: 0, new: 0, len: 1 }));