//---------------------------------------------------- // The following code was generated by CUP v0.10k TUM Edition 20050516 // Fri Nov 11 20:53:50 CET 2005 //---------------------------------------------------- package org.acplt.oncrpc.apps.jrpcgen; import java.util.ArrayList; import org.acplt.oncrpc.apps.jrpcgen.cup_runtime.*; import java.util.Vector; /** CUP v0.10k TUM Edition 20050516 generated parser. * @version Fri Nov 11 20:53:50 CET 2005 */ public class JrpcgenParser extends org.acplt.oncrpc.apps.jrpcgen.cup_runtime.lr_parser { /** Default constructor. */ public JrpcgenParser() { super(); } /** Constructor which sets the default scanner. */ public JrpcgenParser(org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Scanner s) { super(s); } /** Production table. */ protected static final short _production_table[][] = unpackFromStrings(new String[]{ "\000\120\000\002\002\004\000\002\003\004\000\002\021" + "\002\000\002\021\003\000\002\020\003\000\002\020\004" + "\000\002\004\002\000\002\004\003\000\002\005\003\000" + "\002\005\004\000\002\006\003\000\002\006\003\000\002" + "\006\003\000\002\006\003\000\002\006\003\000\002\007" + "\007\000\002\010\010\000\002\011\003\000\002\011\005" + "\000\002\012\003\000\002\012\005\000\002\013\010\000" + "\002\014\014\000\002\015\003\000\002\015\004\000\002" + "\016\005\000\002\016\007\000\002\016\006\000\002\017" + "\005\000\002\022\012\000\002\023\003\000\002\023\004" + "\000\002\024\012\000\002\025\003\000\002\025\004\000" + "\002\026\012\000\002\027\003\000\002\027\003\000\002" + "\030\003\000\002\030\004\000\002\030\005\000\002\030" + "\006\000\002\031\003\000\002\031\003\000\002\032\003" + "\000\002\032\003\000\002\033\003\000\002\033\003\000" + "\002\033\004\000\002\033\003\000\002\033\003\000\002" + "\033\003\000\002\033\003\000\002\033\003\000\002\033" + "\004\000\002\033\004\000\002\033\004\000\002\034\004" + "\000\002\034\005\000\002\035\007\000\002\035\007\000" + "\002\035\006\000\002\035\007\000\002\035\006\000\002" + "\035\004\000\002\035\007\000\002\035\007\000\002\035" + "\006\000\002\035\005\000\002\035\003\000\002\036\004" + "\000\002\036\003\000\002\036\003\000\002\036\003\000" + "\002\036\004\000\002\036\003\000\002\036\003\000\002" + "\036\004\000\002\037\003\000\002\037\003"}); /** Access to production table. */ public short[][] production_table() { return _production_table; } /** Parse-action table. */ protected static final short[][] _action_table = unpackFromStrings(new String[]{ "\000\235\000\020\002\ufffb\021\ufffb\023\021\024\014\042" + "\004\045\011\046\007\001\002\000\004\051\225\001\002" + "\000\020\002\ufff5\021\ufff5\023\ufff5\024\ufff5\042\ufff5\045" + "\ufff5\046\ufff5\001\002\000\020\002\ufff9\021\ufff9\023\ufff9" + "\024\ufff9\042\ufff9\045\ufff9\046\ufff9\001\002\000\004\051" + "\201\001\002\000\020\002\ufff7\021\ufff7\023\ufff7\024\ufff7" + "\042\ufff7\045\ufff7\046\ufff7\001\002\000\004\051\170\001" + "\002\000\020\002\ufff3\021\ufff3\023\ufff3\024\ufff3\042\ufff3" + "\045\ufff3\046\ufff3\001\002\000\020\002\ufff6\021\ufff6\023" + "\ufff6\024\ufff6\042\ufff6\045\ufff6\046\ufff6\001\002\000\044" + "\030\137\031\056\032\072\033\055\034\052\035\065\036" + "\062\037\077\040\073\041\074\042\067\043\136\044\135" + "\045\054\046\066\047\060\051\057\001\002\000\020\002" + "\ufff4\021\ufff4\023\ufff4\024\ufff4\042\ufff4\045\ufff4\046\ufff4" + "\001\002\000\006\002\uffff\021\035\001\002\000\020\002" + "\ufffa\021\ufffa\023\021\024\014\042\004\045\011\046\007" + "\001\002\000\004\002\030\001\002\000\004\051\022\001" + "\002\000\004\007\023\001\002\000\006\050\024\051\025" + "\001\002\000\016\004\uffb3\005\uffb3\006\uffb3\014\uffb3\016" + "\uffb3\020\uffb3\001\002\000\016\004\uffb2\005\uffb2\006\uffb2" + "\014\uffb2\016\uffb2\020\uffb2\001\002\000\004\004\027\001" + "\002\000\020\002\ufff2\021\ufff2\023\ufff2\024\ufff2\042\ufff2" + "\045\ufff2\046\ufff2\001\002\000\004\002\001\001\002\000" + "\020\002\ufff8\021\ufff8\023\ufff8\024\ufff8\042\ufff8\045\ufff8" + "\046\ufff8\001\002\000\006\002\ufffe\021\035\001\002\000" + "\006\002\ufffd\021\ufffd\001\002\000\004\002\000\001\002" + "\000\004\051\036\001\002\000\004\013\037\001\002\000" + "\004\022\041\001\002\000\006\014\uffe3\022\uffe3\001\002" + "\000\004\051\050\001\002\000\006\014\044\022\041\001" + "\002\000\006\014\uffe2\022\uffe2\001\002\000\004\007\045" + "\001\002\000\006\050\024\051\025\001\002\000\004\004" + "\047\001\002\000\006\002\uffe4\021\uffe4\001\002\000\004" + "\013\051\001\002\000\042\030\075\031\056\032\072\033" + "\055\034\052\035\065\036\062\037\077\040\073\041\074" + "\042\067\044\061\045\054\046\066\047\060\051\057\001" + "\002\000\014\005\uffb6\010\uffb6\012\uffb6\033\131\051\uffb6" + "\001\002\000\010\005\uffd4\012\uffd4\051\uffd4\001\002\000" + "\004\051\130\001\002\000\012\005\uffb8\010\uffb8\012\uffb8" + "\051\uffb8\001\002\000\012\005\uffb9\010\uffb9\012\uffb9\051" + "\uffb9\001\002\000\012\005\uffd3\010\uffd3\012\uffd3\051\uffd3" + "\001\002\000\024\005\uffcf\010\uffcf\012\uffcf\031\056\032" + "\072\033\055\034\052\035\065\051\uffcf\001\002\000\010" + "\005\uffd5\012\uffd5\051\uffd5\001\002\000\012\005\uffce\010" + "\uffce\012\uffce\051\uffce\001\002\000\044\014\122\030\075" + "\031\056\032\072\033\055\034\052\035\065\036\062\037" + "\077\040\073\041\074\042\067\044\061\045\054\046\066" + "\047\060\051\057\001\002\000\044\014\uffe0\030\uffe0\031" + "\uffe0\032\uffe0\033\uffe0\034\uffe0\035\uffe0\036\uffe0\037\uffe0" + "\040\uffe0\041\uffe0\042\uffe0\044\uffe0\045\uffe0\046\uffe0\047" + "\uffe0\051\uffe0\001\002\000\014\005\uffb5\010\uffb5\012\uffb5" + "\033\121\051\uffb5\001\002\000\004\051\120\001\002\000" + "\004\051\117\001\002\000\004\051\uffd6\001\002\000\004" + "\051\101\001\002\000\014\005\uffba\010\uffba\012\uffba\033" + "\100\051\uffba\001\002\000\012\005\uffcc\010\uffcc\012\uffcc" + "\051\uffcc\001\002\000\012\005\uffd2\010\uffd2\012\uffd2\051" + "\uffd2\001\002\000\004\051\uffd7\001\002\000\012\005\uffd0" + "\010\uffd0\012\uffd0\051\uffd0\001\002\000\012\005\uffcd\010" + "\uffcd\012\uffcd\051\uffcd\001\002\000\012\005\uffbb\010\uffbb" + "\012\uffbb\051\uffbb\001\002\000\004\011\102\001\002\000" + "\042\030\105\031\056\032\072\033\055\034\052\035\065" + "\036\062\037\077\040\073\041\074\042\067\044\061\045" + "\054\046\066\047\060\051\057\001\002\000\010\005\uffdb" + "\012\uffdb\051\116\001\002\000\006\005\uffdc\012\uffdc\001" + "\002\000\006\005\uffdd\012\uffdd\001\002\000\006\005\107" + "\012\110\001\002\000\040\031\056\032\072\033\055\034" + "\052\035\065\036\062\037\077\040\073\041\074\042\067" + "\044\061\045\054\046\066\047\060\051\057\001\002\000" + "\004\007\111\001\002\000\006\050\024\051\025\001\002" + "\000\004\004\113\001\002\000\044\014\uffde\030\uffde\031" + "\uffde\032\uffde\033\uffde\034\uffde\035\uffde\036\uffde\037\uffde" + "\040\uffde\041\uffde\042\uffde\044\uffde\045\uffde\046\uffde\047" + "\uffde\051\uffde\001\002\000\010\005\uffd9\012\uffd9\051\115" + "\001\002\000\006\005\uffd8\012\uffd8\001\002\000\006\005" + "\uffda\012\uffda\001\002\000\012\005\uffcb\010\uffcb\012\uffcb" + "\051\uffcb\001\002\000\012\005\uffc9\010\uffc9\012\uffc9\051" + "\uffc9\001\002\000\012\005\uffb4\010\uffb4\012\uffb4\051\uffb4" + "\001\002\000\004\007\124\001\002\000\044\014\uffdf\030" + "\uffdf\031\uffdf\032\uffdf\033\uffdf\034\uffdf\035\uffdf\036\uffdf" + "\037\uffdf\040\uffdf\041\uffdf\042\uffdf\044\uffdf\045\uffdf\046" + "\uffdf\047\uffdf\051\uffdf\001\002\000\006\050\024\051\025" + "\001\002\000\004\004\126\001\002\000\006\014\uffe1\022" + "\uffe1\001\002\000\012\005\uffd1\010\uffd1\012\uffd1\051\uffd1" + "\001\002\000\012\005\uffca\010\uffca\012\uffca\051\uffca\001" + "\002\000\012\005\uffb7\010\uffb7\012\uffb7\051\uffb7\001\002" + "\000\006\002\ufffc\021\ufffc\001\002\000\004\004\167\001" + "\002\000\006\010\155\051\156\001\002\000\004\051\150" + "\001\002\000\004\051\140\001\002\000\006\004\uffbc\012" + "\uffbc\001\002\000\006\015\142\017\141\001\002\000\010" + "\020\145\050\024\051\025\001\002\000\006\050\024\051" + "\025\001\002\000\004\016\144\001\002\000\006\004\uffc6" + "\012\uffc6\001\002\000\006\004\uffc4\012\uffc4\001\002\000" + "\004\020\147\001\002\000\006\004\uffc5\012\uffc5\001\002" + "\000\004\017\151\001\002\000\010\020\152\050\024\051" + "\025\001\002\000\006\004\uffc2\012\uffc2\001\002\000\004" + "\020\154\001\002\000\006\004\uffc3\012\uffc3\001\002\000" + "\004\051\166\001\002\000\012\004\uffc1\012\uffc1\015\160" + "\017\157\001\002\000\010\020\163\050\024\051\025\001" + "\002\000\006\050\024\051\025\001\002\000\004\016\162" + "\001\002\000\006\004\uffc0\012\uffc0\001\002\000\006\004" + "\uffbe\012\uffbe\001\002\000\004\020\165\001\002\000\006" + "\004\uffbf\012\uffbf\001\002\000\006\004\uffbd\012\uffbd\001" + "\002\000\020\002\uffe5\021\uffe5\023\uffe5\024\uffe5\042\uffe5" + "\045\uffe5\046\uffe5\001\002\000\004\013\171\001\002\000" + "\044\030\137\031\056\032\072\033\055\034\052\035\065" + "\036\062\037\077\040\073\041\074\042\067\043\136\044" + "\135\045\054\046\066\047\060\051\057\001\002\000\004" + "\004\200\001\002\000\046\014\175\030\137\031\056\032" + "\072\033\055\034\052\035\065\036\062\037\077\040\073" + "\041\074\042\067\043\136\044\135\045\054\046\066\047" + "\060\051\057\001\002\000\004\004\177\001\002\000\004" + "\004\176\001\002\000\020\002\uffec\021\uffec\023\uffec\024" + "\uffec\042\uffec\045\uffec\046\uffec\001\002\000\046\014\uffc7" + "\030\uffc7\031\uffc7\032\uffc7\033\uffc7\034\uffc7\035\uffc7\036" + "\uffc7\037\uffc7\040\uffc7\041\uffc7\042\uffc7\043\uffc7\044\uffc7" + "\045\uffc7\046\uffc7\047\uffc7\051\uffc7\001\002\000\046\014" + "\uffc8\030\uffc8\031\uffc8\032\uffc8\033\uffc8\034\uffc8\035\uffc8" + "\036\uffc8\037\uffc8\040\uffc8\041\uffc8\042\uffc8\043\uffc8\044" + "\uffc8\045\uffc8\046\uffc8\047\uffc8\051\uffc8\001\002\000\004" + "\025\202\001\002\000\004\011\203\001\002\000\044\030" + "\137\031\056\032\072\033\055\034\052\035\065\036\062" + "\037\077\040\073\041\074\042\067\043\136\044\135\045" + "\054\046\066\047\060\051\057\001\002\000\004\012\205" + "\001\002\000\004\013\206\001\002\000\006\026\212\027" + "\207\001\002\000\004\006\222\001\002\000\010\014\uffea" + "\026\uffea\027\uffea\001\002\000\010\014\220\026\212\027" + "\207\001\002\000\006\050\024\051\025\001\002\000\004" + "\006\214\001\002\000\052\014\uffe8\026\uffe8\027\uffe8\030" + "\137\031\056\032\072\033\055\034\052\035\065\036\062" + "\037\077\040\073\041\074\042\067\043\136\044\135\045" + "\054\046\066\047\060\051\057\001\002\000\004\004\216" + "\001\002\000\010\014\uffe7\026\uffe7\027\uffe7\001\002\000" + "\010\014\uffe9\026\uffe9\027\uffe9\001\002\000\004\004\221" + "\001\002\000\020\002\uffeb\021\uffeb\023\uffeb\024\uffeb\042" + "\uffeb\045\uffeb\046\uffeb\001\002\000\044\030\137\031\056" + "\032\072\033\055\034\052\035\065\036\062\037\077\040" + "\073\041\074\042\067\043\136\044\135\045\054\046\066" + "\047\060\051\057\001\002\000\004\004\224\001\002\000" + "\010\014\uffe6\026\uffe6\027\uffe6\001\002\000\004\013\226" + "\001\002\000\004\051\231\001\002\000\006\005\ufff0\014" + "\ufff0\001\002\000\006\005\234\014\235\001\002\000\010" + "\005\uffee\007\232\014\uffee\001\002\000\006\050\024\051" + "\025\001\002\000\006\005\uffed\014\uffed\001\002\000\004" + "\051\231\001\002\000\004\004\236\001\002\000\020\002" + "\ufff1\021\ufff1\023\ufff1\024\ufff1\042\ufff1\045\ufff1\046\ufff1" + "\001\002\000\006\005\uffef\014\uffef\001\002"}); /** Access to parse-action table. */ public short[][] action_table() { return _action_table; } /** <code>reduce_goto</code> table. */ protected static final short[][] _reduce_table = unpackFromStrings(new String[]{ "\000\235\000\024\003\017\004\015\005\016\006\005\007" + "\007\010\012\013\004\014\014\017\011\001\001\000\002" + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\010\033\133\035\132\036\075\001" + "\001\000\002\001\001\000\010\020\031\021\033\022\032" + "\001\001\000\016\006\030\007\007\010\012\013\004\014" + "\014\017\011\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\004\037\025\001\001\000\002\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\004\022\131\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\006\023\041\024\037\001\001\000" + "\002\001\001\000\002\001\001\000\004\024\042\001\001" + "\000\002\001\001\000\002\001\001\000\004\037\045\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + "\000\016\025\062\026\063\031\070\032\067\033\052\036" + "\075\001\001\000\002\001\001\000\002\001\001\000\002" + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + "\001\000\004\036\126\001\001\000\002\001\001\000\002" + "\001\001\000\014\026\122\031\070\032\067\033\052\036" + "\075\001\001\000\002\001\001\000\002\001\001\000\002" + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\002\001\001\000" + "\002\001\001\000\002\001\001\000\014\027\105\030\103" + "\032\102\033\052\036\075\001\001\000\002\001\001\000" + "\002\001\001\000\002\001\001\000\002\001\001\000\010" + "\032\113\033\052\036\075\001\001\000\002\001\001\000" + "\004\037\111\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\002\001\001\000" + "\002\001\001\000\002\001\001\000\002\001\001\000\002" + "\001\001\000\002\001\001\000\004\037\124\001\001\000" + "\002\001\001\000\002\001\001\000\002\001\001\000\002" + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\004\037\145\001" + "\001\000\004\037\142\001\001\000\002\001\001\000\002" + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + "\001\000\002\001\001\000\004\037\152\001\001\000\002" + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + "\001\000\002\001\001\000\004\037\163\001\001\000\004" + "\037\160\001\001\000\002\001\001\000\002\001\001\000" + "\002\001\001\000\002\001\001\000\002\001\001\000\002" + "\001\001\000\002\001\001\000\002\001\001\000\012\033" + "\133\034\172\035\171\036\075\001\001\000\002\001\001" + "\000\010\033\133\035\173\036\075\001\001\000\002\001" + "\001\000\002\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\002\001\001\000\002\001\001\000" + "\010\033\133\035\203\036\075\001\001\000\002\001\001" + "\000\002\001\001\000\006\015\210\016\207\001\001\000" + "\002\001\001\000\002\001\001\000\004\016\216\001\001" + "\000\004\037\212\001\001\000\002\001\001\000\010\033" + "\133\035\214\036\075\001\001\000\002\001\001\000\002" + "\001\001\000\002\001\001\000\002\001\001\000\002\001" + "\001\000\010\033\133\035\222\036\075\001\001\000\002" + "\001\001\000\002\001\001\000\002\001\001\000\006\011" + "\227\012\226\001\001\000\002\001\001\000\002\001\001" + "\000\002\001\001\000\004\037\232\001\001\000\002\001" + "\001\000\004\012\236\001\001\000\002\001\001\000\002" + "\001\001\000\002\001\001"}); /** Access to <code>reduce_goto</code> table. */ public short[][] reduce_table() { return _reduce_table; } /** Instance of action encapsulation class. */ protected CUP$JrpcgenParser$actions action_obj; /** Action encapsulation object initializer. */ protected void init_actions() { action_obj = new CUP$JrpcgenParser$actions(this); } /** Invoke a user supplied parse action. */ public org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol do_action( int act_num, org.acplt.oncrpc.apps.jrpcgen.cup_runtime.lr_parser parser, java.util.Stack stack, int top) throws java.lang.Exception { /* call code in generated class */ return action_obj.CUP$JrpcgenParser$do_action(act_num, parser, stack, top); } /** Indicates start state. */ public int start_state() { return 0; } /** Indicates start production. */ public int start_production() { return 0; } /** <code>EOF</code> Symbol index. */ public int EOF_sym() { return 0; } /** <code>error</code> Symbol index. */ public int error_sym() { return 1; } public void report_error(String message, Object info) { StringBuilder msg = new StringBuilder("jrpcgen: error"); if (info instanceof Symbol) { Symbol s = (Symbol) info; msg.append(" in line "); msg.append(s.left); } msg.append(": "); msg.append(message); System.out.println(msg); throw (new JrpcgenParserException()); } public void report_error(String message, int line) { StringBuilder msg = new StringBuilder("jrpcgen: error in line "); msg.append(line); msg.append(": "); msg.append(message); System.out.println(msg); throw (new JrpcgenParserException()); } public void syntax_error(Symbol cur_token) { StringBuilder msg = new StringBuilder("jrpcgen: syntax error in line "); msg.append(cur_token.left); System.out.println(msg); throw (new JrpcgenParserException()); } public void report_fatal_error(String message, Object info) { report_error(message, info); throw (new RuntimeException("Fatal Syntax Error")); } } /** Cup generated class to encapsulate user supplied action code.*/ class CUP$JrpcgenParser$actions { private final JrpcgenParser parser; /** Constructor */ CUP$JrpcgenParser$actions(JrpcgenParser parser) { this.parser = parser; } /** Method with the actual generated action code. */ public final org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol CUP$JrpcgenParser$do_action( int CUP$JrpcgenParser$act_num, org.acplt.oncrpc.apps.jrpcgen.cup_runtime.lr_parser CUP$JrpcgenParser$parser, java.util.Stack CUP$JrpcgenParser$stack, int CUP$JrpcgenParser$top) throws java.lang.Exception { /* Symbol object for return from actions */ org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol CUP$JrpcgenParser$result; /* select the action based on the action number */ switch (CUP$JrpcgenParser$act_num) { /*. . . . . . . . . . . . . . . . . . . .*/ case 79: // value ::= IDENTIFIER { String RESULT = null; int idleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left; int idright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right; String id = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).value; RESULT = id; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(29/*value*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 78: // value ::= INTEGER_LITERAL { String RESULT = null; int litleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left; int litright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right; String lit = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).value; RESULT = lit; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(29/*value*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 77: // int_types ::= HYPER INT { String RESULT = null; RESULT = "long"; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(28/*int_types*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 76: // int_types ::= HYPER { String RESULT = null; RESULT = "long"; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(28/*int_types*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 75: // int_types ::= LONG { String RESULT = null; RESULT = "int"; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(28/*int_types*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 74: // int_types ::= LONG INT { String RESULT = null; RESULT = "int"; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(28/*int_types*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 73: // int_types ::= INT { String RESULT = null; RESULT = "int"; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(28/*int_types*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 72: // int_types ::= CHAR { String RESULT = null; RESULT = "byte"; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(28/*int_types*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 71: // int_types ::= SHORT { String RESULT = null; RESULT = "short"; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(28/*int_types*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 70: // int_types ::= SHORT INT { String RESULT = null; RESULT = "short"; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(28/*int_types*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 69: // declaration ::= VOID { JrpcgenDeclaration RESULT = null; RESULT = new JrpcgenDeclaration(null, "void"); CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(27/*declaration*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 68: // declaration ::= type_specifier STAR IDENTIFIER { JrpcgenDeclaration RESULT = null; int typeleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).left; int typeright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).right; String type = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).value; int idleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left; int idright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right; String id = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).value; RESULT = new JrpcgenDeclaration( id, type, JrpcgenDeclaration.INDIRECTION, null); CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(27/*declaration*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 67: // declaration ::= type_specifier IDENTIFIER LANGLE RANGLE { JrpcgenDeclaration RESULT = null; int typeleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).left; int typeright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).right; String type = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).value; int idleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).left; int idright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).right; String id = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).value; RESULT = new JrpcgenDeclaration( id, type, JrpcgenDeclaration.DYNAMICVECTOR, null); CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(27/*declaration*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 66: // declaration ::= type_specifier IDENTIFIER LANGLE value RANGLE { JrpcgenDeclaration RESULT = null; int typeleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 4)).left; int typeright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 4)).right; String type = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 4)).value; int idleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).left; int idright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).right; String id = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).value; int sizeleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left; int sizeright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).right; String size = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).value; RESULT = new JrpcgenDeclaration( id, type, JrpcgenDeclaration.DYNAMICVECTOR, size); CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(27/*declaration*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 4)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 65: // declaration ::= type_specifier IDENTIFIER LBRACKET value RBRACKET { JrpcgenDeclaration RESULT = null; int typeleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 4)).left; int typeright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 4)).right; String type = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 4)).value; int idleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).left; int idright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).right; String id = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).value; int sizeleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left; int sizeright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).right; String size = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).value; RESULT = new JrpcgenDeclaration( id, type, JrpcgenDeclaration.FIXEDVECTOR, size); CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(27/*declaration*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 4)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 64: // declaration ::= type_specifier IDENTIFIER { JrpcgenDeclaration RESULT = null; int typeleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left; int typeright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).right; String type = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).value; int idleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left; int idright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right; String id = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).value; RESULT = new JrpcgenDeclaration(id, type); CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(27/*declaration*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 63: // declaration ::= STRING IDENTIFIER LANGLE RANGLE { JrpcgenDeclaration RESULT = null; int idleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).left; int idright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).right; String id = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).value; RESULT = new JrpcgenDeclaration( id, "String", JrpcgenDeclaration.DYNAMICVECTOR, null); CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(27/*declaration*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 62: // declaration ::= STRING IDENTIFIER LANGLE value RANGLE { JrpcgenDeclaration RESULT = null; int idleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).left; int idright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).right; String id = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).value; int sizeleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left; int sizeright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).right; String size = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).value; RESULT = new JrpcgenDeclaration( id, "String", JrpcgenDeclaration.DYNAMICVECTOR, size); CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(27/*declaration*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 4)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 61: // declaration ::= OPAQUE IDENTIFIER LANGLE RANGLE { JrpcgenDeclaration RESULT = null; int idleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).left; int idright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).right; String id = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).value; // Note: we use the pseudo-type "opaque" here to distinguish // real byte arrays from fake byte (char) arrays. RESULT = new JrpcgenDeclaration( id, "opaque", JrpcgenDeclaration.DYNAMICVECTOR, null); CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(27/*declaration*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 60: // declaration ::= OPAQUE IDENTIFIER LANGLE value RANGLE { JrpcgenDeclaration RESULT = null; int idleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).left; int idright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).right; String id = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).value; int sizeleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left; int sizeright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).right; String size = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).value; // Note: we use the pseudo-type "opaque" here to distinguish // real byte arrays from fake byte (char) arrays. RESULT = new JrpcgenDeclaration( id, "opaque", JrpcgenDeclaration.DYNAMICVECTOR, size); CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(27/*declaration*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 4)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 59: // declaration ::= OPAQUE IDENTIFIER LBRACKET value RBRACKET { JrpcgenDeclaration RESULT = null; int idleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).left; int idright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).right; String id = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).value; int sizeleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left; int sizeright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).right; String size = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).value; // Note: we use the pseudo-type "opaque" here to distinguish // real byte arrays from fake byte (char) arrays. RESULT = new JrpcgenDeclaration( id, "opaque", JrpcgenDeclaration.FIXEDVECTOR, size); CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(27/*declaration*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 4)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 58: // declarations ::= declarations declaration SEMICOLON { Vector RESULT = null; int declsleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).left; int declsright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).right; Vector decls = (Vector) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).value; int declleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left; int declright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).right; JrpcgenDeclaration decl = (JrpcgenDeclaration) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).value; decls.addElement(decl); RESULT = decls; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(26/*declarations*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 57: // declarations ::= declaration SEMICOLON { Vector RESULT = null; int declleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left; int declright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).right; JrpcgenDeclaration decl = (JrpcgenDeclaration) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).value; RESULT = new Vector(); RESULT.addElement(decl); CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(26/*declarations*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 56: // type_specifier ::= UNION IDENTIFIER { String RESULT = null; int idleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left; int idright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right; String id = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).value; RESULT = id; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(25/*type_specifier*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 55: // type_specifier ::= STRUCT IDENTIFIER { String RESULT = null; int idleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left; int idright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right; String id = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).value; RESULT = id; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(25/*type_specifier*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 54: // type_specifier ::= ENUM IDENTIFIER { String RESULT = null; int idleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left; int idright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right; String id = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).value; RESULT = id; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(25/*type_specifier*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 53: // type_specifier ::= QUADRUPLE { String RESULT = null; RESULT = "double"; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(25/*type_specifier*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 52: // type_specifier ::= DOUBLE { String RESULT = null; RESULT = "double"; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(25/*type_specifier*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 51: // type_specifier ::= FLOAT { String RESULT = null; RESULT = "float"; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(25/*type_specifier*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 50: // type_specifier ::= UNSIGNED { String RESULT = null; RESULT = "int"; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(25/*type_specifier*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 49: // type_specifier ::= int_types { String RESULT = null; int typeleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left; int typeright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right; String type = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).value; RESULT = type; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(25/*type_specifier*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 48: // type_specifier ::= UNSIGNED int_types { String RESULT = null; int typeleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left; int typeright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right; String type = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).value; RESULT = type; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(25/*type_specifier*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 47: // type_specifier ::= BOOL { String RESULT = null; RESULT = "boolean"; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(25/*type_specifier*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 46: // type_specifier ::= IDENTIFIER { String RESULT = null; int idleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left; int idright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right; String id = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).value; RESULT = id; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(25/*type_specifier*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 45: // type_specifier_incl_string ::= type_specifier { String RESULT = null; int typeleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left; int typeright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right; String type = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).value; RESULT = type; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(24/*type_specifier_incl_string*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 44: // type_specifier_incl_string ::= STRING { String RESULT = null; RESULT = "String"; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(24/*type_specifier_incl_string*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 43: // type_specifier_incl_specials ::= type_specifier_incl_string { String RESULT = null; int typeleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left; int typeright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right; String type = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).value; RESULT = type; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(23/*type_specifier_incl_specials*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 42: // type_specifier_incl_specials ::= VOID { String RESULT = null; RESULT = "void"; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(23/*type_specifier_incl_specials*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 41: // argument_list_no_void ::= argument_list COMMA type_specifier_incl_string IDENTIFIER { Vector RESULT = null; int argsleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).left; int argsright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).right; Vector args = (Vector) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).value; int paramTypeleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left; int paramTyperight = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).right; String paramType = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).value; int paramNameleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left; int paramNameright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right; String paramName = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).value; RESULT = args; RESULT.addElement(new JrpcgenParamInfo(paramType, paramName)); CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(22/*argument_list_no_void*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 40: // argument_list_no_void ::= argument_list COMMA type_specifier_incl_string { Vector RESULT = null; int argsleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).left; int argsright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).right; Vector args = (Vector) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).value; int paramTypeleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left; int paramTyperight = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right; String paramType = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).value; RESULT = args; RESULT.addElement(new JrpcgenParamInfo(paramType, null)); CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(22/*argument_list_no_void*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 39: // argument_list_no_void ::= type_specifier_incl_string IDENTIFIER { Vector RESULT = null; int paramTypeleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left; int paramTyperight = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).right; String paramType = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).value; int paramNameleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left; int paramNameright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right; String paramName = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).value; RESULT = new Vector(); RESULT.addElement(new JrpcgenParamInfo(paramType, paramName)); CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(22/*argument_list_no_void*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 38: // argument_list_no_void ::= type_specifier_incl_string { Vector RESULT = null; int paramTypeleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left; int paramTyperight = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right; String paramType = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).value; RESULT = new Vector(); RESULT.addElement(new JrpcgenParamInfo(paramType, null)); CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(22/*argument_list_no_void*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 37: // argument_list ::= argument_list_no_void { Vector RESULT = null; int argsleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left; int argsright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right; Vector args = (Vector) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).value; RESULT = args; // just pass through int size = RESULT.size(); // // All arguments, which are unnamed so far will now get // default names. // for (int idx = 0; idx < size; ++idx) { JrpcgenParamInfo paraminfo = (JrpcgenParamInfo) RESULT.elementAt(idx); if (paraminfo.parameterName == null) { paraminfo.parameterName = "arg" + (idx + 1); } } CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(21/*argument_list*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 36: // argument_list ::= VOID { Vector RESULT = null; RESULT = null; // special case, allows fast tests CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(21/*argument_list*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 35: // procedure_def ::= type_specifier_incl_specials IDENTIFIER LPAREN argument_list RPAREN EQUAL value SEMICOLON { JrpcgenProcedureInfo RESULT = null; int resultTypeleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 7)).left; int resultTyperight = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 7)).right; String resultType = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 7)).value; int procIdleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 6)).left; int procIdright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 6)).right; String procId = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 6)).value; int argsleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 4)).left; int argsright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 4)).right; Vector args = (Vector) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 4)).value; int procNumberleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left; int procNumberright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).right; String procNumber = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).value; RESULT = new JrpcgenProcedureInfo(procId, procNumber, resultType, args); // // NOTE: we can not add the identifier for the procedure number // to the list of global identifiers yet, as we do not know the // version number. This has to be fixed after the embracing // version definition was parsed in toto. // CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(20/*procedure_def*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 7)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 34: // procedure_defs ::= procedure_defs procedure_def { Vector RESULT = null; int procsleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left; int procsright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).right; Vector procs = (Vector) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).value; int procleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left; int procright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right; JrpcgenProcedureInfo proc = (JrpcgenProcedureInfo) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).value; procs.addElement(proc); RESULT = procs; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(19/*procedure_defs*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 33: // procedure_defs ::= procedure_def { Vector RESULT = null; int procleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left; int procright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right; JrpcgenProcedureInfo proc = (JrpcgenProcedureInfo) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).value; RESULT = new Vector(); RESULT.addElement(proc); CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(19/*procedure_defs*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 32: // version_def ::= VERSION IDENTIFIER LBRACE procedure_defs RBRACE EQUAL value SEMICOLON { JrpcgenVersionInfo RESULT = null; int versIdleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 6)).left; int versIdright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 6)).right; String versId = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 6)).value; int procsleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 4)).left; int procsright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 4)).right; Vector procs = (Vector) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 4)).value; int versNumberleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left; int versNumberright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).right; String versNumber = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).value; JrpcgenConst vers = new JrpcgenConst(versId, versNumber, jrpcgen.baseClassname); RESULT = new JrpcgenVersionInfo(versId, versNumber, procs); if (jrpcgen.globalIdentifiers.put(versId, vers) != null) { parser.report_error("version identifier \"" + versId + "\" already defined", versIdleft); } versNumber = vers.resolveValue(); if (versNumber == null) { parser.report_error("Can not resolve version identifier \"" + versId + "\" to integer literal", versNumberleft); } // // We also need to fix up the procedure identifiers by appending // the version number. // int size = procs.size(); for (int idx = 0; idx < size; ++idx) { JrpcgenProcedureInfo procInfo = (JrpcgenProcedureInfo) procs.elementAt(idx); procInfo.procedureId += "_" + versNumber; JrpcgenConst proc = new JrpcgenConst(procInfo.procedureId, procInfo.procedureNumber, jrpcgen.baseClassname); if (jrpcgen.globalIdentifiers.put(procInfo.procedureId, proc) != null) { // FIXME line number parser.report_error("procedure identifier \"" + procInfo.procedureId + "\" already defined", 0); } } if (jrpcgen.debug) { System.out.println("VERSION " + versId + " = " + versNumber); for (int idx = 0; idx < size; ++idx) { JrpcgenProcedureInfo procInfo = (JrpcgenProcedureInfo) procs.elementAt(idx); System.out.print("PROCEDURE " + procInfo.resultType + " " + procInfo.procedureId + "("); if (procInfo.parameters == null) { System.out.print("void"); } else { for (int pidx = 0; pidx < procInfo.parameters.size(); ++pidx) { JrpcgenParamInfo paramInfo = (JrpcgenParamInfo) procInfo.parameters.elementAt(pidx); if (pidx > 0) { System.out.print(","); } System.out.print(paramInfo.parameterType); if (paramInfo.parameterName != null) { System.out.print(" " + paramInfo.parameterName); } } } System.out.println(") = " + procInfo.procedureNumber); } } CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(18/*version_def*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 7)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 31: // version_defs ::= version_defs version_def { Vector RESULT = null; int versionsleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left; int versionsright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).right; Vector versions = (Vector) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).value; int versionleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left; int versionright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right; JrpcgenVersionInfo version = (JrpcgenVersionInfo) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).value; versions.addElement(version); RESULT = versions; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(17/*version_defs*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 30: // version_defs ::= version_def { Vector RESULT = null; int versionleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left; int versionright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right; JrpcgenVersionInfo version = (JrpcgenVersionInfo) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).value; RESULT = new Vector(); RESULT.addElement(version); CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(17/*version_defs*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 29: // program_def ::= PROGRAM IDENTIFIER LBRACE version_defs RBRACE EQUAL value SEMICOLON { JrpcgenProgramInfo RESULT = null; int progIdleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 6)).left; int progIdright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 6)).right; String progId = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 6)).value; int versionsleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 4)).left; int versionsright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 4)).right; Vector versions = (Vector) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 4)).value; int progNumberleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left; int progNumberright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).right; String progNumber = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).value; JrpcgenConst prog = new JrpcgenConst(progId, progNumber, jrpcgen.baseClassname); RESULT = new JrpcgenProgramInfo(progId, progNumber, versions); if (jrpcgen.globalIdentifiers.put(progId, prog) != null) { parser.report_error("program identifier \"" + progId + "\" already defined", progIdleft); } if (jrpcgen.debug) { System.out.println("PROGRAM " + progId + " = " + progNumber); } CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(16/*program_def*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 7)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 28: // typedef_def ::= TYPEDEF declaration SEMICOLON { Object RESULT = null; int declleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left; int declright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).right; JrpcgenDeclaration decl = (JrpcgenDeclaration) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).value; if (jrpcgen.globalIdentifiers.put(decl.identifier, decl) != null) { parser.report_error("typedef identifier \"" + decl.identifier + "\" already defined", declleft); } if (jrpcgen.debug) { System.out.print("TYPEDEF "); decl.dump(); } CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(13/*typedef_def*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 27: // union_case ::= DEFAULT COLON declaration SEMICOLON { JrpcgenUnionArm RESULT = null; int elementleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left; int elementright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).right; JrpcgenDeclaration element = (JrpcgenDeclaration) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).value; RESULT = new JrpcgenUnionArm(null, element); CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(12/*union_case*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 26: // union_case ::= CASE value COLON declaration SEMICOLON { JrpcgenUnionArm RESULT = null; int valleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).left; int valright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).right; String val = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).value; int elementleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left; int elementright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).right; JrpcgenDeclaration element = (JrpcgenDeclaration) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).value; RESULT = new JrpcgenUnionArm(val, element); CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(12/*union_case*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 4)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 25: // union_case ::= CASE value COLON { JrpcgenUnionArm RESULT = null; int valleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left; int valright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).right; String val = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).value; RESULT = new JrpcgenUnionArm(val, null); CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(12/*union_case*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 24: // union_cases ::= union_cases union_case { Vector RESULT = null; int armsleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left; int armsright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).right; Vector arms = (Vector) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).value; int armleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left; int armright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right; JrpcgenUnionArm arm = (JrpcgenUnionArm) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).value; arms.addElement(arm); RESULT = arms; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(11/*union_cases*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 23: // union_cases ::= union_case { Vector RESULT = null; int armleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left; int armright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right; JrpcgenUnionArm arm = (JrpcgenUnionArm) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).value; RESULT = new Vector(); RESULT.addElement(arm); CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(11/*union_cases*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 22: // union_def ::= UNION IDENTIFIER SWITCH LPAREN declaration RPAREN LBRACE union_cases RBRACE SEMICOLON { Object RESULT = null; int idleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 8)).left; int idright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 8)).right; String id = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 8)).value; int descrimleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 5)).left; int descrimright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 5)).right; JrpcgenDeclaration descrim = (JrpcgenDeclaration) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 5)).value; int elementsleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).left; int elementsright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).right; Vector elements = (Vector) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).value; JrpcgenUnion uni = new JrpcgenUnion(id, descrim, elements); if (jrpcgen.globalIdentifiers.put(id, uni) != null) { parser.report_error("union identifier \"" + id + "\" already defined", idleft); } if (jrpcgen.debug) { uni.dump(); } CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(10/*union_def*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 9)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 21: // struct_def ::= STRUCT IDENTIFIER LBRACE declarations RBRACE SEMICOLON { Object RESULT = null; int idleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 4)).left; int idright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 4)).right; String id = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 4)).value; int elementsleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).left; int elementsright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).right; Vector elements = (Vector) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).value; JrpcgenStruct strct = new JrpcgenStruct(id, elements); if (jrpcgen.globalIdentifiers.put(id, strct) != null) { parser.report_error("struct identifier \"" + id + "\" already defined", idleft); } if (jrpcgen.debug) { strct.dump(); } CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(9/*struct_def*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 5)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 20: // enum_element ::= IDENTIFIER EQUAL value { JrpcgenConst RESULT = null; int idleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).left; int idright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).right; String id = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).value; int valleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left; int valright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right; String val = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).value; RESULT = new JrpcgenConst(id, val); if (jrpcgen.globalIdentifiers.put(id, RESULT) != null) { parser.report_error("identifier \"" + id + "\" already defined", idleft); } CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(8/*enum_element*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 19: // enum_element ::= IDENTIFIER { JrpcgenConst RESULT = null; int idleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left; int idright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right; String id = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).value; // // We don't know yet the value, so we don't specify one. The // value will be fixed up when the production for the complete // enumeration triggers. // RESULT = new JrpcgenConst(id, null); if (jrpcgen.globalIdentifiers.put(id, RESULT) != null) { parser.report_error("identifier \"" + id + "\" already defined", idleft); } CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(8/*enum_element*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 18: // enum_elements ::= enum_elements COMMA enum_element { Vector RESULT = null; int elementsleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).left; int elementsright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).right; Vector elements = (Vector) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).value; int elleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left; int elright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right; JrpcgenConst el = (JrpcgenConst) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).value; // // If no specific value has been assigned to this element of // an enumeration, increment value of previous element and // assign the new value to this element. BTW -- we let the // Java compiler do the calculation, so references to // other constants by name are valid. // if (el.value == null) { el.value = ((JrpcgenConst) elements.elementAt(elements.size() - 1)).value + "+1"; } elements.addElement(el); RESULT = elements; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(7/*enum_elements*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 17: // enum_elements ::= enum_element { Vector RESULT = null; int elleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left; int elright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right; JrpcgenConst el = (JrpcgenConst) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).value; // // If no specific value has been assigned to this element of // an enumeration, assign zero by default. // if (el.value == null) { el.value = "0"; } RESULT = new Vector(); RESULT.addElement(el); CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(7/*enum_elements*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 16: // enum_def ::= ENUM IDENTIFIER LBRACE enum_elements RBRACE SEMICOLON { Object RESULT = null; int idleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 4)).left; int idright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 4)).right; String id = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 4)).value; int elementsleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).left; int elementsright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).right; Vector elements = (Vector) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 2)).value; // // Fix up enclosure of enumeration elements, so we can later // use a full qualified identifier. // int size = elements.size(); for (int idx = 0; idx < size; ++idx) { JrpcgenConst c = (JrpcgenConst) elements.elementAt(idx); c.enclosure = id; } JrpcgenEnum type = new JrpcgenEnum(id, elements); if (jrpcgen.globalIdentifiers.put(id, type) != null) { parser.report_error("enum identifier \"" + id + "\" already defined", idleft); } if (jrpcgen.debug) { type.dump(); } CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(6/*enum_def*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 5)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 15: // constant_def ::= CONST IDENTIFIER EQUAL value SEMICOLON { Object RESULT = null; int idleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).left; int idright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).right; String id = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 3)).value; int valueleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left; int valueright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).right; String value = (String) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).value; JrpcgenConst type = new JrpcgenConst(id, value, jrpcgen.baseClassname); if (jrpcgen.globalIdentifiers.put(id, type) != null) { parser.report_error("const identifier \"" + id + "\" already defined", idleft); } if (jrpcgen.debug) { System.out.print("CONST "); type.dump(); System.out.println(); } CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(5/*constant_def*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 4)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 14: // definition ::= typedef_def { Object RESULT = null; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(4/*definition*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 13: // definition ::= union_def { Object RESULT = null; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(4/*definition*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 12: // definition ::= struct_def { Object RESULT = null; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(4/*definition*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 11: // definition ::= enum_def { Object RESULT = null; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(4/*definition*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 10: // definition ::= constant_def { Object RESULT = null; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(4/*definition*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 9: // definitions ::= definitions definition { Object RESULT = null; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(3/*definitions*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 8: // definitions ::= definition { Object RESULT = null; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(3/*definitions*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 7: // definitions_opt ::= definitions { Object RESULT = null; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(2/*definitions_opt*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 6: // definitions_opt ::= { Object RESULT = null; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(2/*definitions_opt*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 5: // program_defs ::= program_defs program_def { Vector RESULT = null; int progDefsleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left; int progDefsright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).right; Vector progDefs = (Vector) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).value; int progDefleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left; int progDefright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right; JrpcgenProgramInfo progDef = (JrpcgenProgramInfo) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).value; progDefs.addElement(progDef); RESULT = progDefs; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(14/*program_defs*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 4: // program_defs ::= program_def { Vector RESULT = null; int progDefleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left; int progDefright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right; JrpcgenProgramInfo progDef = (JrpcgenProgramInfo) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).value; RESULT = new Vector(); RESULT.addElement(progDef); CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(14/*program_defs*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 3: // program_defs_opt ::= program_defs { Object RESULT = null; int progDefsleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left; int progDefsright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right; Vector progDefs = (Vector) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).value; jrpcgen.programInfos = progDefs; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(15/*program_defs_opt*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 2: // program_defs_opt ::= { Object RESULT = null; jrpcgen.programInfos = new ArrayList<JrpcgenProgramInfo>(); CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(15/*program_defs_opt*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 1: // compilation_unit ::= definitions_opt program_defs_opt { Object RESULT = null; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(1/*compilation_unit*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } return CUP$JrpcgenParser$result; /*. . . . . . . . . . . . . . . . . . . .*/ case 0: // $START ::= compilation_unit EOF { Object RESULT = null; int start_valleft = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left; int start_valright = ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).right; Object start_val = (Object) ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).value; RESULT = start_val; CUP$JrpcgenParser$result = new org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol(0/*$START*/, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 1)).left, ((org.acplt.oncrpc.apps.jrpcgen.cup_runtime.Symbol) CUP$JrpcgenParser$stack.elementAt(CUP$JrpcgenParser$top - 0)).right, RESULT); } /* ACCEPT */ CUP$JrpcgenParser$parser.done_parsing(); return CUP$JrpcgenParser$result; /* . . . . . .*/ default: throw new Exception( "Invalid action number found in internal parse table"); } } }