org.antlr.analysis
Class LL1DFA

java.lang.Object
  extended by org.antlr.analysis.DFA
      extended by org.antlr.analysis.LL1DFA

public class LL1DFA
extends DFA

A special DFA that is exactly LL(1) or LL(1) with backtracking mode predicates to resolve edge set collisions.


Field Summary
 
Fields inherited from class org.antlr.analysis.DFA
accept, altToAcceptState, conversionStartTime, cyclic, decisionNFAStartState, decisionNumber, description, edgeTransitionClass, edgeTransitionClassMap, eof, eot, generator, hasPredicateBlockedByAction, max, max_k, MAX_STATE_TRANSITIONS_FOR_TABLE, MAX_TIME_PER_DFA_CREATION, min, nAlts, nfa, nfaConverter, numberOfStates, predicateVisible, probe, REACHABLE_BUSY, REACHABLE_NO, REACHABLE_UNKNOWN, REACHABLE_YES, recursiveAltSet, reduced, special, specialStates, specialStateSTs, startState, stateCounter, states, transition, transitionEdgeTables, uniqueCompressedSpecialStateNum, uniqueStates, unreachableAlts, user_k
 
Constructor Summary
LL1DFA(int decisionNumber, NFAState decisionStartState, LookaheadSet[] altLook)
          From list of lookahead sets (one per alt in decision), create an LL(1) DFA.
LL1DFA(int decisionNumber, NFAState decisionStartState, MultiMap<IntervalSet,java.lang.Integer> edgeMap)
          From a set of edgeset->list-of-alts mappings, create a DFA that uses syn preds for all |list-of-alts|>1.
 
Method Summary
protected  Label getLabelForSet(IntervalSet edgeSet)
           
protected  SemanticContext.Predicate getSynPredForAlt(NFAState decisionStartState, int alt)
           
 
Methods inherited from class org.antlr.analysis.DFA
addState, analysisTimedOut, canInlineDecision, createEOTAndEOFTables, createMinMaxTables, createSpecialTable, createStateTables, createTransitionTableEntryForState, doesStateReachAcceptState, findAllGatedSynPredsUsedInDFAAcceptStates, getAcceptState, getAutoBacktrackMode, getDecisionASTNode, getDecisionNumber, getDescription, getJavaCompressedAccept, getJavaCompressedEOF, getJavaCompressedEOT, getJavaCompressedMax, getJavaCompressedMin, getJavaCompressedSpecial, getJavaCompressedTransition, getMaxLookaheadDepth, getMaxStateNumber, getNFADecisionStartState, getNumberOfAlts, getNumberOfStates, getReasonForFailure, getRunLengthEncoding, getState, getUniqueStates, getUnreachableAlts, getUserMaxLookahead, initAltRelatedInfo, isCyclic, isGreedy, isReduced, isTokensRuleDecision, newState, okToRetryDFAWithK1, predict, removeState, resetStateNumbersToBeContiguous, setAcceptState, setState, setUserMaxLookahead, toString, verify
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

LL1DFA

public LL1DFA(int decisionNumber,
              NFAState decisionStartState,
              LookaheadSet[] altLook)
From list of lookahead sets (one per alt in decision), create an LL(1) DFA. One edge per set. s0-{alt1}->:o=>1 | \ | -{alt2}->:o=>2 | ...


LL1DFA

public LL1DFA(int decisionNumber,
              NFAState decisionStartState,
              MultiMap<IntervalSet,java.lang.Integer> edgeMap)
From a set of edgeset->list-of-alts mappings, create a DFA that uses syn preds for all |list-of-alts|>1.

Method Detail

getLabelForSet

protected Label getLabelForSet(IntervalSet edgeSet)

getSynPredForAlt

protected SemanticContext.Predicate getSynPredForAlt(NFAState decisionStartState,
                                                     int alt)


Copyright © 2013. All Rights Reserved.