Function levenshtein_diff::edit::apply_edits [−][src]
pub fn apply_edits<T: Clone + PartialEq>(
source: &[T],
edits: &[Edit<T>]
) -> Vec<T>
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);