org.jacorb.idl.runtime

Class symbol

public class symbol extends Object

This class represents a (terminal or non-terminal) symbol that, among other things can be placed on the parse stack. Symbols are used to keep track of state on the parse stack. The symbol currently on top of the stack contains the current state in the parse_state field. In addition to the parse_state field, symbols also maintain a record of the symbol number that they represent in the sym field. Finally, symbols are used contain to any attributes used by semantic action (this is done via fields added in subclasses -- see for example, int_token and str_token).

Version: last updated: 11/25/95

Author: Scott Hudson

See Also: token int_token str_token

Field Summary
intparse_state
The parse state to be recorded on the parse stack with this symbol.
intsym
The symbol number of the terminal or non terminal being represented
Constructor Summary
symbol(int sym_num, int state)
Full constructor.
symbol(int sym_num)
Constructor without a known state.

Field Detail

parse_state

public int parse_state
The parse state to be recorded on the parse stack with this symbol. This field is for the convenience of the parser and shouldn't be modified except by the parser.

sym

public int sym
The symbol number of the terminal or non terminal being represented

Constructor Detail

symbol

public symbol(int sym_num, int state)
Full constructor.

symbol

public symbol(int sym_num)
Constructor without a known state.