Lines Matching refs:exprs
117 pub fn compile(mut self, exprs: &[Hir]) -> result::Result<Program, Error> { in compile()
118 debug_assert!(!exprs.is_empty()); in compile()
119 self.num_exprs = exprs.len(); in compile()
120 if exprs.len() == 1 { in compile()
121 self.compile_one(&exprs[0]) in compile()
123 self.compile_many(exprs) in compile()
154 exprs: &[Hir], in compile_many()
156 debug_assert!(exprs.len() > 1); in compile_many()
159 exprs.iter().all(|e| e.is_anchored_start()); in compile_many()
161 exprs.iter().all(|e| e.is_anchored_end()); in compile_many()
172 for (i, expr) in exprs[0..exprs.len() - 1].iter().enumerate() { in compile_many()
182 let i = exprs.len() - 1; in compile_many()
184 self.c_capture(0, &exprs[i])?.unwrap_or(self.next_inst()); in compile_many()
477 fn c_concat<'a, I>(&mut self, exprs: I) -> ResultOrEmpty in c_concat()
481 let mut exprs = exprs.into_iter(); in c_concat() localVariable
483 match exprs.next() { in c_concat()
492 for e in exprs { in c_concat()
501 fn c_alternate(&mut self, exprs: &[Hir]) -> ResultOrEmpty { in c_alternate()
503 exprs.len() >= 2, in c_alternate()
517 for e in &exprs[0..exprs.len() - 1] { in c_alternate()
534 if let Some(Patch { hole, entry }) = self.c(&exprs[exprs.len() - 1])? { in c_alternate()