Lines Matching defs:dfa

14 #[cfg(feature = "perf-dfa")]
15 use crate::dfa;
81 dfa: Program,
306 dfa: Program::new(),
322 let mut dfa = Compiler::new()
324 .dfa(true)
329 .dfa(true)
337 dfa.prefixes = nfa.prefixes.clone();
338 dfa.dfa_size_limit = self.options.dfa_size_limit;
344 dfa,
447 #[cfg(feature = "perf-dfa")]
450 dfa::Result::Match(end) => Some(end),
451 dfa::Result::NoMatch(_) => None,
452 dfa::Result::Quit => self.shortest_nfa(text, start),
455 #[cfg(feature = "perf-dfa")]
457 match dfa::Fsm::reverse(
464 dfa::Result::Match(_) => Some(text.len()),
465 dfa::Result::NoMatch(_) => None,
466 dfa::Result::Quit => self.shortest_nfa(text, start),
469 #[cfg(all(feature = "perf-dfa", feature = "perf-literal"))]
472 dfa::Result::Match(e) => Some(e),
473 dfa::Result::NoMatch(_) => None,
474 dfa::Result::Quit => self.shortest_nfa(text, start),
499 #[cfg(feature = "perf-dfa")]
502 dfa::Result::Match(_) => true,
503 dfa::Result::NoMatch(_) => false,
504 dfa::Result::Quit => self.match_nfa(text, start),
507 #[cfg(feature = "perf-dfa")]
509 match dfa::Fsm::reverse(
516 dfa::Result::Match(_) => true,
517 dfa::Result::NoMatch(_) => false,
518 dfa::Result::Quit => self.match_nfa(text, start),
521 #[cfg(all(feature = "perf-dfa", feature = "perf-literal"))]
524 dfa::Result::Match(_) => true,
525 dfa::Result::NoMatch(_) => false,
526 dfa::Result::Quit => self.match_nfa(text, start),
544 #[cfg(feature = "perf-dfa")]
546 dfa::Result::Match((s, e)) => Some((s, e)),
547 dfa::Result::NoMatch(_) => None,
548 dfa::Result::Quit => {
552 #[cfg(feature = "perf-dfa")]
555 dfa::Result::Match((s, e)) => Some((s, e)),
556 dfa::Result::NoMatch(_) => None,
557 dfa::Result::Quit => {
562 #[cfg(all(feature = "perf-dfa", feature = "perf-literal"))]
565 dfa::Result::Match((s, e)) => Some((s, e)),
566 dfa::Result::NoMatch(_) => None,
567 dfa::Result::Quit => {
574 #[cfg(feature = "perf-dfa")]
628 #[cfg(feature = "perf-dfa")]
634 dfa::Result::Match((s, e)) => self.captures_nfa_type(
641 dfa::Result::NoMatch(_) => None,
642 dfa::Result::Quit => {
648 #[cfg(feature = "perf-dfa")]
651 dfa::Result::Match((s, e)) => self.captures_nfa_type(
658 dfa::Result::NoMatch(_) => None,
659 dfa::Result::Quit => self.captures_nfa(slots, text, start),
662 #[cfg(all(feature = "perf-dfa", feature = "perf-literal"))]
665 dfa::Result::Match((s, e)) => self.captures_nfa_type(
672 dfa::Result::NoMatch(_) => None,
673 dfa::Result::Quit => self.captures_nfa(slots, text, start),
680 #[cfg(feature = "perf-dfa")]
732 #[cfg(feature = "perf-dfa")]
738 ) -> dfa::Result<(usize, usize)> {
739 use crate::dfa::Result::*;
740 let end = match dfa::Fsm::forward(
741 &self.ro.dfa,
753 match dfa::Fsm::reverse(
772 #[cfg(feature = "perf-dfa")]
778 ) -> dfa::Result<(usize, usize)> {
779 use crate::dfa::Result::*;
780 match dfa::Fsm::reverse(
794 #[cfg(feature = "perf-dfa")]
796 fn shortest_dfa(&self, text: &[u8], start: usize) -> dfa::Result<usize> {
797 dfa::Fsm::forward(&self.ro.dfa, self.cache.value(), true, text, start)
802 #[cfg(all(feature = "perf-dfa", feature = "perf-literal"))]
808 ) -> dfa::Result<usize> {
828 #[cfg(all(feature = "perf-dfa", feature = "perf-literal"))]
834 ) -> Option<dfa::Result<(usize, usize)>> {
835 use crate::dfa::Result::*;
848 match dfa::Fsm::reverse(
873 #[cfg(all(feature = "perf-dfa", feature = "perf-literal"))]
879 ) -> dfa::Result<(usize, usize)> {
880 use crate::dfa::Result::*;
894 match dfa::Fsm::forward(
895 &self.ro.dfa,
912 #[cfg(feature = "perf-dfa")]
937 #[cfg(feature = "perf-dfa")]
996 #[cfg(feature = "perf-dfa")]
1167 #[cfg(feature = "perf-dfa")]
1169 match dfa::Fsm::forward_many(
1170 &self.ro.dfa,
1176 dfa::Result::Match(_) => true,
1177 dfa::Result::NoMatch(_) => false,
1178 dfa::Result::Quit => self.exec_nfa(
1190 #[cfg(all(feature = "perf-dfa", feature = "perf-literal"))]
1192 match dfa::Fsm::forward_many(
1193 &self.ro.dfa,
1199 dfa::Result::Match(_) => true,
1200 dfa::Result::NoMatch(_) => false,
1201 dfa::Result::Quit => self.exec_nfa(
1396 #[cfg(not(feature = "perf-dfa"))]
1401 #[cfg(feature = "perf-dfa")]
1403 if !dfa::can_exec(&ro.dfa) {
1444 #[cfg(all(feature = "perf-dfa", feature = "perf-literal"))]
1450 lcs_len >= 3 && lcs_len > self.dfa.prefixes.lcp().char_len()
1468 #[cfg(feature = "perf-dfa")]
1471 #[cfg(feature = "perf-dfa")]
1474 #[cfg(all(feature = "perf-dfa", feature = "perf-literal"))]
1477 #[cfg(feature = "perf-dfa")]
1527 #[cfg(feature = "perf-dfa")]
1528 pub dfa: dfa::Cache,
1529 #[cfg(feature = "perf-dfa")]
1530 pub dfa_reverse: dfa::Cache,
1538 #[cfg(feature = "perf-dfa")]
1539 dfa: dfa::Cache::new(&ro.dfa),
1540 #[cfg(feature = "perf-dfa")]
1541 dfa_reverse: dfa::Cache::new(&ro.dfa_reverse),