| java.lang.Object org.antlr.runtime.DFA
DFA | public class DFA (Code) | | A DFA implemented as a set of transition tables.
Any state that has a semantic predicate edge is special; those states
are generated with if-then-else structures in a specialStateTransition()
which is generated by cyclicDFA template.
There are at most 32767 states (16-bit signed short).
Could get away with byte sometimes but would have to generate different
types and the simulation code too. For a point of reference, the Java
lexer's Tokens rule DFA has 326 states roughly.
|
accept | protected short[] accept(Code) | | |
debug | final public static boolean debug(Code) | | |
decisionNumber | protected int decisionNumber(Code) | | |
eof | protected short[] eof(Code) | | |
eot | protected short[] eot(Code) | | |
recognizer | protected BaseRecognizer recognizer(Code) | | Which recognizer encloses this DFA? Needed to check backtracking
|
special | protected short[] special(Code) | | |
transition | protected short[][] transition(Code) | | |
predict | public int predict(IntStream input) throws RecognitionException(Code) | | From the input stream, predict what alternative will succeed
using this DFA (representing the covering regular approximation
to the underlying CFL). Return an alternative number 1..n. Throw
an exception upon error.
|
specialTransition | public int specialTransition(int state, int symbol)(Code) | | |
unpackEncodedString | public static short[] unpackEncodedString(String encodedString)(Code) | | Given a String that has a run-length-encoding of some unsigned shorts
like "\1\2\3\9", convert to short[] {2,9,9,9}. We do this to avoid
static short[] which generates so much init code that the class won't
compile. :(
|
unpackEncodedStringToUnsignedChars | public static char[] unpackEncodedStringToUnsignedChars(String encodedString)(Code) | | Hideous duplication of code, but I need different typed arrays out :(
|
|
|