java_cup
Class terminal
This class represents a terminal symbol in the grammar. Each terminal
has a textual name, an index, and a string which indicates the type of
object it will be implemented with at runtime (i.e. the class of object
that will be returned by the scanner and pushed on the parse stack to
represent it).
static terminal | EOF - Special terminal for end of input.
|
protected static Hashtable | _all - Table of all terminals.
|
protected static Hashtable | _all_by_index - Table of all terminals indexed by their index number.
|
static terminal | error - special terminal used for error recovery
|
protected static int | next_index - Static counter to assign unique index.
|
terminal(String nm) - Constructor with default type.
|
terminal(String nm, String tp) - Constructor for non-precedented terminal
|
terminal(String nm, String tp, int precedence_side, int precedence_num) - Full constructor.
|
EOF
public static final terminal EOF
Special terminal for end of input.
_all
protected static Hashtable _all
Table of all terminals. Elements are stored using name strings as
the key
_all_by_index
protected static Hashtable _all_by_index
Table of all terminals indexed by their index number.
error
public static final terminal error
special terminal used for error recovery
next_index
protected static int next_index
Static counter to assign unique index.
terminal
public terminal(String nm)
Constructor with default type.
nm
- the name of the terminal.
terminal
public terminal(String nm,
String tp)
Constructor for non-precedented terminal
terminal
public terminal(String nm,
String tp,
int precedence_side,
int precedence_num)
Full constructor.
nm
- the name of the terminal.tp
- the type of the terminal.
all
public static Enumeration all()
Access to all terminals.
find
public static terminal find(String with_name)
Lookup a terminal by name string.
find
public static terminal find(int indx)
Lookup a terminal by index.
is_non_term
public boolean is_non_term()
Report this symbol as not being a non-terminal.
- is_non_term in interface symbol
number
public static int number()
Total number of terminals.
precedence_num
public int precedence_num()
get the precedence of a terminal
precedence_side
public int precedence_side()
set_precedence
public void set_precedence(int p,
int new_prec)
set the precedence of a terminal
toString
public String toString()
Convert to a string.
- toString in interface symbol