|
ANTLR Support Libraries 2.7.1+
|
#include <LLkParser.hpp>


Public Member Functions | |
| LLkParser (const ParserSharedInputState &lexer, int k_) | |
| LLkParser (TokenBuffer &tokenBuf, int k_) | |
| LLkParser (TokenStream &lexer, int k_) | |
| virtual void | consume () |
| virtual int | LA (unsigned int i) |
| virtual RefToken | LT (unsigned int i) |
| Return the i-th token of lookahead. | |
| virtual void | traceIn (const char *rname) |
| virtual void | traceOut (const char *rname) |
Protected Attributes | |
| int | k |
| the lookahead this LL(k) parser is using. | |
Private Member Functions | |
| void | trace (const char *ee, const char *rname) |
An LL(k) parser.
| LLkParser::LLkParser | ( | const ParserSharedInputState & | state, |
| int | k_ | ||
| ) |
An LL(k) parser.
| LLkParser::LLkParser | ( | TokenBuffer & | tokenBuf, |
| int | k_ | ||
| ) |
| LLkParser::LLkParser | ( | TokenStream & | lexer, |
| int | k_ | ||
| ) |
| virtual void LLkParser::consume | ( | ) | [inline, virtual] |
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.
Implements Parser.
| virtual int LLkParser::LA | ( | unsigned int | i | ) | [inline, virtual] |
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).
Implements Parser.
| virtual RefToken LLkParser::LT | ( | unsigned int | i | ) | [inline, virtual] |
Return the i-th token of lookahead.
Implements Parser.
| void LLkParser::trace | ( | const char * | ee, |
| const char * | rname | ||
| ) | [private] |
| void LLkParser::traceIn | ( | const char * | rname | ) | [virtual] |
Reimplemented from Parser.
| void LLkParser::traceOut | ( | const char * | rname | ) | [virtual] |
Reimplemented from Parser.
int LLkParser::k [protected] |
the lookahead this LL(k) parser is using.
1.7.6.1