Lines Matching refs:predicates

78  * that saves a lot of time but doesn't work in presence of predicates. The set
79 * of visible predicates from the ATN start state changes depending on the
135 * LL simulation deals with predicates differently. SLL collects predicates as
138 * ATN simulation whereas, if we had evaluated predicates on-the-fly during
143 * predicates and return the sole semantically valid alternative. If there is
145 * we throw an exception. Alternatives without predicates act like they have
146 * true predicates. The simple way to think about it is to strip away all
147 * alternatives with false predicates and choose the minimum alternative that
154 * During full LL ATN simulation, closure always evaluates predicates and
439 * - collecting predicates and adding semantic context to DFA accept states
445 * - reporting insufficient predicates
525 if ($D->predicates !== null) {
536 $conflictingAlts = $this->evalSemanticContextMany($D->predicates, $outerContext, true);
580 if ($D->predicates === null) {
586 $alts = $this->evalSemanticContextMany($D->predicates, $outerContext, true);
709 if ($D->predicates !== null) {
722 // We need to test all predicates, even in DFA states that uniquely predict alternative.
734 $dfaState->predicates = $this->getPredicatePredictions($altsToCollectPredsFrom, $altToPred);
742 throw new \RuntimeException('Unexpected null alternatives to collect predicates');
857 /* We do not check predicates here because we have checked them on-the-fly
1113 * of the proper prec argument. Without pruning, these predicates are normal
1114 * predicates evaluated when we reach conflict state (or unique prediction).
1115 * As we cannot evaluate these predicates out of context, the resulting
1134 * 1+2+3, the loop entry sees both predicates and the loop exit also sees
1135 * both predicates by falling off the edge of e. This is because we have
1139 * cannot evaluate those predicates because we have fallen off the edge
1143 * Because we have special information, that these are precedence predicates,
1159 * an invoking e call, indicated by dipsIntoOuterContext. As the predicates
1161 * start state. We do this by stripping both predicates and choosing to
1172 * It's also the case that the filter evaluates precedence predicates and
1205 * - Evaluate the precedence predicates for each configuration using
1421 * developers identify and correct logic errors in semantic predicates.
1490 * prediction, which is where predicates need to evaluate.
1523 * includes pairs with null predicates.
1584 * TODO: If we are doing predicates, there is no point in pursuing
1842 * Do we need to evaluate predicates ever in closure for this case?
1844 * No. Predicates, including precedence predicates, are only
1852 * StarLoopEntryState. We do not have to evaluate predicates
1862 * Without predicates, loop entry and exit paths are ambiguous
2091 /* In full context mode, we can evaluate predicates on-the-fly
2093 * the config sets. It also obviates the need to test predicates
2151 // In full context mode, we can evaluate predicates on-the-fly
2153 // the config sets. It also obviates the need to test predicates