Function levenshtein_diff::edit::apply_edits
source · [−]Expand description
Applies a sequence of edits on the source sequence, and returns a vector representing the target sequence.
Arguments
source- The source sequenceedits- A reference to a vector of edits of the same type as elements of source
Examples
use levenshtein_diff as levenshtein;
let s1 = "FLOWER";
let expected_s2 = "FOLLOWER";
let (_, matrix) = levenshtein::distance(s1.as_bytes(), expected_s2.as_bytes());
let edits = levenshtein::generate_edits(s1.as_bytes(), expected_s2.as_bytes(), &matrix).unwrap();
let target = levenshtein::apply_edits(s1.as_bytes(), &edits);
let s2 = match std::str::from_utf8(&target) {
Ok(v) => v,
Err(_) => panic!("Not a valid UTF-8 sequence!"),
};
assert_eq!(s2, expected_s2);