java_cup
Class CUP$parser$actions

java.lang.Object
  extended byjava_cup.CUP$parser$actions

class CUP$parser$actions
extends java.lang.Object

Cup generated class to encapsulate user supplied action code.


Field Summary
(package private)  int _cur_prec
          Current precedence number
(package private)  int _cur_side
          Current precedence side
protected  non_terminal lhs_nt
          left hand side non terminal of the current production
protected  int MAX_RHS
          max size of right hand side we will support
protected  java.lang.String multipart_name
          string to build up multiple part names
protected  java.util.Hashtable non_terms
          table of just non terminals -- contains non_terminals indexed by name
private  parser parser
           
protected  production_part[] rhs_parts
          array for accumulating right hand side parts
protected  int rhs_pos
          where we are currently in building a right hand side
protected  non_terminal start_nt
          declared start non_terminal
protected  java.util.Hashtable symbols
          table of declared symbols -- contains production parts indexed by name
 
Constructor Summary
(package private) CUP$parser$actions(parser parser)
          Constructor
 
Method Summary
protected  production_part add_lab(production_part part, java.lang.String lab)
          helper routine to clone a new production part adding a given label
protected  void add_precedence(java.lang.String term)
          add relevant data to terminals
protected  void add_rhs_part(production_part part)
          add a new right hand side part
protected  void append_multipart(java.lang.String name)
          append a new name segment to the accumulated multipart name
 Symbol CUP$parser$do_action(int CUP$parser$act_num, lr_parser CUP$parser$parser, java.util.Stack CUP$parser$stack, int CUP$parser$top)
          Method with the actual generated action code.
protected  void new_rhs()
          start a new right hand side
protected  void update_precedence(int p)
          update the precedences we are declaring
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MAX_RHS

protected final int MAX_RHS
max size of right hand side we will support

See Also:
Constant Field Values

rhs_parts

protected production_part[] rhs_parts
array for accumulating right hand side parts


rhs_pos

protected int rhs_pos
where we are currently in building a right hand side


multipart_name

protected java.lang.String multipart_name
string to build up multiple part names


symbols

protected java.util.Hashtable symbols
table of declared symbols -- contains production parts indexed by name


non_terms

protected java.util.Hashtable non_terms
table of just non terminals -- contains non_terminals indexed by name


start_nt

protected non_terminal start_nt
declared start non_terminal


lhs_nt

protected non_terminal lhs_nt
left hand side non terminal of the current production


_cur_prec

int _cur_prec
Current precedence number


_cur_side

int _cur_side
Current precedence side


parser

private final parser parser
Constructor Detail

CUP$parser$actions

CUP$parser$actions(parser parser)
Constructor

Method Detail

add_lab

protected production_part add_lab(production_part part,
                                  java.lang.String lab)
                           throws internal_error
helper routine to clone a new production part adding a given label

Throws:
internal_error

new_rhs

protected void new_rhs()
start a new right hand side


add_rhs_part

protected void add_rhs_part(production_part part)
                     throws java.lang.Exception
add a new right hand side part

Throws:
java.lang.Exception

append_multipart

protected void append_multipart(java.lang.String name)
append a new name segment to the accumulated multipart name


update_precedence

protected void update_precedence(int p)
update the precedences we are declaring


add_precedence

protected void add_precedence(java.lang.String term)
add relevant data to terminals


CUP$parser$do_action

public final Symbol CUP$parser$do_action(int CUP$parser$act_num,
                                         lr_parser CUP$parser$parser,
                                         java.util.Stack CUP$parser$stack,
                                         int CUP$parser$top)
                                  throws java.lang.Exception
Method with the actual generated action code.

Throws:
java.lang.Exception