Lines Matching refs:exprs
119 pub fn compile(mut self, exprs: &[Hir]) -> result::Result<Program, Error> { in compile()
120 debug_assert!(!exprs.is_empty()); in compile()
121 self.num_exprs = exprs.len(); in compile()
122 if exprs.len() == 1 { in compile()
123 self.compile_one(&exprs[0]) in compile()
125 self.compile_many(exprs) in compile()
156 exprs: &[Hir], in compile_many()
158 debug_assert!(exprs.len() > 1); in compile_many()
161 exprs.iter().all(|e| e.is_anchored_start()); in compile_many()
163 exprs.iter().all(|e| e.is_anchored_end()); in compile_many()
174 for (i, expr) in exprs[0..exprs.len() - 1].iter().enumerate() { in compile_many()
184 let i = exprs.len() - 1; in compile_many()
186 self.c_capture(0, &exprs[i])?.unwrap_or(self.next_inst()); in compile_many()
492 fn c_concat<'a, I>(&mut self, exprs: I) -> ResultOrEmpty in c_concat()
496 let mut exprs = exprs.into_iter(); in c_concat() localVariable
498 match exprs.next() { in c_concat()
507 for e in exprs { in c_concat()
516 fn c_alternate(&mut self, exprs: &[Hir]) -> ResultOrEmpty { in c_alternate()
518 exprs.len() >= 2, in c_alternate()
532 for e in &exprs[0..exprs.len() - 1] { in c_alternate()
549 if let Some(Patch { hole, entry }) = self.c(&exprs[exprs.len() - 1])? { in c_alternate()