public String joinPredicateOperands(SemanticContext.Operator op, String separator) { StringBuilder buf = new StringBuilder(); for (SemanticContext operand : op.getOperands()) { if (buf.length() > 0) { buf.append(separator); } buf.append(getSemanticContextDisplayString(operand)); } return buf.toString(); }
public String joinPredicateOperands(SemanticContext.Operator op, String separator) { StringBuilder buf = new StringBuilder(); for (SemanticContext operand : op.getOperands()) { if (buf.length() > 0) { buf.append(separator); } buf.append(getSemanticContextDisplayString(operand)); } return buf.toString(); }
public String joinPredicateOperands(SemanticContext.Operator op, String separator) { StringBuilder buf = new StringBuilder(); for (SemanticContext operand : op.getOperands()) { if (buf.length() > 0) { buf.append(separator); } buf.append(getSemanticContextDisplayString(operand)); } return buf.toString(); }
public String joinPredicateOperands(SemanticContext.Operator op, String separator) { StringBuilder buf = new StringBuilder(); for (SemanticContext operand : op.getOperands()) { if (buf.length() > 0) { buf.append(separator); } buf.append(getSemanticContextDisplayString(operand)); } return buf.toString(); }
public String joinPredicateOperands(SemanticContext.Operator op, String separator) { StringBuilder buf = new StringBuilder(); for (SemanticContext operand : op.getOperands()) { if (buf.length() > 0) { buf.append(separator); } buf.append(getSemanticContextDisplayString(operand)); } return buf.toString(); }
public static String getSemanticContextDisplayString(PredicateEvalInfo pred, PreviewState previewState, SemanticContext semctx, int alt, boolean result) { Grammar g = previewState.g; String semanticContextDisplayString = g.getSemanticContextDisplayString(semctx); if ( semctx instanceof SemanticContext.PrecedencePredicate ) { int ruleIndex = previewState.parsingResult.parser.getATN().decisionToState.get(pred.decision).ruleIndex; Rule rule = g.getRule(ruleIndex); int precedence = ((SemanticContext.PrecedencePredicate) semctx).precedence; // precedence = n - originalAlt + 1, So: int originalAlt = rule.getOriginalNumberOfAlts()-precedence+1; alt = originalAlt; } return semanticContextDisplayString+" => alt "+alt+" is "+result; }