@uml
Evaluate the precedence predicates for the context and reduce the result.
@param parser The parser instance.
@param parserCallStack
@return The simplified semantic context after precedence predicates are
evaluated, which will be one of the following values.
<ul>
<li>{@link #NONE}: if the predicate simplifies to {@code true} after
precedence predicates are evaluated.</li>
<li>{@code null}: if the predicate simplifies to {@code false} after
precedence predicates are evaluated.</li>
<li>{@code this}: if the semantic context is not changed as a result of
precedence predicate evaluation.</li>
<li>A non-{@code null} {@link SemanticContext}: the new simplified
semantic context after precedence predicates are evaluated.</li>
</ul>
@uml Evaluate the precedence predicates for the context and reduce the result.
@param parser The parser instance. @param parserCallStack @return The simplified semantic context after precedence predicates are evaluated, which will be one of the following values. <ul> <li>{@link #NONE}: if the predicate simplifies to {@code true} after precedence predicates are evaluated.</li> <li>{@code null}: if the predicate simplifies to {@code false} after precedence predicates are evaluated.</li> <li>{@code this}: if the semantic context is not changed as a result of precedence predicate evaluation.</li> <li>A non-{@code null} {@link SemanticContext}: the new simplified semantic context after precedence predicates are evaluated.</li> </ul>