Lines Matching refs:matcher
51 static bool Mark(Matcher* matcher);
54 static bool Required(Matcher* matcher);
57 static bool Repeated(Matcher* matcher); // On match, returns to the mark.
83 bool Matcher::Mark(Matcher* matcher) { in Mark() argument
84 matcher->pos_ += 1u; // Advance to the next match function before marking. in Mark()
85 matcher->mark_ = matcher->pos_; in Mark()
90 bool Matcher::Required(Matcher* matcher) { in Required() argument
91 if (!(matcher->*Fn)()) { in Required()
94 matcher->pos_ += 1u; in Required()
95 ++matcher->instruction_; in Required()
100 bool Matcher::Repeated(Matcher* matcher) { in Repeated() argument
101 if (!(matcher->*Fn)()) { in Repeated()
103 matcher->pos_ += 1u; in Repeated()
106 matcher->pos_ = matcher->mark_; in Repeated()
107 ++matcher->instruction_; in Repeated()
130 Matcher matcher(code_item); in DoMatch() local
131 while (matcher.pos_ != size) { in DoMatch()
132 if (!pattern[matcher.pos_](&matcher)) { in DoMatch()