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