antlr
Class LLkParser
java.lang.Object
|
+--antlr.Parser
|
+--antlr.LLkParser
- Direct Known Subclasses:
- ANTLRParser, ANTLRTokdefParser, JavaRecognizer, JavaRecognizer, LLkDebuggingParser, Preprocessor
- public class LLkParser
- extends Parser
An LL(k) parser.
- See Also:
Token
,
TokenBuffer
,
antlr.LL1Parser
Field Summary |
(package private) int |
k
|
Method Summary |
void |
consume()
Consume another token from the input stream. |
int |
LA(int i)
Return the token type of the ith token of lookahead where i=1
is the current token being examined by the parser (i.e., it
has not been matched yet). |
Token |
LT(int i)
Return the ith token of lookahead |
private void |
trace(java.lang.String ee,
java.lang.String rname)
|
void |
traceIn(java.lang.String rname)
|
void |
traceOut(java.lang.String rname)
|
Methods inherited from class antlr.Parser |
addMessageListener, addParserListener, addParserMatchListener, addParserTokenListener, addSemanticPredicateListener, addSyntacticPredicateListener, addTraceListener, consumeUntil, consumeUntil, defaultDebuggingSetup, getAST, getASTFactory, getFilename, getInputState, getTokenName, getTokenNames, isDebugMode, mark, match, match, matchNot, panic, removeMessageListener, removeParserListener, removeParserMatchListener, removeParserTokenListener, removeSemanticPredicateListener, removeSyntacticPredicateListener, removeTraceListener, reportError, reportError, reportWarning, rewind, setASTFactory, setASTNodeClass, setASTNodeType, setDebugMode, setFilename, setIgnoreInvalidDebugCalls, setInputState, setTokenBuffer, traceIndent |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
k
int k
LLkParser
public LLkParser(int k_)
LLkParser
public LLkParser(ParserSharedInputState state,
int k_)
LLkParser
public LLkParser(TokenBuffer tokenBuf,
int k_)
LLkParser
public LLkParser(TokenStream lexer,
int k_)
consume
public void consume()
- Consume another token from the input stream. Can only write sequentially!
If you need 3 tokens ahead, you must consume() 3 times.
Note that it is possible to overwrite tokens that have not been matched.
For example, calling consume() 3 times when k=2, means that the first token
consumed will be overwritten with the 3rd.
- Specified by:
consume
in class Parser
LA
public int LA(int i)
throws TokenStreamException
- Description copied from class:
Parser
- Return the token type of the ith token of lookahead where i=1
is the current token being examined by the parser (i.e., it
has not been matched yet).
- Specified by:
LA
in class Parser
TokenStreamException
LT
public Token LT(int i)
throws TokenStreamException
- Description copied from class:
Parser
- Return the ith token of lookahead
- Specified by:
LT
in class Parser
TokenStreamException
trace
private void trace(java.lang.String ee,
java.lang.String rname)
throws TokenStreamException
TokenStreamException
traceIn
public void traceIn(java.lang.String rname)
throws TokenStreamException
- Overrides:
traceIn
in class Parser
TokenStreamException
traceOut
public void traceOut(java.lang.String rname)
throws TokenStreamException
- Overrides:
traceOut
in class Parser
TokenStreamException