Home | History | Annotate | Download | only in yarr

Lines Matching full:term

484             PatternTerm& term = currentAlternative->lastTerm();
485 ASSERT((term.type == PatternTerm::TypeParenthesesSubpattern) || (term.type == PatternTerm::TypeParentheticalAssertion));
487 if ((term.type == PatternTerm::TypeParenthesesSubpattern) && term.invertOrCapture && (subpatternId == term.subpatternId)) {
512 PatternTerm copyTerm(PatternTerm& term)
514 if ((term.type != PatternTerm::TypeParenthesesSubpattern) && (term.type != PatternTerm::TypeParentheticalAssertion))
515 return PatternTerm(term);
517 PatternTerm termCopy = term;
532 PatternTerm& term = m_alternative->lastTerm();
533 ASSERT(term.type > PatternTerm::TypeAssertionWordBoundary);
534 ASSERT((term.quantityCount == 1) && (term.quantityType == QuantifierFixedCount));
541 if (term.type == PatternTerm::TypeParentheticalAssertion) {
548 term.quantify(max, greedy ? QuantifierGreedy : QuantifierNonGreedy);
550 term.quantify(min, QuantifierFixedCount);
552 term.quantify(min, QuantifierFixedCount);
553 m_alternative->m_terms.append(copyTerm(term));
554 // NOTE: this term is interesting from an analysis perspective, in that it can be ignored.....
585 PatternTerm& term = alternative->m_terms[i];
587 switch (term.type) {
591 term.inputPosition = currentInputPosition;
595 term.inputPosition = currentInputPosition;
596 term.frameLocation = currentCallFrameSize;
605 term.inputPosition = currentInputPosition;
606 if (term.quantityType != QuantifierFixedCount) {
607 term.frameLocation = currentCallFrameSize;
611 currentInputPosition += term.quantityCount;
615 term.inputPosition = currentInputPosition;
616 if (term.quantityType != QuantifierFixedCount) {
617 term.frameLocation = currentCallFrameSize;
621 currentInputPosition += term.quantityCount;
626 term.frameLocation = currentCallFrameSize;
627 if ((term.quantityCount == 1) && !term.parentheses.isCopy) {
628 if (term.quantityType == QuantifierFixedCount) {
629 currentCallFrameSize = setupDisjunctionOffsets(term.parentheses.disjunction, currentCallFrameSize, currentInputPosition);
630 currentInputPosition += term.parentheses.disjunction->m_minimumSize;
633 currentCallFrameSize = setupDisjunctionOffsets(term.parentheses.disjunction, currentCallFrameSize, currentInputPosition);
635 term.inputPosition = currentInputPosition;
637 term.inputPosition = currentInputPosition;
638 setupDisjunctionOffsets(term.parentheses.disjunction, 0, currentInputPosition);
646 term.inputPosition = currentInputPosition;
647 term.frameLocation = currentCallFrameSize;
648 currentCallFrameSize = setupDisjunctionOffsets(term.parentheses.disjunction, currentCallFrameSize + RegexStackSpaceForBackTrackInfoParentheticalAssertion, currentInputPosition);