| Package | Description |
|---|---|
| java_cup.runtime | |
| jflex |
| Modifier and Type | Class and Description |
|---|---|
static class |
ComplexSymbolFactory.ComplexSymbol
ComplexSymbol with detailed Location Informations and a Name
|
| Modifier and Type | Field and Description |
|---|---|
protected Symbol |
lr_parser.cur_token
The current lookahead Symbol.
|
protected Symbol[] |
lr_parser.lookahead
Lookahead Symbols used for attempting error recovery "parse aheads".
|
| Modifier and Type | Method and Description |
|---|---|
protected Symbol |
lr_parser.cur_err_token()
Return the current lookahead in our error "parse ahead" buffer.
|
Symbol |
lr_parser.debug_parse()
Perform a parse with debugging output.
|
abstract Symbol |
lr_parser.do_action(int act_num,
lr_parser parser,
Stack stack,
int top)
Perform a bit of user supplied action code (supplied by generated
subclass).
|
Symbol |
DefaultSymbolFactory.newSymbol(String name,
int id) |
Symbol |
ComplexSymbolFactory.newSymbol(String name,
int id) |
Symbol |
SymbolFactory.newSymbol(String name,
int id)
newSymbol
creates a basic symbol;
used frequently for terminal symbols, like keywords
|
Symbol |
ComplexSymbolFactory.newSymbol(String name,
int id,
ComplexSymbolFactory.Location left,
ComplexSymbolFactory.Location right)
newSymbol
creates a complex symbol with Location objects for left and right boundaries;
this is used for terminals without values!
|
Symbol |
ComplexSymbolFactory.newSymbol(String name,
int id,
ComplexSymbolFactory.Location left,
ComplexSymbolFactory.Location right,
Object value)
newSymbol
creates a complex symbol with Location objects for left and right boundaries;
this is used for terminals with values!
|
Symbol |
DefaultSymbolFactory.newSymbol(String name,
int id,
int left,
int right) |
Symbol |
DefaultSymbolFactory.newSymbol(String name,
int id,
int left,
int right,
Object value) |
Symbol |
DefaultSymbolFactory.newSymbol(String name,
int id,
Object value) |
Symbol |
ComplexSymbolFactory.newSymbol(String name,
int id,
Object value) |
Symbol |
SymbolFactory.newSymbol(String name,
int id,
Object value)
newSymbol
creates a basic symbol with an attached value;
used frequently for terminal symbols like identifiers
|
Symbol |
DefaultSymbolFactory.newSymbol(String name,
int id,
Symbol left,
Symbol right) |
Symbol |
ComplexSymbolFactory.newSymbol(String name,
int id,
Symbol left,
Symbol right) |
Symbol |
SymbolFactory.newSymbol(String name,
int id,
Symbol left,
Symbol right)
newSymbol
creates a symbol, grouping other symbols with left/right locations;
used frequently by the parser to implement non-terminal symbols
|
Symbol |
DefaultSymbolFactory.newSymbol(String name,
int id,
Symbol left,
Symbol right,
Object value) |
Symbol |
ComplexSymbolFactory.newSymbol(String name,
int id,
Symbol left,
Symbol right,
Object value) |
Symbol |
SymbolFactory.newSymbol(String name,
int id,
Symbol left,
Symbol right,
Object value)
newSymbol
creates a symbol with a value, grouping other symbols with left/right locations;
used frequently by the parser to implement non-terminal symbols
|
Symbol |
Scanner.next_token()
Return the next token, or
null on end-of-file. |
Symbol |
ScannerBuffer.next_token() |
Symbol |
lr_parser.parse()
This method provides the main parsing routine.
|
Symbol |
lr_parser.scan()
Get the next Symbol from the input (supplied by generated subclass).
|
Symbol |
DefaultSymbolFactory.startSymbol(String name,
int id,
int state) |
Symbol |
ComplexSymbolFactory.startSymbol(String name,
int id,
int state) |
Symbol |
SymbolFactory.startSymbol(String name,
int id,
int state)
newSymbol
creates the start symbol
|
| Modifier and Type | Method and Description |
|---|---|
List<Symbol> |
ScannerBuffer.getBuffered()
Read-Only access to the buffered Symbols
|
| Modifier and Type | Method and Description |
|---|---|
void |
lr_parser.debug_shift(Symbol shift_tkn)
Do debug output for shift.
|
Symbol |
DefaultSymbolFactory.newSymbol(String name,
int id,
Symbol left,
Symbol right) |
Symbol |
ComplexSymbolFactory.newSymbol(String name,
int id,
Symbol left,
Symbol right) |
Symbol |
SymbolFactory.newSymbol(String name,
int id,
Symbol left,
Symbol right)
newSymbol
creates a symbol, grouping other symbols with left/right locations;
used frequently by the parser to implement non-terminal symbols
|
Symbol |
DefaultSymbolFactory.newSymbol(String name,
int id,
Symbol left,
Symbol right,
Object value) |
Symbol |
ComplexSymbolFactory.newSymbol(String name,
int id,
Symbol left,
Symbol right,
Object value) |
Symbol |
SymbolFactory.newSymbol(String name,
int id,
Symbol left,
Symbol right,
Object value)
newSymbol
creates a symbol with a value, grouping other symbols with left/right locations;
used frequently by the parser to implement non-terminal symbols
|
void |
lr_parser.syntax_error(Symbol cur_token)
This method is called when a syntax error has been detected and recovery
is about to be invoked.
|
void |
lr_parser.unrecovered_syntax_error(Symbol cur_token)
This method is called if it is determined that syntax error recovery
has been unsuccessful.
|
| Constructor and Description |
|---|
ComplexSymbolFactory.ComplexSymbol(String name,
int id,
Symbol left,
Symbol right) |
ComplexSymbolFactory.ComplexSymbol(String name,
int id,
Symbol left,
Symbol right,
Object value) |
Symbol(int id,
Symbol left,
Symbol right) |
Symbol(int id,
Symbol left,
Symbol right,
Object o) |
| Modifier and Type | Method and Description |
|---|---|
Symbol |
LexScan.debug_next_token()
Same as next_token but also prints the token to standard out
for debugging.
|
Symbol |
LexParse.do_action(int act_num,
lr_parser parser,
Stack stack,
int top)
Invoke a user supplied parse action.
|
Symbol |
LexScan.next_token()
Resumes scanning until the next regular expression is matched,
the end of input is encountered or an I/O-Error occurs.
|
| Modifier and Type | Method and Description |
|---|---|
void |
LexParse.syntax_error(Symbol cur_token)
Override syntax_error to not report expected tokens, just error message.
|
Copyright © 2015. All rights reserved.