1 2 3 4 5 6 7 8 9 10 11 12 13
pub mod clangd; pub mod skim; mod util; pub trait FuzzyMatcher { /// fuzzy match choice with pattern, and return the score & matched indices of characters fn fuzzy_indices(&self, choice: &str, pattern: &str) -> Option<(i64, Vec<usize>)>; /// fuzzy match choice with pattern, and return the score of matching fn fuzzy_match(&self, choice: &str, pattern: &str) -> Option<i64> { self.fuzzy_indices(choice, pattern).map(|(score, _)| score) } }