Home | History | Annotate | Download | only in wrec

Lines Matching full:quantifier

39 const char* Parser::QuantifierOutOfOrder = "numbers out of order in {} quantifier";
74 void flush(const Quantifier& quantifier)
81 switch (quantifier.type) {
82 case Quantifier::None:
83 case Quantifier::Error:
87 case Quantifier::Greedy: {
89 m_generator.generateGreedyQuantifier(m_failures, functor, quantifier.min, quantifier.max);
93 case Quantifier::NonGreedy: {
95 m_generator.generateNonGreedyQuantifier(m_failures, functor, quantifier.min, quantifier.max);
109 ALWAYS_INLINE Quantifier Parser::consumeGreedyQuantifier()
114 return Quantifier(Quantifier::Greedy, 0, 1);
118 return Quantifier(Quantifier::Greedy, 0);
122 return Quantifier(Quantifier::Greedy, 1);
134 return Quantifier();
142 max = peekIsDigit() ? consumeNumber() : Quantifier::Infinity;
147 return Quantifier();
153 return Quantifier(Quantifier::Error);
156 return Quantifier(Quantifier::Greedy, min, max);
160 return Quantifier(); // No quantifier.
164 Quantifier Parser::consumeQuantifier()
166 Quantifier q = consumeGreedyQuantifier();
168 if ((q.type == Quantifier::Greedy) && (peek() == '?')) {
170 q.type = Quantifier::NonGreedy;
178 Quantifier q = consumeQuantifier();
181 case Quantifier::None: {
186 case Quantifier::Greedy: {
192 case Quantifier::NonGreedy: {
198 case Quantifier::Error:
207 Quantifier q = consumeQuantifier();
210 case Quantifier::None: {
215 case Quantifier::Greedy:
216 case Quantifier::NonGreedy:
220 case Quantifier::Error:
244 Quantifier quantifier = consumeQuantifier();
245 if (quantifier.type != Quantifier::None && quantifier.min == 0) {
260 Quantifier quantifier = consumeQuantifier();
261 if (quantifier.type != Quantifier::None && quantifier.min == 0) {
521 Quantifier q = consumeQuantifier();
523 if (q.type == Quantifier::None) {
528 if (q.type == Quantifier::Error)