…lines 1–68 unchanged (68 lines)
69
70 pub fn run<C>(&self, query: &str, item_pool: Arc<DeferDrop<ItemPool>>, callback: C) -> MatcherControl
71 where
72 C: Fn(Arc<SpinLock<Vec<MatchedItem>>>) + Send + 'static,
73 {
74 let matcher_engine = self.engine_factory.create_engine_with_case(query, self.case_matching);
75 debug!("engine: {}", matcher_engine);
76 let stopped = Arc::new(AtomicBool::new(false));
77 let stopped_clone = stopped.clone();
78 let processed = Arc::new(AtomicUsize::new(0));
79 let processed_clone = processed.clone();
80 let matched = Arc::new(AtomicUsize::new(0));
81 let matched_clone = matched.clone();
…lines 82–135 unchanged (54 lines)