public String getReasonForFailure() { StringBuilder buf = new StringBuilder(); if ( probe.isNonLLStarDecision() ) { buf.append("non-LL(*)"); if ( predicateVisible ) { buf.append(" && predicate visible"); } } if ( probe.analysisOverflowed() ) { buf.append("recursion overflow"); if ( predicateVisible ) { buf.append(" && predicate visible"); } } buf.append("\n"); return buf.toString(); }
public String getReasonForFailure() { StringBuilder buf = new StringBuilder(); if ( probe.isNonLLStarDecision() ) { buf.append("non-LL(*)"); if ( predicateVisible ) { buf.append(" && predicate visible"); } } if ( probe.analysisOverflowed() ) { buf.append("recursion overflow"); if ( predicateVisible ) { buf.append(" && predicate visible"); } } buf.append("\n"); return buf.toString(); }
public String getReasonForFailure() { StringBuffer buf = new StringBuffer(); if ( probe.isNonLLStarDecision() ) { buf.append("non-LL(*)"); if ( predicateVisible ) { buf.append(" && predicate visible"); } } if ( probe.analysisOverflowed() ) { buf.append("recursion overflow"); if ( predicateVisible ) { buf.append(" && predicate visible"); } } buf.append("\n"); return buf.toString(); }
public boolean canInlineDecision() { return !isCyclic() && !probe.isNonLLStarDecision() && getNumberOfStates() < CodeGenerator.MAX_ACYCLIC_DFA_STATES_INLINE; }
/** If this DFA failed to finish during construction, we might be * able to retry with k=1 but we need to know whether it will * potentially succeed. Can only succeed if there is a predicate * to resolve the issue. Don't try if k=1 already as it would * cycle forever. Timeout can retry with k=1 even if no predicate * if k!=1. */ public boolean okToRetryDFAWithK1() { boolean nonLLStarOrOverflowAndPredicateVisible = (probe.isNonLLStarDecision()||probe.analysisOverflowed()) && predicateVisible; // auto backtrack or manual sem/syn return getUserMaxLookahead()!=1 && nonLLStarOrOverflowAndPredicateVisible; }
public String getReasonForFailure() { StringBuffer buf = new StringBuffer(); if ( probe.isNonLLStarDecision() ) { buf.append("non-LL(*)"); if ( predicateVisible ) { buf.append(" && predicate visible"); } } if ( probe.analysisOverflowed() ) { buf.append("recursion overflow"); if ( predicateVisible ) { buf.append(" && predicate visible"); } } if ( analysisTimedOut() ) { if ( buf.length()>0 ) { buf.append(" && "); } buf.append("timed out (>"); buf.append(DFA.MAX_TIME_PER_DFA_CREATION); buf.append("ms)"); } buf.append("\n"); return buf.toString(); }
public boolean canInlineDecision() { return !isCyclic() && !probe.isNonLLStarDecision() && getNumberOfStates() < CodeGenerator.MAX_ACYCLIC_DFA_STATES_INLINE; }
public boolean canInlineDecision() { return !isCyclic() && !probe.isNonLLStarDecision() && getNumberOfStates() < CodeGenerator.MAX_ACYCLIC_DFA_STATES_INLINE; }
public boolean canInlineDecision() { return !isCyclic() && !probe.isNonLLStarDecision() && getNumberOfStates() < CodeGenerator.MAX_ACYCLIC_DFA_STATES_INLINE; }
/** If this DFA failed to finish during construction, we might be * able to retry with k=1 but we need to know whether it will * potentially succeed. Can only succeed if there is a predicate * to resolve the issue. Don't try if k=1 already as it would * cycle forever. Timeout can retry with k=1 even if no predicate * if k!=1. */ public boolean okToRetryDFAWithK1() { boolean nonLLStarOrOverflowAndPredicateVisible = (probe.isNonLLStarDecision()||probe.analysisOverflowed()) && predicateVisible; // auto backtrack or manual sem/syn return getUserMaxLookahead()!=1 && nonLLStarOrOverflowAndPredicateVisible; }
/** If this DFA failed to finish during construction, we might be * able to retry with k=1 but we need to know whether it will * potentially succeed. Can only succeed if there is a predicate * to resolve the issue. Don't try if k=1 already as it would * cycle forever. Timeout can retry with k=1 even if no predicate * if k!=1. */ public boolean okToRetryDFAWithK1() { boolean nonLLStarOrOverflowAndPredicateVisible = (probe.isNonLLStarDecision()||probe.analysisOverflowed()) && predicateVisible; // auto backtrack or manual sem/syn return getUserMaxLookahead()!=1 && nonLLStarOrOverflowAndPredicateVisible; }
/** If this DFA failed to finish during construction, we might be * able to retry with k=1 but we need to know whether it will * potentially succeed. Can only succeed if there is a predicate * to resolve the issue. Don't try if k=1 already as it would * cycle forever. Timeout can retry with k=1 even if no predicate * if k!=1. */ public boolean okToRetryDFAWithK1() { boolean nonLLStarOrOverflowAndPredicateVisible = (probe.isNonLLStarDecision()||probe.analysisOverflowed()) && predicateVisible; // auto backtrack or manual sem/syn return getUserMaxLookahead()!=1 && (analysisTimedOut() || nonLLStarOrOverflowAndPredicateVisible); }
lookaheadDFA.probe.isNonLLStarDecision() || lookaheadDFA.probe.analysisOverflowed(); if ( failed && lookaheadDFA.okToRetryDFAWithK1() ) {
lookaheadDFA.probe.isNonLLStarDecision() || lookaheadDFA.probe.analysisOverflowed(); if ( failed && lookaheadDFA.okToRetryDFAWithK1() ) {
lookaheadDFA.probe.isNonLLStarDecision() || lookaheadDFA.probe.analysisOverflowed(); if ( failed && lookaheadDFA.okToRetryDFAWithK1() ) {
lookaheadDFA.probe.isNonLLStarDecision() || lookaheadDFA.probe.analysisOverflowed(); if ( failed && lookaheadDFA.okToRetryDFAWithK1() ) {