/** Production table. */
protected static final short _production_table[][] =
unpackFromStrings(new String[] {
- "\000\056\000\002\002\003\000\002\002\004\000\002\002" +
- "\003\000\002\002\003\000\002\002\003\000\002\003\011" +
- "\000\002\004\004\000\002\004\002\000\002\005\011\000" +
- "\002\005\011\000\002\005\014\000\002\005\014\000\002" +
- "\006\004\000\002\006\002\000\002\007\005\000\002\007" +
- "\004\000\002\007\005\000\002\007\004\000\002\007\007" +
- "\000\002\007\007\000\002\007\010\000\002\007\010\000" +
- "\002\011\004\000\002\011\002\000\002\012\007\000\002" +
- "\013\004\000\002\013\002\000\002\014\006\000\002\014" +
- "\006\000\002\015\004\000\002\015\002\000\002\016\012" +
- "\000\002\017\003\000\002\017\005\000\002\017\002\000" +
- "\002\020\007\000\002\021\004\000\002\021\002\000\002" +
- "\022\004\000\002\022\003\000\002\023\007\000\002\024" +
- "\004\000\002\024\002\000\002\025\005\000\002\025\005" +
- "\000\002\025\010" });
+ "\000\060\000\002\002\003\000\002\002\004\000\002\002" +
+ "\003\000\002\003\013\000\002\004\004\000\002\004\002" +
+ "\000\002\005\011\000\002\005\011\000\002\005\014\000" +
+ "\002\005\014\000\002\006\004\000\002\006\002\000\002" +
+ "\007\005\000\002\007\004\000\002\007\005\000\002\007" +
+ "\004\000\002\007\007\000\002\007\007\000\002\007\010" +
+ "\000\002\007\010\000\002\011\004\000\002\011\002\000" +
+ "\002\012\007\000\002\013\004\000\002\013\002\000\002" +
+ "\014\006\000\002\014\006\000\002\015\004\000\002\015" +
+ "\002\000\002\016\012\000\002\017\003\000\002\017\005" +
+ "\000\002\017\002\000\002\020\004\000\002\020\002\000" +
+ "\002\021\007\000\002\022\004\000\002\022\002\000\002" +
+ "\023\004\000\002\023\003\000\002\024\004\000\002\024" +
+ "\002\000\002\025\007\000\002\026\004\000\002\026\002" +
+ "\000\002\027\005\000\002\027\005\000\002\027\010" });
/** Access to production table. */
public short[][] production_table() {return _production_table;}
/** Parse-action table. */
protected static final short[][] _action_table =
unpackFromStrings(new String[] {
- "\000\157\000\014\002\uffe3\015\012\022\uffe3\025\007\026" +
- "\011\001\002\000\004\002\001\001\002\000\004\002\ufffd" +
- "\001\002\000\004\002\ufffe\001\002\000\004\030\153\001" +
- "\002\000\006\002\uffff\022\137\001\002\000\004\030\117" +
- "\001\002\000\004\016\015\001\002\000\004\002\014\001" +
- "\002\000\004\002\000\001\002\000\004\030\016\001\002" +
- "\000\004\012\017\001\002\000\010\013\ufffa\015\ufffa\017" +
- "\ufffa\001\002\000\010\013\uffea\015\022\017\uffea\001\002" +
- "\000\010\013\ufffb\015\ufffb\017\ufffb\001\002\000\006\027" +
- "\045\030\044\001\002\000\006\013\026\017\025\001\002" +
- "\000\006\013\uffeb\017\uffeb\001\002\000\004\030\027\001" +
- "\002\000\004\002\ufffc\001\002\000\004\012\030\001\002" +
- "\000\010\013\uffe7\020\uffe7\021\uffe7\001\002\000\010\013" +
- "\034\020\033\021\035\001\002\000\010\013\uffe8\020\uffe8" +
- "\021\uffe8\001\002\000\004\014\041\001\002\000\006\013" +
- "\uffe9\017\uffe9\001\002\000\004\014\036\001\002\000\004" +
- "\031\037\001\002\000\004\004\040\001\002\000\010\013" +
- "\uffe5\020\uffe5\021\uffe5\001\002\000\004\031\042\001\002" +
- "\000\004\004\043\001\002\000\010\013\uffe6\020\uffe6\021" +
- "\uffe6\001\002\000\006\010\073\030\074\001\002\000\004" +
- "\030\046\001\002\000\004\006\047\001\002\000\010\007" +
- "\ufff4\027\ufff4\030\ufff4\001\002\000\010\007\052\027\054" +
- "\030\051\001\002\000\006\010\060\030\061\001\002\000" +
- "\004\004\057\001\002\000\010\007\ufff5\027\ufff5\030\ufff5" +
- "\001\002\000\004\030\055\001\002\000\012\005\056\007" +
- "\ufff2\027\ufff2\030\ufff2\001\002\000\010\007\ufff3\027\ufff3" +
- "\030\ufff3\001\002\000\010\013\ufff9\015\ufff9\017\ufff9\001" +
- "\002\000\006\027\064\030\063\001\002\000\012\005\062" +
- "\007\ufff0\027\ufff0\030\ufff0\001\002\000\010\007\ufff1\027" +
- "\ufff1\030\ufff1\001\002\000\004\011\070\001\002\000\004" +
- "\011\065\001\002\000\004\030\066\001\002\000\012\005" +
- "\067\007\uffef\027\uffef\030\uffef\001\002\000\010\007\uffed" +
- "\027\uffed\030\uffed\001\002\000\004\030\071\001\002\000" +
- "\012\005\072\007\uffee\027\uffee\030\uffee\001\002\000\010" +
- "\007\uffec\027\uffec\030\uffec\001\002\000\006\027\102\030" +
- "\101\001\002\000\004\006\075\001\002\000\010\007\ufff4" +
- "\027\ufff4\030\ufff4\001\002\000\010\007\077\027\054\030" +
- "\051\001\002\000\004\004\100\001\002\000\010\013\ufff8" +
- "\015\ufff8\017\ufff8\001\002\000\004\011\111\001\002\000" +
- "\004\011\103\001\002\000\004\030\104\001\002\000\004" +
- "\006\105\001\002\000\010\007\ufff4\027\ufff4\030\ufff4\001" +
- "\002\000\010\007\107\027\054\030\051\001\002\000\004" +
- "\004\110\001\002\000\010\013\ufff7\015\ufff7\017\ufff7\001" +
- "\002\000\004\030\112\001\002\000\004\006\113\001\002" +
- "\000\010\007\ufff4\027\ufff4\030\ufff4\001\002\000\010\007" +
- "\115\027\054\030\051\001\002\000\004\004\116\001\002" +
- "\000\010\013\ufff6\015\ufff6\017\ufff6\001\002\000\004\012" +
- "\120\001\002\000\010\013\uffd7\027\uffd7\030\uffd7\001\002" +
- "\000\010\013\123\027\125\030\122\001\002\000\006\010" +
- "\130\030\131\001\002\000\004\002\uffd9\001\002\000\010" +
- "\013\uffd8\027\uffd8\030\uffd8\001\002\000\004\030\126\001" +
- "\002\000\004\004\127\001\002\000\010\013\uffd6\027\uffd6" +
- "\030\uffd6\001\002\000\004\030\133\001\002\000\004\004" +
- "\132\001\002\000\010\013\uffd5\027\uffd5\030\uffd5\001\002" +
- "\000\004\011\134\001\002\000\004\030\135\001\002\000" +
- "\004\004\136\001\002\000\010\013\uffd4\027\uffd4\030\uffd4" +
- "\001\002\000\004\030\141\001\002\000\006\002\uffe4\022" +
- "\uffe4\001\002\000\004\023\142\001\002\000\010\005\uffdf" +
- "\024\uffdf\030\144\001\002\000\006\005\145\024\146\001" +
- "\002\000\006\005\uffe1\024\uffe1\001\002\000\004\030\152" +
- "\001\002\000\004\016\147\001\002\000\004\030\150\001" +
- "\002\000\004\004\151\001\002\000\006\002\uffe2\022\uffe2" +
- "\001\002\000\006\005\uffe0\024\uffe0\001\002\000\004\012" +
- "\154\001\002\000\006\013\uffdc\030\uffdc\001\002\000\006" +
- "\013\160\030\157\001\002\000\006\013\uffdd\030\uffdd\001" +
- "\002\000\010\005\161\013\uffda\030\uffda\001\002\000\004" +
- "\002\uffde\001\002\000\006\013\uffdb\030\uffdb\001\002" });
+ "\000\161\000\010\002\uffe5\015\006\022\uffe5\001\002\000" +
+ "\004\002\001\001\002\000\006\002\uffff\022\150\001\002" +
+ "\000\004\016\011\001\002\000\004\002\010\001\002\000" +
+ "\004\002\000\001\002\000\004\030\012\001\002\000\004" +
+ "\012\013\001\002\000\014\013\ufffc\015\ufffc\017\ufffc\025" +
+ "\ufffc\026\ufffc\001\002\000\014\013\uffec\015\016\017\uffec" +
+ "\025\uffec\026\uffec\001\002\000\014\013\ufffd\015\ufffd\017" +
+ "\ufffd\025\ufffd\026\ufffd\001\002\000\006\027\076\030\075" +
+ "\001\002\000\012\013\uffdf\017\022\025\uffdf\026\uffdf\001" +
+ "\002\000\010\013\uffd8\025\042\026\uffd8\001\002\000\012" +
+ "\013\uffed\017\uffed\025\uffed\026\uffed\001\002\000\004\030" +
+ "\023\001\002\000\004\012\024\001\002\000\010\013\uffe9" +
+ "\020\uffe9\021\uffe9\001\002\000\010\013\030\020\027\021" +
+ "\031\001\002\000\010\013\uffea\020\uffea\021\uffea\001\002" +
+ "\000\004\014\035\001\002\000\012\013\uffeb\017\uffeb\025" +
+ "\uffeb\026\uffeb\001\002\000\004\014\032\001\002\000\004" +
+ "\031\033\001\002\000\004\004\034\001\002\000\010\013" +
+ "\uffe7\020\uffe7\021\uffe7\001\002\000\004\031\036\001\002" +
+ "\000\004\004\037\001\002\000\010\013\uffe8\020\uffe8\021" +
+ "\uffe8\001\002\000\006\013\054\026\053\001\002\000\010" +
+ "\013\uffe0\025\uffe0\026\uffe0\001\002\000\004\030\043\001" +
+ "\002\000\004\012\044\001\002\000\006\013\uffdc\030\uffdc" +
+ "\001\002\000\006\013\050\030\047\001\002\000\006\013" +
+ "\uffdd\030\uffdd\001\002\000\010\005\051\013\uffda\030\uffda" +
+ "\001\002\000\010\013\uffde\025\uffde\026\uffde\001\002\000" +
+ "\006\013\uffdb\030\uffdb\001\002\000\006\013\uffd9\026\uffd9" +
+ "\001\002\000\004\030\055\001\002\000\004\002\ufffe\001" +
+ "\002\000\004\012\056\001\002\000\010\013\uffd5\027\uffd5" +
+ "\030\uffd5\001\002\000\010\013\061\027\062\030\060\001" +
+ "\002\000\006\010\066\030\067\001\002\000\006\013\uffd7" +
+ "\026\uffd7\001\002\000\004\030\064\001\002\000\010\013" +
+ "\uffd6\027\uffd6\030\uffd6\001\002\000\004\004\065\001\002" +
+ "\000\010\013\uffd4\027\uffd4\030\uffd4\001\002\000\004\030" +
+ "\071\001\002\000\004\004\070\001\002\000\010\013\uffd3" +
+ "\027\uffd3\030\uffd3\001\002\000\004\011\072\001\002\000" +
+ "\004\030\073\001\002\000\004\004\074\001\002\000\010" +
+ "\013\uffd2\027\uffd2\030\uffd2\001\002\000\006\010\124\030" +
+ "\125\001\002\000\004\030\077\001\002\000\004\006\100" +
+ "\001\002\000\010\007\ufff6\027\ufff6\030\ufff6\001\002\000" +
+ "\010\007\103\027\105\030\102\001\002\000\006\010\111" +
+ "\030\112\001\002\000\004\004\110\001\002\000\010\007" +
+ "\ufff7\027\ufff7\030\ufff7\001\002\000\004\030\106\001\002" +
+ "\000\012\005\107\007\ufff4\027\ufff4\030\ufff4\001\002\000" +
+ "\010\007\ufff5\027\ufff5\030\ufff5\001\002\000\014\013\ufffb" +
+ "\015\ufffb\017\ufffb\025\ufffb\026\ufffb\001\002\000\006\027" +
+ "\115\030\114\001\002\000\012\005\113\007\ufff2\027\ufff2" +
+ "\030\ufff2\001\002\000\010\007\ufff3\027\ufff3\030\ufff3\001" +
+ "\002\000\004\011\121\001\002\000\004\011\116\001\002" +
+ "\000\004\030\117\001\002\000\012\005\120\007\ufff1\027" +
+ "\ufff1\030\ufff1\001\002\000\010\007\uffef\027\uffef\030\uffef" +
+ "\001\002\000\004\030\122\001\002\000\012\005\123\007" +
+ "\ufff0\027\ufff0\030\ufff0\001\002\000\010\007\uffee\027\uffee" +
+ "\030\uffee\001\002\000\006\027\133\030\132\001\002\000" +
+ "\004\006\126\001\002\000\010\007\ufff6\027\ufff6\030\ufff6" +
+ "\001\002\000\010\007\130\027\105\030\102\001\002\000" +
+ "\004\004\131\001\002\000\014\013\ufffa\015\ufffa\017\ufffa" +
+ "\025\ufffa\026\ufffa\001\002\000\004\011\142\001\002\000" +
+ "\004\011\134\001\002\000\004\030\135\001\002\000\004" +
+ "\006\136\001\002\000\010\007\ufff6\027\ufff6\030\ufff6\001" +
+ "\002\000\010\007\140\027\105\030\102\001\002\000\004" +
+ "\004\141\001\002\000\014\013\ufff9\015\ufff9\017\ufff9\025" +
+ "\ufff9\026\ufff9\001\002\000\004\030\143\001\002\000\004" +
+ "\006\144\001\002\000\010\007\ufff6\027\ufff6\030\ufff6\001" +
+ "\002\000\010\007\146\027\105\030\102\001\002\000\004" +
+ "\004\147\001\002\000\014\013\ufff8\015\ufff8\017\ufff8\025" +
+ "\ufff8\026\ufff8\001\002\000\004\030\152\001\002\000\006" +
+ "\002\uffe6\022\uffe6\001\002\000\004\023\153\001\002\000" +
+ "\010\005\uffe1\024\uffe1\030\155\001\002\000\006\005\156" +
+ "\024\157\001\002\000\006\005\uffe3\024\uffe3\001\002\000" +
+ "\004\030\163\001\002\000\004\016\160\001\002\000\004" +
+ "\030\161\001\002\000\004\004\162\001\002\000\006\002" +
+ "\uffe4\022\uffe4\001\002\000\006\005\uffe2\024\uffe2\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\157\000\014\002\012\003\003\015\007\020\005\023" +
- "\004\001\001\000\002\001\001\000\002\001\001\000\002" +
- "\001\001\000\002\001\001\000\004\016\137\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\004" +
- "\017\001\001\000\006\005\020\011\022\001\001\000\002" +
- "\001\001\000\002\001\001\000\004\012\023\001\001\000" +
- "\002\001\001\000\002\001\001\000\002\001\001\000\002" +
- "\001\001\000\004\013\030\001\001\000\004\014\031\001" +
- "\001\000\002\001\001\000\002\001\001\000\002\001\001" +
+ "\000\161\000\010\002\006\003\003\015\004\001\001\000" +
+ "\002\001\001\000\004\016\150\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" +
+ "\002\001\001\000\004\004\013\001\001\000\006\005\014" +
+ "\011\016\001\001\000\002\001\001\000\002\001\001\000" +
+ "\006\012\020\020\017\001\001\000\006\021\040\024\037" +
"\001\001\000\002\001\001\000\002\001\001\000\002\001" +
- "\001\000\004\006\047\001\001\000\004\007\052\001\001" +
+ "\001\000\004\013\024\001\001\000\004\014\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\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" +
+ "\001\000\004\025\051\001\001\000\002\001\001\000\002" +
+ "\001\001\000\002\001\001\000\004\022\044\001\001\000" +
+ "\004\023\045\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\006\075\001\001\000\004\007\052\001" +
+ "\002\001\001\000\002\001\001\000\002\001\001\000\004" +
+ "\026\056\001\001\000\004\027\062\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\006\105\001\001\000\004\007\052\001\001\000\002" +
+ "\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\006\113\001\001\000\004\007\052\001\001" +
- "\000\002\001\001\000\002\001\001\000\002\001\001\000" +
- "\004\024\120\001\001\000\004\025\123\001\001\000\002" +
+ "\001\000\002\001\001\000\002\001\001\000\004\006\100" +
+ "\001\001\000\004\007\103\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" +
"\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\017" +
- "\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\002\001\001\000\002\001\001\000\002\001\001" +
- "\000\004\021\154\001\001\000\004\022\155\001\001\000" +
+ "\001\001\000\002\001\001\000\002\001\001\000\004\006" +
+ "\126\001\001\000\004\007\103\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\006\136\001\001" +
+ "\000\004\007\103\001\001\000\002\001\001\000\002\001" +
+ "\001\000\002\001\001\000\002\001\001\000\004\006\144" +
+ "\001\001\000\004\007\103\001\001\000\002\001\001\000" +
"\002\001\001\000\002\001\001\000\002\001\001\000\002" +
- "\001\001" });
+ "\001\001\000\004\017\153\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" });
/** Access to <code>reduce_goto</code> table. */
public short[][] reduce_table() {return _reduce_table;}
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 3: // policy ::= enumdec
+ case 3: // intface ::= PUBLIC INTERFACE IDENT BEGIN methlist capablist enumdeclist structdeclist END
{
ParseNode RESULT =null;
- int enleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
- int enright = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
- ParseNode en = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
-
- ParseNode pn = new ParseNode("policy");
- pn.addChild(en);
- RESULT = pn;
-
- CUP$Parser$result = parser.getSymbolFactory().newSymbol("policy",0, ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
- }
- return CUP$Parser$result;
-
- /*. . . . . . . . . . . . . . . . . . . .*/
- case 4: // policy ::= structdec
- {
- ParseNode RESULT =null;
- int stleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
- int stright = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
- ParseNode st = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
-
- ParseNode pn = new ParseNode("policy");
- pn.addChild(st);
- RESULT = pn;
-
- CUP$Parser$result = parser.getSymbolFactory().newSymbol("policy",0, ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
- }
- return CUP$Parser$result;
-
- /*. . . . . . . . . . . . . . . . . . . .*/
- case 5: // intface ::= PUBLIC INTERFACE IDENT BEGIN methlist capablist END
- {
- ParseNode RESULT =null;
- int idintleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).left;
- int idintright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).right;
- Object idint = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-4)).value;
- int mlleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
- int mlright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
- ParseNode ml = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
- int clleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
- int clright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
- ParseNode cl = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
+ int idintleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)).left;
+ int idintright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)).right;
+ Object idint = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-6)).value;
+ int mlleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).left;
+ int mlright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).right;
+ ParseNode ml = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-4)).value;
+ int clleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
+ int clright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).right;
+ ParseNode cl = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-3)).value;
+ int elleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
+ int elright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
+ ParseNode el = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
+ int slleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
+ int slright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
+ ParseNode sl = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
ParseNode pn = new ParseNode("interface");
pn.addChild("intface_ident").setLiteral(idint);
pn.addChild(ml);
pn.addChild(cl);
+ pn.addChild(el);
+ pn.addChild(sl);
RESULT = pn;
- CUP$Parser$result = parser.getSymbolFactory().newSymbol("intface",1, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
+ CUP$Parser$result = parser.getSymbolFactory().newSymbol("intface",1, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-8)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
}
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 6: // methlist ::= methlist meth
+ case 4: // methlist ::= methlist meth
{
ParseNode RESULT =null;
int mlleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 7: // methlist ::=
+ case 5: // methlist ::=
{
ParseNode RESULT =null;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 8: // meth ::= PUBLIC TYPE IDENT LPAR paramlist RPAR SEMICOLON
+ case 6: // meth ::= PUBLIC TYPE IDENT LPAR paramlist RPAR SEMICOLON
{
ParseNode RESULT =null;
int typemethleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 9: // meth ::= PUBLIC IDENT IDENT LPAR paramlist RPAR SEMICOLON
+ case 7: // meth ::= PUBLIC IDENT IDENT LPAR paramlist RPAR SEMICOLON
{
ParseNode RESULT =null;
int clsmethleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 10: // meth ::= PUBLIC IDENT LANG TYPE RANG IDENT LPAR paramlist RPAR SEMICOLON
+ case 8: // meth ::= PUBLIC IDENT LANG TYPE RANG IDENT LPAR paramlist RPAR SEMICOLON
{
ParseNode RESULT =null;
int clsmethleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-8)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 11: // meth ::= PUBLIC IDENT LANG IDENT RANG IDENT LPAR paramlist RPAR SEMICOLON
+ case 9: // meth ::= PUBLIC IDENT LANG IDENT RANG IDENT LPAR paramlist RPAR SEMICOLON
{
ParseNode RESULT =null;
int clsmethleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-8)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 12: // paramlist ::= paramlist param
+ case 10: // paramlist ::= paramlist param
{
ParseNode RESULT =null;
int plleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 13: // paramlist ::=
+ case 11: // paramlist ::=
{
ParseNode RESULT =null;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 14: // param ::= TYPE IDENT COMMA
+ case 12: // param ::= TYPE IDENT COMMA
{
ParseNode RESULT =null;
int typeprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 15: // param ::= TYPE IDENT
+ case 13: // param ::= TYPE IDENT
{
ParseNode RESULT =null;
int typeprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 16: // param ::= IDENT IDENT COMMA
+ case 14: // param ::= IDENT IDENT COMMA
{
ParseNode RESULT =null;
int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 17: // param ::= IDENT IDENT
+ case 15: // param ::= IDENT IDENT
{
ParseNode RESULT =null;
int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 18: // param ::= IDENT LANG TYPE RANG IDENT
+ case 16: // param ::= IDENT LANG TYPE RANG IDENT
{
ParseNode RESULT =null;
int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 19: // param ::= IDENT LANG IDENT RANG IDENT
+ case 17: // param ::= IDENT LANG IDENT RANG IDENT
{
ParseNode RESULT =null;
int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 20: // param ::= IDENT LANG TYPE RANG IDENT COMMA
+ case 18: // param ::= IDENT LANG TYPE RANG IDENT COMMA
{
ParseNode RESULT =null;
int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 21: // param ::= IDENT LANG IDENT RANG IDENT COMMA
+ case 19: // param ::= IDENT LANG IDENT RANG IDENT COMMA
{
ParseNode RESULT =null;
int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 22: // capablist ::= capablist capab
+ case 20: // capablist ::= capablist capab
{
ParseNode RESULT =null;
int clleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 23: // capablist ::=
+ case 21: // capablist ::=
{
ParseNode RESULT =null;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 24: // capab ::= CAPABILITY IDENT BEGIN capabcont END
+ case 22: // capab ::= CAPABILITY IDENT BEGIN capabcont END
{
ParseNode RESULT =null;
int idcapleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 25: // capabcont ::= capabcont cont
+ case 23: // capabcont ::= capabcont cont
{
ParseNode RESULT =null;
int ccontleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 26: // capabcont ::=
+ case 24: // capabcont ::=
{
ParseNode RESULT =null;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 27: // cont ::= DESCRIPTION ASSIGN STRINGCONST SEMICOLON
+ case 25: // cont ::= DESCRIPTION ASSIGN STRINGCONST SEMICOLON
{
ParseNode RESULT =null;
int dscleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 28: // cont ::= METHOD ASSIGN STRINGCONST SEMICOLON
+ case 26: // cont ::= METHOD ASSIGN STRINGCONST SEMICOLON
{
ParseNode RESULT =null;
int mtdleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 29: // reqlist ::= reqlist require
+ case 27: // reqlist ::= reqlist require
{
ParseNode RESULT =null;
int rlleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 30: // reqlist ::=
+ case 28: // reqlist ::=
{
ParseNode RESULT =null;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 31: // require ::= REQUIRES IDENT WITH capintlist AS INTERFACE IDENT SEMICOLON
+ case 29: // require ::= REQUIRES IDENT WITH capintlist AS INTERFACE IDENT SEMICOLON
{
ParseNode RESULT =null;
int idintleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 32: // capintlist ::= IDENT
+ case 30: // capintlist ::= IDENT
{
ParseNode RESULT =null;
int idcapleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 33: // capintlist ::= capintlist COMMA IDENT
+ case 31: // capintlist ::= capintlist COMMA IDENT
{
ParseNode RESULT =null;
int cilleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 34: // capintlist ::=
+ case 32: // capintlist ::=
{
ParseNode RESULT =null;
}
return CUP$Parser$result;
+ /*. . . . . . . . . . . . . . . . . . . .*/
+ case 33: // enumdeclist ::= enumdeclist enumdec
+ {
+ ParseNode RESULT =null;
+ int elleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
+ int elright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
+ ParseNode el = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
+ int edleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
+ int edright = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
+ ParseNode ed = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
+
+ el.addChild(ed);
+ RESULT = el;
+
+ CUP$Parser$result = parser.getSymbolFactory().newSymbol("enumdeclist",14, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
+ }
+ return CUP$Parser$result;
+
+ /*. . . . . . . . . . . . . . . . . . . .*/
+ case 34: // enumdeclist ::=
+ {
+ ParseNode RESULT =null;
+
+ ParseNode pn = new ParseNode("enum_dec_list");
+ RESULT = pn;
+
+ CUP$Parser$result = parser.getSymbolFactory().newSymbol("enumdeclist",14, ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
+ }
+ return CUP$Parser$result;
+
/*. . . . . . . . . . . . . . . . . . . .*/
case 35: // enumdec ::= ENUM IDENT BEGIN enumlist END
{
pn.addChild(el);
RESULT = pn;
- CUP$Parser$result = parser.getSymbolFactory().newSymbol("enumdec",14, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
+ CUP$Parser$result = parser.getSymbolFactory().newSymbol("enumdec",15, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
}
return CUP$Parser$result;
el.addChild(e);
RESULT = el;
- CUP$Parser$result = parser.getSymbolFactory().newSymbol("enumlist",15, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
+ CUP$Parser$result = parser.getSymbolFactory().newSymbol("enumlist",16, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
}
return CUP$Parser$result;
ParseNode pn = new ParseNode("enum_list");
RESULT = pn;
- CUP$Parser$result = parser.getSymbolFactory().newSymbol("enumlist",15, ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
+ CUP$Parser$result = parser.getSymbolFactory().newSymbol("enumlist",16, ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
}
return CUP$Parser$result;
pn.addChild("enum_ident").setLiteral(idenum);
RESULT = pn;
- CUP$Parser$result = parser.getSymbolFactory().newSymbol("enummem",16, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
+ CUP$Parser$result = parser.getSymbolFactory().newSymbol("enummem",17, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
}
return CUP$Parser$result;
pn.addChild("enum_ident").setLiteral(idenum);
RESULT = pn;
- CUP$Parser$result = parser.getSymbolFactory().newSymbol("enummem",16, ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
+ CUP$Parser$result = parser.getSymbolFactory().newSymbol("enummem",17, ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
}
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 40: // structdec ::= STRUCT IDENT BEGIN structlist END
+ case 40: // structdeclist ::= structdeclist structdec
+ {
+ ParseNode RESULT =null;
+ int slleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
+ int slright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
+ ParseNode sl = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
+ int sdleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
+ int sdright = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
+ ParseNode sd = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
+
+ sl.addChild(sd);
+ RESULT = sl;
+
+ CUP$Parser$result = parser.getSymbolFactory().newSymbol("structdeclist",18, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
+ }
+ return CUP$Parser$result;
+
+ /*. . . . . . . . . . . . . . . . . . . .*/
+ case 41: // structdeclist ::=
+ {
+ ParseNode RESULT =null;
+
+ ParseNode pn = new ParseNode("struct_dec_list");
+ RESULT = pn;
+
+ CUP$Parser$result = parser.getSymbolFactory().newSymbol("structdeclist",18, ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
+ }
+ return CUP$Parser$result;
+
+ /*. . . . . . . . . . . . . . . . . . . .*/
+ case 42: // structdec ::= STRUCT IDENT BEGIN structlist END
{
ParseNode RESULT =null;
int idstructdecleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
pn.addChild(sl);
RESULT = pn;
- CUP$Parser$result = parser.getSymbolFactory().newSymbol("structdec",17, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
+ CUP$Parser$result = parser.getSymbolFactory().newSymbol("structdec",19, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
}
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 41: // structlist ::= structlist structmem
+ case 43: // structlist ::= structlist structmem
{
ParseNode RESULT =null;
int slleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
sl.addChild(s);
RESULT = sl;
- CUP$Parser$result = parser.getSymbolFactory().newSymbol("structlist",18, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
+ CUP$Parser$result = parser.getSymbolFactory().newSymbol("structlist",20, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
}
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 42: // structlist ::=
+ case 44: // structlist ::=
{
ParseNode RESULT =null;
- ParseNode pn = new ParseNode("enum_list");
+ ParseNode pn = new ParseNode("struct_list");
RESULT = pn;
- CUP$Parser$result = parser.getSymbolFactory().newSymbol("structlist",18, ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
+ CUP$Parser$result = parser.getSymbolFactory().newSymbol("structlist",20, ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
}
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 43: // structmem ::= TYPE IDENT SEMICOLON
+ case 45: // structmem ::= TYPE IDENT SEMICOLON
{
ParseNode RESULT =null;
int typestrleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
pn.addChild("struct_ident").setLiteral(idstr);
RESULT = pn;
- CUP$Parser$result = parser.getSymbolFactory().newSymbol("structmem",19, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
+ CUP$Parser$result = parser.getSymbolFactory().newSymbol("structmem",21, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
}
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 44: // structmem ::= IDENT IDENT SEMICOLON
+ case 46: // structmem ::= IDENT IDENT SEMICOLON
{
ParseNode RESULT =null;
int clsstrleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
pn.addChild("struct_ident").setLiteral(idstr);
RESULT = pn;
- CUP$Parser$result = parser.getSymbolFactory().newSymbol("structmem",19, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
+ CUP$Parser$result = parser.getSymbolFactory().newSymbol("structmem",21, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
}
return CUP$Parser$result;
/*. . . . . . . . . . . . . . . . . . . .*/
- case 45: // structmem ::= IDENT LANG IDENT RANG IDENT SEMICOLON
+ case 47: // structmem ::= IDENT LANG IDENT RANG IDENT SEMICOLON
{
ParseNode RESULT =null;
int clsstrleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).left;
pn.addChild("struct_ident").setLiteral(idstr);
RESULT = pn;
- CUP$Parser$result = parser.getSymbolFactory().newSymbol("structmem",19, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
+ CUP$Parser$result = parser.getSymbolFactory().newSymbol("structmem",21, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
}
return CUP$Parser$result;