KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > ppg > parse > Parser


1
2 //----------------------------------------------------
3
// The following code was generated by CUP v0.10k
4
// Fri Jul 01 17:49:55 EDT 2005
5
//----------------------------------------------------
6

7 package ppg.parse;
8
9 import java.io.*;
10 import java.util.*;
11 import java_cup.runtime.Symbol;
12 import ppg.*;
13 import ppg.atoms.*;
14 import ppg.cmds.*;
15 import ppg.code.*;
16 import ppg.lex.*;
17 import ppg.spec.*;
18
19 /** CUP v0.10k generated parser.
20   * @version Fri Jul 01 17:49:55 EDT 2005
21   */

22 public class Parser
23  extends java_cup.runtime.lr_parser
24 {
25   /** Default constructor. */
26   public Parser() {super();}
27
28   /** Constructor which sets the default scanner. */
29   public Parser(java_cup.runtime.Scanner s) {super(s);}
30
31   /** Production table. */
32   protected static final short _production_table[][] =
33     unpackFromStrings(new String JavaDoc[] {
34     "\000\147\000\002\002\004\000\002\016\003\000\002\016" +
35     "\003\000\002\017\012\000\002\022\004\000\002\064\003" +
36     "\000\002\064\002\000\002\031\003\000\002\031\004\000" +
37     "\002\032\006\000\002\032\003\000\002\034\004\000\002" +
38     "\034\003\000\002\033\007\000\002\025\004\000\002\025" +
39     "\002\000\002\036\004\000\002\036\006\000\002\036\006" +
40     "\000\002\036\005\000\002\035\005\000\002\035\003\000" +
41     "\002\003\003\000\002\003\003\000\002\003\002\000\002" +
42     "\030\010\000\002\030\007\000\002\040\004\000\002\040" +
43     "\003\000\002\037\006\000\002\041\003\000\002\042\003" +
44     "\000\002\027\005\000\002\027\003\000\002\005\005\000" +
45     "\002\005\003\000\002\026\004\000\002\026\002\000\002" +
46     "\004\004\000\002\004\003\000\002\044\004\000\002\044" +
47     "\002\000\002\043\003\000\002\047\003\000\002\011\004" +
48     "\000\002\011\003\000\002\006\003\000\002\006\002\000" +
49     "\002\020\011\000\002\050\005\000\002\050\002\000\002" +
50     "\061\004\000\002\061\002\000\002\052\005\000\002\065" +
51     "\004\000\002\065\002\000\002\010\003\000\002\010\003" +
52     "\000\002\010\003\000\002\010\003\000\002\007\006\000" +
53     "\002\012\006\000\002\012\007\000\002\023\002\000\002" +
54     "\023\005\000\002\023\005\000\002\013\006\000\002\014" +
55     "\006\000\002\063\004\000\002\063\003\000\002\073\005" +
56     "\000\002\073\004\000\002\073\005\000\002\073\004\000" +
57     "\002\071\004\000\002\072\004\000\002\062\005\000\002" +
58     "\062\003\000\002\060\005\000\002\060\003\000\002\070" +
59     "\003\000\002\070\002\000\002\067\004\000\002\067\003" +
60     "\000\002\015\006\000\002\015\006\000\002\015\006\000" +
61     "\002\066\005\000\002\066\003\000\002\045\003\000\002" +
62     "\046\003\000\002\054\006\000\002\054\002\000\002\053" +
63     "\005\000\002\053\003\000\002\051\005\000\002\051\003" +
64     "\000\002\055\003\000\002\055\005\000\002\057\003\000" +
65     "\002\056\003\000\002\021\003\000\002\024\003" });
66
67   /** Access to production table. */
68   public short[][] production_table() {return _production_table;}
69
70   /** Parse-action table. */
71   protected static final short[][] _action_table =
72     unpackFromStrings(new String JavaDoc[] {
73     "\000\271\000\026\004\010\021\uffcf\022\uffcf\027\006\030" +
74     "\uffcf\032\uffcf\033\uffcf\034\uffcf\035\uffcf\036\uffcf\001\002" +
75     "\000\004\002\273\001\002\000\022\021\uffcd\022\uffcd\030" +
76     "\uffcd\032\uffcd\033\uffcd\034\uffcd\035\uffcd\036\uffcd\001\002" +
77     "\000\004\047\052\001\002\000\004\002\000\001\002\000" +
78     "\004\046\254\001\002\000\004\002\uffff\001\002\000\030" +
79     "\021\uffcf\022\uffcf\027\006\030\uffcf\032\uffcf\033\uffcf\034" +
80     "\uffcf\035\uffcf\036\uffcf\040\uffcf\042\uffcf\001\002\000\026" +
81     "\021\uffcd\022\uffcd\030\uffcd\032\uffcd\033\uffcd\034\uffcd\035" +
82     "\uffcd\036\uffcd\040\uffcd\042\uffcd\001\002\000\026\021\uffca" +
83     "\022\uffca\030\016\032\uffca\033\uffca\034\uffca\035\uffca\036" +
84     "\uffca\040\uffca\042\uffca\001\002\000\026\021\uffce\022\uffce" +
85     "\030\uffce\032\uffce\033\uffce\034\uffce\035\uffce\036\uffce\040" +
86     "\uffce\042\uffce\001\002\000\004\047\052\001\002\000\024" +
87     "\021\031\022\030\032\022\033\021\034\023\035\034\036" +
88     "\035\040\ufffb\042\ufffb\001\002\000\024\021\uffcb\022\uffcb" +
89     "\032\uffcb\033\uffcb\034\uffcb\035\uffcb\036\uffcb\040\uffcb\042" +
90     "\uffcb\001\002\000\006\031\234\047\052\001\002\000\004" +
91     "\031\231\001\002\000\004\021\230\001\002\000\024\021" +
92     "\uffc8\022\uffc8\032\uffc8\033\uffc8\034\uffc8\035\uffc8\036\uffc8" +
93     "\040\uffc8\042\uffc8\001\002\000\004\047\052\001\002\000" +
94     "\016\021\uffbc\022\uffbc\034\uffbc\040\uffbc\042\uffbc\047\uffbc" +
95     "\001\002\000\024\021\uffc6\022\uffc6\032\uffc6\033\uffc6\034" +
96     "\uffc6\035\uffc6\036\uffc6\040\uffc6\042\uffc6\001\002\000\004" +
97     "\047\uffd4\001\002\000\004\047\052\001\002\000\024\021" +
98     "\uffc9\022\uffc9\032\uffc9\033\uffc9\034\uffc9\035\uffc9\036\uffc9" +
99     "\040\uffc9\042\uffc9\001\002\000\014\021\031\022\030\034" +
100     "\023\040\ufffc\042\ufffc\001\002\000\004\037\172\001\002" +
101     "\000\004\037\166\001\002\000\006\040\uffb0\042\042\001" +
102     "\002\000\024\021\uffc7\022\uffc7\032\uffc7\033\uffc7\034\uffc7" +
103     "\035\uffc7\036\uffc7\040\uffc7\042\uffc7\001\002\000\004\040" +
104     "\ufffa\001\002\000\004\040\073\001\002\000\012\015\067" +
105     "\043\047\044\050\045\051\001\002\000\010\040\uffb1\042" +
106     "\045\047\uffb1\001\002\000\010\040\uffae\042\uffae\047\uffae" +
107     "\001\002\000\010\043\047\044\050\045\051\001\002\000" +
108     "\010\040\uffaf\042\uffaf\047\uffaf\001\002\000\004\047\052" +
109     "\001\002\000\004\047\052\001\002\000\004\047\052\001" +
110     "\002\000\040\005\uff9c\010\uff9c\011\uff9c\012\uff9c\013\uff9c" +
111     "\014\uff9c\015\uff9c\016\uff9c\017\uff9c\020\uff9c\023\uff9c\024" +
112     "\uff9c\025\uff9c\047\uff9c\050\uff9c\001\002\000\012\011\uffa7" +
113     "\014\uffa7\015\uffa7\020\uffa7\001\002\000\006\014\uffa8\015" +
114     "\uffa8\001\002\000\006\014\uffa9\015\uffa9\001\002\000\006" +
115     "\014\060\015\061\001\002\000\022\011\uffe2\014\uffe2\015" +
116     "\uffe2\016\uffe2\020\uffe2\023\uffe2\047\uffe2\050\uffe2\001\002" +
117     "\000\004\047\052\001\002\000\010\040\uffab\042\uffab\047" +
118     "\uffab\001\002\000\006\014\uffaa\015\uffaa\001\002\000\006" +
119     "\014\060\015\064\001\002\000\010\040\uffac\042\uffac\047" +
120     "\uffac\001\002\000\006\014\060\015\066\001\002\000\010" +
121     "\040\uffad\042\uffad\047\uffad\001\002\000\004\040\ufff9\001" +
122     "\002\000\020\002\ufff5\006\ufff5\007\ufff5\040\ufff5\047\ufff5" +
123     "\051\ufff5\052\ufff5\001\002\000\016\002\ufff2\006\ufff2\007" +
124     "\ufff2\047\ufff2\051\ufff2\052\ufff2\001\002\000\020\002\ufff7" +
125     "\006\ufff7\007\ufff7\040\103\047\ufff7\051\ufff7\052\ufff7\001" +
126     "\002\000\004\037\074\001\002\000\004\047\052\001\002" +
127     "\000\004\015\101\001\002\000\006\015\uffe3\047\052\001" +
128     "\002\000\004\015\100\001\002\000\020\002\ufff4\006\ufff4" +
129     "\007\ufff4\040\ufff4\047\ufff4\051\ufff4\052\ufff4\001\002\000" +
130     "\016\002\ufff8\006\ufff8\007\ufff8\047\ufff8\051\ufff8\052\ufff8" +
131     "\001\002\000\020\002\ufff6\006\ufff6\007\ufff6\040\ufff6\047" +
132     "\ufff6\051\ufff6\052\ufff6\001\002\000\004\037\104\001\002" +
133     "\000\004\047\052\001\002\000\004\047\052\001\002\000" +
134     "\016\002\ufffe\006\111\007\112\047\uffe9\051\110\052\107" +
135     "\001\002\000\004\047\uffea\001\002\000\004\047\uffeb\001" +
136     "\002\000\004\010\156\001\002\000\004\047\052\001\002" +
137     "\000\016\002\ufff3\006\ufff3\007\ufff3\047\ufff3\051\ufff3\052" +
138     "\ufff3\001\002\000\004\047\052\001\002\000\004\017\120" +
139     "\001\002\000\016\002\ufff1\006\ufff1\007\ufff1\047\ufff1\051" +
140     "\ufff1\052\ufff1\001\002\000\016\005\uffe3\010\uffe3\011\uffe3" +
141     "\014\uffe3\015\uffe3\017\uffe3\001\002\000\014\015\uffdc\020" +
142     "\uffdc\023\uffdc\047\uffdc\050\uffdc\001\002\000\006\015\140" +
143     "\020\137\001\002\000\010\011\uffe0\015\uffe0\020\uffe0\001" +
144     "\002\000\016\011\uffde\015\uffde\020\uffde\023\127\047\052" +
145     "\050\124\001\002\000\040\011\uff9b\015\uff9b\020\uff9b\021" +
146     "\uff9b\022\uff9b\023\uff9b\032\uff9b\033\uff9b\034\uff9b\035\uff9b" +
147     "\036\uff9b\040\uff9b\042\uff9b\047\uff9b\050\uff9b\001\002\000" +
148     "\016\011\uffda\015\uffda\020\uffda\023\uffda\047\uffda\050\uffda" +
149     "\001\002\000\020\011\uffd8\015\uffd8\016\132\020\uffd8\023" +
150     "\uffd8\047\uffd8\050\uffd8\001\002\000\004\047\052\001\002" +
151     "\000\016\011\uffdd\015\uffdd\020\uffdd\023\uffdd\047\uffdd\050" +
152     "\uffdd\001\002\000\010\011\uffdf\015\uffdf\020\uffdf\001\002" +
153     "\000\004\047\052\001\002\000\016\011\uffdb\015\uffdb\020" +
154     "\uffdb\023\uffdb\047\uffdb\050\uffdb\001\002\000\016\011\uffd7" +
155     "\015\uffd7\020\uffd7\023\uffd7\047\uffd7\050\uffd7\001\002\000" +
156     "\016\011\uffd9\015\uffd9\020\uffd9\023\uffd9\047\uffd9\050\uffd9" +
157     "\001\002\000\026\011\uffd6\012\uffd6\013\uffd6\015\uffd6\020" +
158     "\uffd6\023\uffd6\024\uffd6\025\uffd6\047\uffd6\050\uffd6\001\002" +
159     "\000\016\011\uffdc\015\uffdc\020\uffdc\023\uffdc\047\uffdc\050" +
160     "\uffdc\001\002\000\020\002\uffe4\006\uffe4\007\uffe4\011\uffe4" +
161     "\047\uffe4\051\uffe4\052\uffe4\001\002\000\010\011\uffe1\015" +
162     "\uffe1\020\uffe1\001\002\000\004\005\143\001\002\000\004" +
163     "\047\052\001\002\000\020\002\uffee\005\145\006\uffee\007" +
164     "\uffee\047\uffee\051\uffee\052\uffee\001\002\000\004\047\052" +
165     "\001\002\000\004\010\147\001\002\000\014\011\uffdc\020" +
166     "\uffdc\023\uffdc\047\uffdc\050\uffdc\001\002\000\006\011\151" +
167     "\020\137\001\002\000\020\002\uffe8\005\uffe8\006\uffe8\007" +
168     "\uffe8\047\uffe8\051\uffe8\052\uffe8\001\002\000\004\010\153" +
169     "\001\002\000\014\011\uffdc\020\uffdc\023\uffdc\047\uffdc\050" +
170     "\uffdc\001\002\000\006\011\155\020\137\001\002\000\020" +
171     "\002\uffe7\005\uffe7\006\uffe7\007\uffe7\047\uffe7\051\uffe7\052" +
172     "\uffe7\001\002\000\004\047\052\001\002\000\006\011\164" +
173     "\014\163\001\002\000\010\011\uffec\014\uffec\017\120\001" +
174     "\002\000\004\011\162\001\002\000\016\002\ufff0\006\ufff0" +
175     "\007\ufff0\047\ufff0\051\ufff0\052\ufff0\001\002\000\004\047" +
176     "\052\001\002\000\016\002\uffef\006\uffef\007\uffef\047\uffef" +
177     "\051\uffef\052\uffef\001\002\000\006\011\uffed\014\uffed\001" +
178     "\002\000\004\050\124\001\002\000\026\015\171\021\uffd2" +
179     "\022\uffd2\032\uffd2\033\uffd2\034\uffd2\035\uffd2\036\uffd2\040" +
180     "\uffd2\042\uffd2\001\002\000\024\021\uffbe\022\uffbe\032\uffbe" +
181     "\033\uffbe\034\uffbe\035\uffbe\036\uffbe\040\uffbe\042\uffbe\001" +
182     "\002\000\024\021\uffd3\022\uffd3\032\uffd3\033\uffd3\034\uffd3" +
183     "\035\uffd3\036\uffd3\040\uffd3\042\uffd3\001\002\000\004\050" +
184     "\124\001\002\000\026\015\171\021\uffd2\022\uffd2\032\uffd2" +
185     "\033\uffd2\034\uffd2\035\uffd2\036\uffd2\040\uffd2\042\uffd2\001" +
186     "\002\000\024\021\uffbf\022\uffbf\032\uffbf\033\uffbf\034\uffbf" +
187     "\035\uffbf\036\uffbf\040\uffbf\042\uffbf\001\002\000\016\021" +
188     "\uffbd\022\uffbd\034\uffbd\040\uffbd\042\uffbd\047\uffbd\001\002" +
189     "\000\020\012\uffa3\013\uffa3\015\uffa3\024\uffa3\025\uffa3\047" +
190     "\uffa3\050\uffa3\001\002\000\010\024\214\025\uffa0\047\uffa0" +
191     "\001\002\000\006\014\uffb4\015\uffb4\001\002\000\006\014" +
192     "\211\015\212\001\002\000\016\021\uffba\022\uffba\034\uffba" +
193     "\040\uffba\042\uffba\047\uffba\001\002\000\006\025\205\047" +
194     "\052\001\002\000\014\014\uff9e\015\uff9e\024\uffd6\025\uffd6" +
195     "\047\uffd6\001\002\000\004\026\210\001\002\000\016\021" +
196     "\uffbb\022\uffbb\034\uffbb\040\uffbb\042\uffbb\047\uffbb\001\002" +
197     "\000\006\014\uff9e\015\uff9e\001\002\000\006\025\uff9f\047" +
198     "\uff9f\001\002\000\004\047\052\001\002\000\016\021\uffb7" +
199     "\022\uffb7\034\uffb7\040\uffb7\042\uffb7\047\uffb7\001\002\000" +
200     "\006\014\uffb5\015\uffb5\001\002\000\004\047\052\001\002" +
201     "\000\020\012\uffa4\013\uffa4\015\uffa4\024\uffa4\025\uffa4\047" +
202     "\uffa4\050\uffa4\001\002\000\016\021\uffb8\022\uffb8\034\uffb8" +
203     "\040\uffb8\042\uffb8\047\uffb8\001\002\000\006\014\225\015" +
204     "\226\001\002\000\006\014\uffb2\015\uffb2\001\002\000\006" +
205     "\025\205\047\052\001\002\000\014\014\uff9d\015\uff9d\024" +
206     "\uffd6\025\uffd6\047\uffd6\001\002\000\016\021\uffb9\022\uffb9" +
207     "\034\uffb9\040\uffb9\042\uffb9\047\uffb9\001\002\000\006\014" +
208     "\uff9d\015\uff9d\001\002\000\004\047\052\001\002\000\016" +
209     "\021\uffb6\022\uffb6\034\uffb6\040\uffb6\042\uffb6\047\uffb6\001" +
210     "\002\000\006\014\uffb3\015\uffb3\001\002\000\004\047\uffd5" +
211     "\001\002\000\004\050\124\001\002\000\026\015\171\021" +
212     "\uffd2\022\uffd2\032\uffd2\033\uffd2\034\uffd2\035\uffd2\036\uffd2" +
213     "\040\uffd2\042\uffd2\001\002\000\024\021\uffc5\022\uffc5\032" +
214     "\uffc5\033\uffc5\034\uffc5\035\uffc5\036\uffc5\040\uffc5\042\uffc5" +
215     "\001\002\000\004\050\124\001\002\000\010\012\uffc2\013" +
216     "\uffc2\050\uffc2\001\002\000\010\012\237\013\241\050\124" +
217     "\001\002\000\004\047\052\001\002\000\026\015\171\021" +
218     "\uffd2\022\uffd2\032\uffd2\033\uffd2\034\uffd2\035\uffd2\036\uffd2" +
219     "\040\uffd2\042\uffd2\001\002\000\004\047\052\001\002\000" +
220     "\012\012\uffc0\013\uffc0\024\214\050\uffc0\001\002\000\024" +
221     "\021\uffc3\022\uffc3\032\uffc3\033\uffc3\034\uffc3\035\uffc3\036" +
222     "\uffc3\040\uffc3\042\uffc3\001\002\000\012\012\uffc1\013\uffc1" +
223     "\024\214\050\uffc1\001\002\000\026\015\171\021\uffd2\022" +
224     "\uffd2\032\uffd2\033\uffd2\034\uffd2\035\uffd2\036\uffd2\040\uffd2" +
225     "\042\uffd2\001\002\000\024\021\uffc4\022\uffc4\032\uffc4\033" +
226     "\uffc4\034\uffc4\035\uffc4\036\uffc4\040\uffc4\042\uffc4\001\002" +
227     "\000\006\015\uffa1\024\252\001\002\000\004\015\251\001" +
228     "\002\000\026\021\uffcc\022\uffcc\030\uffcc\032\uffcc\033\uffcc" +
229     "\034\uffcc\035\uffcc\036\uffcc\040\uffcc\042\uffcc\001\002\000" +
230     "\006\041\253\047\052\001\002\000\004\015\uffa2\001\002" +
231     "\000\030\021\ufffd\022\ufffd\027\ufffd\030\ufffd\032\ufffd\033" +
232     "\ufffd\034\ufffd\035\ufffd\036\ufffd\040\ufffd\042\ufffd\001\002" +
233     "\000\006\015\256\024\214\001\002\000\026\021\uffd0\022" +
234     "\uffd0\030\uffd0\032\uffd0\033\uffd0\034\uffd0\035\uffd0\036\uffd0" +
235     "\040\uffd0\042\uffd0\001\002\000\022\021\uffca\022\uffca\030" +
236     "\016\032\uffca\033\uffca\034\uffca\035\uffca\036\uffca\001\002" +
237     "\000\020\021\031\022\030\032\022\033\021\034\023\035" +
238     "\034\036\035\001\002\000\016\021\031\022\030\034\023" +
239     "\040\uffb0\042\045\047\uffb0\001\002\000\006\040\264\047" +
240     "\uffa5\001\002\000\004\047\052\001\002\000\004\037\265" +
241     "\001\002\000\004\047\052\001\002\000\004\015\267\001" +
242     "\002\000\004\047\uffa6\001\002\000\006\002\uffe5\047\uffe5" +
243     "\001\002\000\006\002\uffd1\047\052\001\002\000\006\002" +
244     "\uffe6\047\uffe6\001\002\000\004\002\001\001\002" });
245
246   /** Access to parse-action table. */
247   public short[][] action_table() {return _action_table;}
248
249   /** <code>reduce_goto</code> table. */
250   protected static final short[][] _reduce_table =
251     unpackFromStrings(new String JavaDoc[] {
252     "\000\271\000\014\016\003\017\006\020\010\022\011\050" +
253     "\004\001\001\000\002\001\001\000\004\061\256\001\001" +
254     "\000\010\021\135\047\175\053\254\001\001\000\002\001" +
255     "\001\000\002\001\001\000\002\001\001\000\004\050\012" +
256     "\001\001\000\004\061\013\001\001\000\006\052\014\065" +
257     "\016\001\001\000\002\001\001\000\012\021\135\047\175" +
258     "\051\247\053\246\001\001\000\024\007\031\010\017\011" +
259     "\024\012\023\013\036\014\026\063\032\064\035\073\025" +
260     "\001\001\000\002\001\001\000\004\021\234\001\001\000" +
261     "\002\001\001\000\002\001\001\000\002\001\001\000\020" +
262     "\021\221\047\175\053\176\055\220\056\217\060\216\072" +
263     "\215\001\001\000\002\001\001\000\002\001\001\000\002" +
264     "\001\001\000\020\021\203\047\175\053\176\055\202\057" +
265     "\177\062\200\071\201\001\001\000\002\001\001\000\006" +
266     "\011\024\073\174\001\001\000\002\001\001\000\002\001" +
267     "\001\000\012\015\043\031\040\067\042\070\037\001\001" +
268     "\000\002\001\001\000\002\001\001\000\010\032\070\033" +
269     "\067\034\071\001\001\000\002\001\001\000\004\015\045" +
270     "\001\001\000\002\001\001\000\002\001\001\000\002\001" +
271     "\001\000\014\021\056\042\052\045\054\046\053\066\064" +
272     "\001\001\000\014\021\056\042\052\045\054\046\053\066" +
273     "\062\001\001\000\014\021\056\042\052\045\054\046\053" +
274     "\066\055\001\001\000\002\001\001\000\002\001\001\000" +
275     "\002\001\001\000\002\001\001\000\002\001\001\000\002" +
276     "\001\001\000\012\021\056\042\052\045\061\046\053\001" +
277     "\001\000\002\001\001\000\002\001\001\000\002\001\001" +
278     "\000\002\001\001\000\002\001\001\000\002\001\001\000" +
279     "\002\001\001\000\002\001\001\000\004\025\105\001\001" +
280     "\000\004\033\101\001\001\000\002\001\001\000\006\021" +
281     "\075\041\074\001\001\000\002\001\001\000\004\021\076" +
282     "\001\001\000\002\001\001\000\002\001\001\000\002\001" +
283     "\001\000\002\001\001\000\002\001\001\000\004\021\104" +
284     "\001\001\000\004\021\076\001\001\000\006\003\113\036" +
285     "\112\001\001\000\002\001\001\000\002\001\001\000\002" +
286     "\001\001\000\006\021\116\041\141\001\001\000\002\001" +
287     "\001\000\010\021\116\037\115\041\114\001\001\000\002" +
288     "\001\001\000\002\001\001\000\002\001\001\000\010\005" +
289     "\121\026\122\027\120\001\001\000\002\001\001\000\002" +
290     "\001\001\000\012\004\127\021\056\024\124\042\125\001" +
291     "\001\000\002\001\001\000\002\001\001\000\004\044\132" +
292     "\001\001\000\010\021\056\042\052\046\130\001\001\000" +
293     "\002\001\001\000\002\001\001\000\010\021\135\043\134" +
294     "\047\133\001\001\000\002\001\001\000\002\001\001\000" +
295     "\002\001\001\000\002\001\001\000\006\005\140\026\122" +
296     "\001\001\000\002\001\001\000\002\001\001\000\004\030" +
297     "\143\001\001\000\006\021\116\041\151\001\001\000\002" +
298     "\001\001\000\006\021\116\041\145\001\001\000\002\001" +
299     "\001\000\010\005\121\026\122\027\147\001\001\000\002" +
300     "\001\001\000\002\001\001\000\002\001\001\000\010\005" +
301     "\121\026\122\027\153\001\001\000\002\001\001\000\002" +
302     "\001\001\000\012\021\116\035\156\037\160\041\157\001" +
303     "\001\000\002\001\001\000\002\001\001\000\002\001\001" +
304     "\000\002\001\001\000\006\021\116\041\164\001\001\000" +
305     "\002\001\001\000\002\001\001\000\004\024\166\001\001" +
306     "\000\004\006\167\001\001\000\002\001\001\000\002\001" +
307     "\001\000\004\024\172\001\001\000\004\006\173\001\001" +
308     "\000\002\001\001\000\002\001\001\000\002\001\001\000" +
309     "\002\001\001\000\002\001\001\000\002\001\001\000\002" +
310     "\001\001\000\012\021\206\057\177\062\200\071\205\001" +
311     "\001\000\002\001\001\000\002\001\001\000\002\001\001" +
312     "\000\002\001\001\000\002\001\001\000\006\021\206\057" +
313     "\212\001\001\000\002\001\001\000\002\001\001\000\006" +
314     "\021\135\047\214\001\001\000\002\001\001\000\002\001" +
315     "\001\000\002\001\001\000\002\001\001\000\012\021\223" +
316     "\056\217\060\216\072\222\001\001\000\002\001\001\000" +
317     "\002\001\001\000\002\001\001\000\006\021\223\056\226" +
318     "\001\001\000\002\001\001\000\002\001\001\000\002\001" +
319     "\001\000\004\024\231\001\001\000\004\006\232\001\001" +
320     "\000\002\001\001\000\004\024\244\001\001\000\004\023" +
321     "\235\001\001\000\004\024\237\001\001\000\010\021\135" +
322     "\047\175\053\243\001\001\000\004\006\242\001\001\000" +
323     "\010\021\135\047\175\053\241\001\001\000\002\001\001" +
324     "\000\002\001\001\000\002\001\001\000\004\006\245\001" +
325     "\001\000\002\001\001\000\002\001\001\000\002\001\001" +
326     "\000\002\001\001\000\006\021\135\047\214\001\001\000" +
327     "\002\001\001\000\002\001\001\000\002\001\001\000\002" +
328     "\001\001\000\006\052\014\065\257\001\001\000\022\007" +
329     "\031\010\017\011\024\012\023\013\036\014\026\063\260" +
330     "\073\025\001\001\000\014\011\024\015\043\067\042\070" +
331     "\261\073\174\001\001\000\004\054\262\001\001\000\012" +
332     "\021\116\037\267\040\270\041\114\001\001\000\002\001" +
333     "\001\000\006\021\116\041\265\001\001\000\002\001\001" +
334     "\000\002\001\001\000\002\001\001\000\010\021\116\037" +
335     "\271\041\114\001\001\000\002\001\001\000\002\001\001" +
336     "" });
337
338   /** Access to <code>reduce_goto</code> table. */
339   public short[][] reduce_table() {return _reduce_table;}
340
341   /** Instance of action encapsulation class. */
342   protected CUP$Parser$actions action_obj;
343
344   /** Action encapsulation object initializer. */
345   protected void init_actions()
346     {
347       action_obj = new CUP$Parser$actions(this);
348     }
349
350   /** Invoke a user supplied parse action. */
351   public java_cup.runtime.Symbol do_action(
352     int act_num,
353     java_cup.runtime.lr_parser parser,
354     java.util.Stack JavaDoc stack,
355     int top)
356     throws java.lang.Exception JavaDoc
357   {
358     /* call code in generated class */
359     return action_obj.CUP$Parser$do_action(act_num, parser, stack, top);
360   }
361
362   /** Indicates start state. */
363   public int start_state() {return 0;}
364   /** Indicates start production. */
365   public int start_production() {return 0;}
366
367   /** <code>EOF</code> Symbol index. */
368   public int EOF_sym() {return 0;}
369
370   /** <code>error</code> Symbol index. */
371   public int error_sym() {return 1;}
372
373
374   /** Scan to get the next Symbol. */
375   public java_cup.runtime.Symbol scan()
376     throws java.lang.Exception JavaDoc
377     {
378  
379     return lexer.getToken().getSymbol();
380
381     }
382
383  
384     private Lexer lexer;
385     private static String JavaDoc filename;
386     
387     public static String JavaDoc getFilename() { return filename; }
388
389     public Parser (String JavaDoc fname, Lexer lex) {
390         this();
391         filename = fname;
392         lexer = lex;
393     }
394
395     public void syntax_error (Symbol cur_token)
396     {
397     Token tok = (Token) cur_token.value;
398     report_error (tok.getFilename () + ":" +
399             tok.getLineno () + ": syntax error: \"" +
400                     tok.getValue () + "\" (" +
401             tok.getID () + ")", null);
402     System.exit (1);
403     }
404
405     public void report_fatal_error (String JavaDoc message, Object JavaDoc info) {
406         // stop parsing
407
done_parsing();
408
409         // use the normal error message reporting to put out the message
410
report_error(message, info);
411         System.exit(1);
412     }
413
414     private static Object JavaDoc program;
415     public static Object JavaDoc getProgramNode() { return program; }
416     public static void setProgramNode(Object JavaDoc n) { program = n; }
417
418 }
419
420 /** Cup generated class to encapsulate user supplied action code.*/
421 class CUP$Parser$actions {
422   private final Parser parser;
423
424   /** Constructor */
425   CUP$Parser$actions(Parser parser) {
426     this.parser = parser;
427   }
428
429   /** Method with the actual generated action code. */
430   public final java_cup.runtime.Symbol CUP$Parser$do_action(
431     int CUP$Parser$act_num,
432     java_cup.runtime.lr_parser CUP$Parser$parser,
433     java.util.Stack JavaDoc CUP$Parser$stack,
434     int CUP$Parser$top)
435     throws java.lang.Exception JavaDoc
436     {
437       /* Symbol object for return from actions */
438       java_cup.runtime.Symbol CUP$Parser$result;
439
440       /* select the action based on the action number */
441       switch (CUP$Parser$act_num)
442         {
443           /*. . . . . . . . . . . . . . . . . . . .*/
444           case 102: // code_str ::= CODE_STR
445
{
446               String JavaDoc RESULT = null;
447         int cleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
448         int cright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
449         Token c = (Token)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
450          RESULT = (String JavaDoc) c.getValue();
451               CUP$Parser$result = new java_cup.runtime.Symbol(18/*code_str*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
452             }
453           return CUP$Parser$result;
454
455           /*. . . . . . . . . . . . . . . . . . . .*/
456           case 101: // id ::= ID
457
{
458               String JavaDoc RESULT = null;
459         int idleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
460         int idright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
461         Token id = (Token)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
462          RESULT = (String JavaDoc)id.getValue();
463               CUP$Parser$result = new java_cup.runtime.Symbol(15/*id*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
464             }
465           return CUP$Parser$result;
466
467           /*. . . . . . . . . . . . . . . . . . . .*/
468           case 100: // new_non_term_id ::= id
469
{
470               String JavaDoc RESULT = null;
471         int idleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
472         int idright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
473         String JavaDoc id = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
474          RESULT = id;
475               CUP$Parser$result = new java_cup.runtime.Symbol(44/*new_non_term_id*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
476             }
477           return CUP$Parser$result;
478
479           /*. . . . . . . . . . . . . . . . . . . .*/
480           case 99: // new_term_id ::= id
481
{
482               String JavaDoc RESULT = null;
483         int idleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
484         int idright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
485         String JavaDoc id = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
486          RESULT = id;
487               CUP$Parser$result = new java_cup.runtime.Symbol(45/*new_term_id*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
488             }
489           return CUP$Parser$result;
490
491           /*. . . . . . . . . . . . . . . . . . . .*/
492           case 98: // type_id ::= type_id LBRACK RBRACK
493
{
494               String JavaDoc RESULT = null;
495         int t_idleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
496         int t_idright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
497         String JavaDoc t_id = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
498          RESULT = t_id + "[]";
499               CUP$Parser$result = new java_cup.runtime.Symbol(43/*type_id*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
500             }
501           return CUP$Parser$result;
502
503           /*. . . . . . . . . . . . . . . . . . . .*/
504           case 97: // type_id ::= multipart_id
505
{
506               String JavaDoc RESULT = null;
507         int m_idleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
508         int m_idright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
509         String JavaDoc m_id = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
510          RESULT = m_id;
511               CUP$Parser$result = new java_cup.runtime.Symbol(43/*type_id*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
512             }
513           return CUP$Parser$result;
514
515           /*. . . . . . . . . . . . . . . . . . . .*/
516           case 96: // import_id ::= multipart_id
517
{
518               String JavaDoc RESULT = null;
519         int m_idleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
520         int m_idright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
521         String JavaDoc m_id = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
522          RESULT = m_id;
523               CUP$Parser$result = new java_cup.runtime.Symbol(39/*import_id*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
524             }
525           return CUP$Parser$result;
526
527           /*. . . . . . . . . . . . . . . . . . . .*/
528           case 95: // import_id ::= multipart_id DOT STAR
529
{
530               String JavaDoc RESULT = null;
531         int m_idleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
532         int m_idright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
533         String JavaDoc m_id = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
534          RESULT = m_id + ".*";
535               CUP$Parser$result = new java_cup.runtime.Symbol(39/*import_id*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
536             }
537           return CUP$Parser$result;
538
539           /*. . . . . . . . . . . . . . . . . . . .*/
540           case 94: // multipart_id ::= robust_id
541
{
542               String JavaDoc RESULT = null;
543         int r_idleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
544         int r_idright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
545         String JavaDoc r_id = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
546          RESULT = r_id;
547               CUP$Parser$result = new java_cup.runtime.Symbol(41/*multipart_id*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
548             }
549           return CUP$Parser$result;
550
551           /*. . . . . . . . . . . . . . . . . . . .*/
552           case 93: // multipart_id ::= multipart_id DOT robust_id
553
{
554               String JavaDoc RESULT = null;
555         int m_idleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
556         int m_idright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
557         String JavaDoc m_id = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
558         int r_idleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
559         int r_idright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
560         String JavaDoc r_id = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
561         
562         RESULT = m_id + "." + r_id;
563     
564               CUP$Parser$result = new java_cup.runtime.Symbol(41/*multipart_id*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
565             }
566           return CUP$Parser$result;
567
568           /*. . . . . . . . . . . . . . . . . . . .*/
569           case 92: // start_spec ::=
570
{
571               String JavaDoc RESULT = null;
572          RESULT = null;
573               CUP$Parser$result = new java_cup.runtime.Symbol(42/*start_spec*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
574             }
575           return CUP$Parser$result;
576
577           /*. . . . . . . . . . . . . . . . . . . .*/
578           case 91: // start_spec ::= START WITH nt_id SEMI
579
{
580               String JavaDoc RESULT = null;
581         int start_nameleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
582         int start_nameright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
583         String JavaDoc start_name = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
584          RESULT = start_name;
585               CUP$Parser$result = new java_cup.runtime.Symbol(42/*start_spec*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
586             }
587           return CUP$Parser$result;
588
589           /*. . . . . . . . . . . . . . . . . . . .*/
590           case 90: // term_id ::= symbol_id
591
{
592               String JavaDoc RESULT = null;
593         int symleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
594         int symright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
595         String JavaDoc sym = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
596          RESULT = sym;
597               CUP$Parser$result = new java_cup.runtime.Symbol(36/*term_id*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
598             }
599           return CUP$Parser$result;
600
601           /*. . . . . . . . . . . . . . . . . . . .*/
602           case 89: // terminal_id ::= term_id
603
{
604               String JavaDoc RESULT = null;
605         int symleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
606         int symright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
607         String JavaDoc sym = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
608          RESULT = sym;
609               CUP$Parser$result = new java_cup.runtime.Symbol(35/*terminal_id*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
610             }
611           return CUP$Parser$result;
612
613           /*. . . . . . . . . . . . . . . . . . . .*/
614           case 88: // terminal_list ::= terminal_id
615
{
616               Vector RESULT = null;
617         int tleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
618         int tright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
619         String JavaDoc t = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
620         
621         Vector t_list = new Vector();
622         t_list.addElement(t);
623         RESULT = t_list;
624     
625               CUP$Parser$result = new java_cup.runtime.Symbol(52/*terminal_list*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
626             }
627           return CUP$Parser$result;
628
629           /*. . . . . . . . . . . . . . . . . . . .*/
630           case 87: // terminal_list ::= terminal_list COMMA terminal_id
631
{
632               Vector RESULT = null;
633         int t_listleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
634         int t_listright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
635         Vector t_list = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
636         int tleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
637         int tright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
638         String JavaDoc t = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
639         
640         t_list.addElement(t);
641         RESULT = t_list;
642     
643               CUP$Parser$result = new java_cup.runtime.Symbol(52/*terminal_list*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
644             }
645           return CUP$Parser$result;
646
647           /*. . . . . . . . . . . . . . . . . . . .*/
648           case 86: // preced ::= PRECEDENCE NONASSOC terminal_list SEMI
649
{
650               Object JavaDoc RESULT = null;
651         int t_listleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
652         int t_listright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
653         Vector t_list = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
654         
655         RESULT = new Precedence(Precedence.NONASSOC, t_list);
656     
657               CUP$Parser$result = new java_cup.runtime.Symbol(11/*preced*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
658             }
659           return CUP$Parser$result;
660
661           /*. . . . . . . . . . . . . . . . . . . .*/
662           case 85: // preced ::= PRECEDENCE RIGHT terminal_list SEMI
663
{
664               Object JavaDoc RESULT = null;
665         int t_listleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
666         int t_listright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
667         Vector t_list = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
668         
669         RESULT = new Precedence(Precedence.RIGHT, t_list);
670     
671               CUP$Parser$result = new java_cup.runtime.Symbol(11/*preced*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
672             }
673           return CUP$Parser$result;
674
675           /*. . . . . . . . . . . . . . . . . . . .*/
676           case 84: // preced ::= PRECEDENCE LEFT terminal_list SEMI
677
{
678               Object JavaDoc RESULT = null;
679         int t_listleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
680         int t_listright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
681         Vector t_list = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
682         
683         RESULT = new Precedence(Precedence.LEFT, t_list);
684     
685               CUP$Parser$result = new java_cup.runtime.Symbol(11/*preced*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
686             }
687           return CUP$Parser$result;
688
689           /*. . . . . . . . . . . . . . . . . . . .*/
690           case 83: // precedence_l ::= preced
691
{
692               Vector RESULT = null;
693         int pleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
694         int pright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
695         Object JavaDoc p = (Object JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
696          
697         Vector p_l = new Vector();
698         p_l.addElement(p);
699         RESULT = p_l;
700     
701               CUP$Parser$result = new java_cup.runtime.Symbol(53/*precedence_l*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
702             }
703           return CUP$Parser$result;
704
705           /*. . . . . . . . . . . . . . . . . . . .*/
706           case 82: // precedence_l ::= precedence_l preced
707
{
708               Vector RESULT = null;
709         int p_lleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
710         int p_lright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
711         Vector p_l = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
712         int pleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
713         int pright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
714         Object JavaDoc p = (Object JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
715         
716         p_l.addElement(p);
717         RESULT = p_l;
718     
719               CUP$Parser$result = new java_cup.runtime.Symbol(53/*precedence_l*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
720             }
721           return CUP$Parser$result;
722
723           /*. . . . . . . . . . . . . . . . . . . .*/
724           case 81: // precedence_list ::=
725
{
726               Vector RESULT = null;
727          RESULT = new Vector();
728               CUP$Parser$result = new java_cup.runtime.Symbol(54/*precedence_list*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
729             }
730           return CUP$Parser$result;
731
732           /*. . . . . . . . . . . . . . . . . . . .*/
733           case 80: // precedence_list ::= precedence_l
734
{
735               Vector RESULT = null;
736         int p_lleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
737         int p_lright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
738         Vector p_l = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
739          RESULT = p_l;
740               CUP$Parser$result = new java_cup.runtime.Symbol(54/*precedence_list*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
741             }
742           return CUP$Parser$result;
743
744           /*. . . . . . . . . . . . . . . . . . . .*/
745           case 79: // non_term_name_list ::= new_non_term_id
746
{
747               Vector RESULT = null;
748         int n_idleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
749         int n_idright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
750         String JavaDoc n_id = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
751          
752         Vector nnt_list = new Vector();
753         nnt_list.addElement(n_id);
754         RESULT = nnt_list;
755     
756               CUP$Parser$result = new java_cup.runtime.Symbol(46/*non_term_name_list*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
757             }
758           return CUP$Parser$result;
759
760           /*. . . . . . . . . . . . . . . . . . . .*/
761           case 78: // non_term_name_list ::= non_term_name_list COMMA new_non_term_id
762
{
763               Vector RESULT = null;
764         int ntn_listleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
765         int ntn_listright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
766         Vector ntn_list = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
767         int n_idleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
768         int n_idright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
769         String JavaDoc n_id = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
770         
771         ntn_list.addElement(n_id);
772         RESULT = ntn_list;
773     
774               CUP$Parser$result = new java_cup.runtime.Symbol(46/*non_term_name_list*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
775             }
776           return CUP$Parser$result;
777
778           /*. . . . . . . . . . . . . . . . . . . .*/
779           case 77: // term_name_list ::= new_term_id
780
{
781               Vector RESULT = null;
782         int n_idleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
783         int n_idright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
784         String JavaDoc n_id = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
785         
786         Vector tn_list = new Vector();
787         tn_list.addElement(n_id);
788         RESULT = tn_list;
789     
790               CUP$Parser$result = new java_cup.runtime.Symbol(48/*term_name_list*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
791             }
792           return CUP$Parser$result;
793
794           /*. . . . . . . . . . . . . . . . . . . .*/
795           case 76: // term_name_list ::= term_name_list COMMA new_term_id
796
{
797               Vector RESULT = null;
798         int tn_listleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
799         int tn_listright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
800         Vector tn_list = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
801         int n_idleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
802         int n_idright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
803         String JavaDoc n_id = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
804         
805         tn_list.addElement(n_id);
806         RESULT = tn_list;
807     
808               CUP$Parser$result = new java_cup.runtime.Symbol(48/*term_name_list*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
809             }
810           return CUP$Parser$result;
811
812           /*. . . . . . . . . . . . . . . . . . . .*/
813           case 75: // declares_non_term ::= non_term_name_list SEMI
814
{
815               Vector RESULT = null;
816         int ntn_listleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
817         int ntn_listright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
818         Vector ntn_list = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
819          RESULT = ntn_list;
820               CUP$Parser$result = new java_cup.runtime.Symbol(56/*declares_non_term*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
821             }
822           return CUP$Parser$result;
823
824           /*. . . . . . . . . . . . . . . . . . . .*/
825           case 74: // declares_term ::= term_name_list SEMI
826
{
827               Vector RESULT = null;
828         int tn_listleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
829         int tn_listright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
830         Vector tn_list = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
831          RESULT = tn_list;
832               CUP$Parser$result = new java_cup.runtime.Symbol(55/*declares_term*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
833             }
834           return CUP$Parser$result;
835
836           /*. . . . . . . . . . . . . . . . . . . .*/
837           case 73: // symbol ::= non_terminal declares_non_term
838
{
839               SymbolList RESULT = null;
840         int non_termleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
841         int non_termright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
842         Vector non_term = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
843         
844         RESULT = new SymbolList(SymbolList.NONTERMINAL, null, non_term);
845     
846               CUP$Parser$result = new java_cup.runtime.Symbol(57/*symbol*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
847             }
848           return CUP$Parser$result;
849
850           /*. . . . . . . . . . . . . . . . . . . .*/
851           case 72: // symbol ::= non_terminal type_id declares_non_term
852
{
853               SymbolList RESULT = null;
854         int typeleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
855         int typeright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
856         String JavaDoc type = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
857         int non_termleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
858         int non_termright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
859         Vector non_term = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
860         
861         RESULT = new SymbolList(SymbolList.NONTERMINAL, type, non_term);
862     
863               CUP$Parser$result = new java_cup.runtime.Symbol(57/*symbol*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
864             }
865           return CUP$Parser$result;
866
867           /*. . . . . . . . . . . . . . . . . . . .*/
868           case 71: // symbol ::= TERMINAL declares_term
869
{
870               SymbolList RESULT = null;
871         int termleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
872         int termright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
873         Vector term = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
874         
875         RESULT = new SymbolList(SymbolList.TERMINAL, null, term);
876     
877               CUP$Parser$result = new java_cup.runtime.Symbol(57/*symbol*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
878             }
879           return CUP$Parser$result;
880
881           /*. . . . . . . . . . . . . . . . . . . .*/
882           case 70: // symbol ::= TERMINAL type_id declares_term
883
{
884               SymbolList RESULT = null;
885         int typeleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
886         int typeright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
887         String JavaDoc type = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
888         int termleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
889         int termright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
890         Vector term = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
891         
892         RESULT = new SymbolList(SymbolList.TERMINAL, type, term);
893     
894               CUP$Parser$result = new java_cup.runtime.Symbol(57/*symbol*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
895             }
896           return CUP$Parser$result;
897
898           /*. . . . . . . . . . . . . . . . . . . .*/
899           case 69: // symbol_list ::= symbol
900
{
901               Vector RESULT = null;
902         int sleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
903         int sright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
904         SymbolList s = (SymbolList)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
905          
906         Vector s_list = new Vector();
907         s_list.addElement(s);
908         RESULT = s_list;
909     
910               CUP$Parser$result = new java_cup.runtime.Symbol(49/*symbol_list*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
911             }
912           return CUP$Parser$result;
913
914           /*. . . . . . . . . . . . . . . . . . . .*/
915           case 68: // symbol_list ::= symbol_list symbol
916
{
917               Vector RESULT = null;
918         int s_listleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
919         int s_listright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
920         Vector s_list = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
921         int sleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
922         int sright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
923         SymbolList s = (SymbolList)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
924         
925         s_list.addElement(s);
926         RESULT = s_list;
927     
928               CUP$Parser$result = new java_cup.runtime.Symbol(49/*symbol_list*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
929             }
930           return CUP$Parser$result;
931
932           /*. . . . . . . . . . . . . . . . . . . .*/
933           case 67: // scan_code ::= SCAN WITH code_str opt_semi
934
{
935               Object JavaDoc RESULT = null;
936         int user_codeleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
937         int user_coderight = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
938         String JavaDoc user_code = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
939          RESULT = new ScanCode(user_code);
940               CUP$Parser$result = new java_cup.runtime.Symbol(10/*scan_code*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
941             }
942           return CUP$Parser$result;
943
944           /*. . . . . . . . . . . . . . . . . . . .*/
945           case 66: // init_code ::= INIT WITH code_str opt_semi
946
{
947               Object JavaDoc RESULT = null;
948         int user_codeleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
949         int user_coderight = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
950         String JavaDoc user_code = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
951          RESULT = new InitCode(user_code);
952               CUP$Parser$result = new java_cup.runtime.Symbol(9/*init_code*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
953             }
954           return CUP$Parser$result;
955
956           /*. . . . . . . . . . . . . . . . . . . .*/
957           case 65: // extendsimpls ::= extendsimpls IMPLEMENTS multipart_id
958
{
959               String JavaDoc RESULT = null;
960         int eleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
961         int eright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
962         String JavaDoc e = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
963         int qidleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
964         int qidright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
965         String JavaDoc qid = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
966          RESULT = e + " implements " + qid;
967               CUP$Parser$result = new java_cup.runtime.Symbol(17/*extendsimpls*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
968             }
969           return CUP$Parser$result;
970
971           /*. . . . . . . . . . . . . . . . . . . .*/
972           case 64: // extendsimpls ::= extendsimpls EXTENDS multipart_id
973
{
974               String JavaDoc RESULT = null;
975         int eleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
976         int eright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
977         String JavaDoc e = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
978         int qidleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
979         int qidright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
980         String JavaDoc qid = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
981          RESULT = e + " extends " + qid;
982               CUP$Parser$result = new java_cup.runtime.Symbol(17/*extendsimpls*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
983             }
984           return CUP$Parser$result;
985
986           /*. . . . . . . . . . . . . . . . . . . .*/
987           case 63: // extendsimpls ::=
988
{
989               String JavaDoc RESULT = null;
990          RESULT = "";
991               CUP$Parser$result = new java_cup.runtime.Symbol(17/*extendsimpls*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
992             }
993           return CUP$Parser$result;
994
995           /*. . . . . . . . . . . . . . . . . . . .*/
996           case 62: // parser_code_part ::= PARSER id extendsimpls code_str opt_semi
997
{
998               Object JavaDoc RESULT = null;
999         int classnameleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
1000        int classnameright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).right;
1001        String JavaDoc classname = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-3)).value;
1002        int eileft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
1003        int eiright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
1004        String JavaDoc ei = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
1005        int user_codeleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
1006        int user_coderight = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
1007        String JavaDoc user_code = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
1008        
1009      RESULT = new ParserCode(classname, ei, user_code);
1010    
1011              CUP$Parser$result = new java_cup.runtime.Symbol(8/*parser_code_part*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1012            }
1013          return CUP$Parser$result;
1014
1015          /*. . . . . . . . . . . . . . . . . . . .*/
1016          case 61: // parser_code_part ::= PARSER CODE code_str opt_semi
1017
{
1018              Object JavaDoc RESULT = null;
1019        int user_codeleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
1020        int user_coderight = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
1021        String JavaDoc user_code = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
1022        
1023      RESULT = new ParserCode(null, "", user_code);
1024    
1025              CUP$Parser$result = new java_cup.runtime.Symbol(8/*parser_code_part*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1026            }
1027          return CUP$Parser$result;
1028
1029          /*. . . . . . . . . . . . . . . . . . . .*/
1030          case 60: // action_code_part ::= ACTION CODE code_str opt_semi
1031
{
1032              Object JavaDoc RESULT = null;
1033        int user_codeleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
1034        int user_coderight = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
1035        String JavaDoc user_code = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
1036         RESULT = new ActionCode(user_code);
1037              CUP$Parser$result = new java_cup.runtime.Symbol(5/*action_code_part*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1038            }
1039          return CUP$Parser$result;
1040
1041          /*. . . . . . . . . . . . . . . . . . . .*/
1042          case 59: // code_part ::= scan_code
1043
{
1044              Object JavaDoc RESULT = null;
1045        int sleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1046        int sright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1047        Object JavaDoc s = (Object JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1048         RESULT = s;
1049              CUP$Parser$result = new java_cup.runtime.Symbol(6/*code_part*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1050            }
1051          return CUP$Parser$result;
1052
1053          /*. . . . . . . . . . . . . . . . . . . .*/
1054          case 58: // code_part ::= init_code
1055
{
1056              Object JavaDoc RESULT = null;
1057        int ileft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1058        int iright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1059        Object JavaDoc i = (Object JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1060         RESULT = i;
1061              CUP$Parser$result = new java_cup.runtime.Symbol(6/*code_part*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1062            }
1063          return CUP$Parser$result;
1064
1065          /*. . . . . . . . . . . . . . . . . . . .*/
1066          case 57: // code_part ::= parser_code_part
1067
{
1068              Object JavaDoc RESULT = null;
1069        int pleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1070        int pright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1071        Object JavaDoc p = (Object JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1072         RESULT = p;
1073              CUP$Parser$result = new java_cup.runtime.Symbol(6/*code_part*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1074            }
1075          return CUP$Parser$result;
1076
1077          /*. . . . . . . . . . . . . . . . . . . .*/
1078          case 56: // code_part ::= action_code_part
1079
{
1080              Object JavaDoc RESULT = null;
1081        int aleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1082        int aright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1083        Object JavaDoc a = (Object JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1084         RESULT = a;
1085              CUP$Parser$result = new java_cup.runtime.Symbol(6/*code_part*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1086            }
1087          return CUP$Parser$result;
1088
1089          /*. . . . . . . . . . . . . . . . . . . .*/
1090          case 55: // code_parts ::=
1091
{
1092              Vector RESULT = null;
1093         RESULT = new Vector();
1094              CUP$Parser$result = new java_cup.runtime.Symbol(51/*code_parts*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1095            }
1096          return CUP$Parser$result;
1097
1098          /*. . . . . . . . . . . . . . . . . . . .*/
1099          case 54: // code_parts ::= code_parts code_part
1100
{
1101              Vector RESULT = null;
1102        int c_partsleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
1103        int c_partsright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
1104        Vector c_parts = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
1105        int cleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1106        int cright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1107        Object JavaDoc c = (Object JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1108        
1109        c_parts.addElement(c);
1110        RESULT = c_parts;
1111    
1112              CUP$Parser$result = new java_cup.runtime.Symbol(51/*code_parts*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1113            }
1114          return CUP$Parser$result;
1115
1116          /*. . . . . . . . . . . . . . . . . . . .*/
1117          case 53: // import_spec ::= IMPORT import_id SEMI
1118
{
1119              String JavaDoc RESULT = null;
1120        int ileft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
1121        int iright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
1122        String JavaDoc i = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
1123         RESULT = i;
1124              CUP$Parser$result = new java_cup.runtime.Symbol(40/*import_spec*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1125            }
1126          return CUP$Parser$result;
1127
1128          /*. . . . . . . . . . . . . . . . . . . .*/
1129          case 52: // import_list ::=
1130
{
1131              Vector RESULT = null;
1132         RESULT = new Vector();
1133              CUP$Parser$result = new java_cup.runtime.Symbol(47/*import_list*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1134            }
1135          return CUP$Parser$result;
1136
1137          /*. . . . . . . . . . . . . . . . . . . .*/
1138          case 51: // import_list ::= import_list import_spec
1139
{
1140              Vector RESULT = null;
1141        int i_listleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
1142        int i_listright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
1143        Vector i_list = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
1144        int ileft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1145        int iright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1146        String JavaDoc i = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1147        
1148        i_list.addElement(i);
1149        RESULT = i_list;
1150    
1151              CUP$Parser$result = new java_cup.runtime.Symbol(47/*import_list*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1152            }
1153          return CUP$Parser$result;
1154
1155          /*. . . . . . . . . . . . . . . . . . . .*/
1156          case 50: // package_spec ::=
1157
{
1158              String JavaDoc RESULT = null;
1159         RESULT = null;
1160              CUP$Parser$result = new java_cup.runtime.Symbol(38/*package_spec*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1161            }
1162          return CUP$Parser$result;
1163
1164          /*. . . . . . . . . . . . . . . . . . . .*/
1165          case 49: // package_spec ::= PACKAGE multipart_id SEMI
1166
{
1167              String JavaDoc RESULT = null;
1168        int m_idleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
1169        int m_idright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
1170        String JavaDoc m_id = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
1171         RESULT = m_id;
1172              CUP$Parser$result = new java_cup.runtime.Symbol(38/*package_spec*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1173            }
1174          return CUP$Parser$result;
1175
1176          /*. . . . . . . . . . . . . . . . . . . .*/
1177          case 48: // cup_spec ::= package_spec import_list code_parts symbol_list precedence_list start_spec production_list
1178
{
1179              Spec RESULT = null;
1180        int pkgleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)).left;
1181        int pkgright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)).right;
1182        String JavaDoc pkg = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-6)).value;
1183        int impleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).left;
1184        int impright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).right;
1185        Vector imp = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-5)).value;
1186        int codeleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).left;
1187        int coderight = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).right;
1188        Vector code = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-4)).value;
1189        int sym_listleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
1190        int sym_listright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).right;
1191        Vector sym_list = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-3)).value;
1192        int prec_listleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
1193        int prec_listright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
1194        Vector prec_list = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
1195        int startleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
1196        int startright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
1197        String JavaDoc start = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
1198        int prod_listleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1199        int prod_listright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1200        Vector prod_list = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1201        
1202        RESULT = new CUPSpec(pkg, imp, code, sym_list, prec_list, start, prod_list);
1203    
1204              CUP$Parser$result = new java_cup.runtime.Symbol(14/*cup_spec*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1205            }
1206          return CUP$Parser$result;
1207
1208          /*. . . . . . . . . . . . . . . . . . . .*/
1209          case 47: // opt_semi ::=
1210
{
1211              Object JavaDoc RESULT = null;
1212
1213              CUP$Parser$result = new java_cup.runtime.Symbol(4/*opt_semi*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1214            }
1215          return CUP$Parser$result;
1216
1217          /*. . . . . . . . . . . . . . . . . . . .*/
1218          case 46: // opt_semi ::= SEMI
1219
{
1220              Object JavaDoc RESULT = null;
1221
1222              CUP$Parser$result = new java_cup.runtime.Symbol(4/*opt_semi*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1223            }
1224          return CUP$Parser$result;
1225
1226          /*. . . . . . . . . . . . . . . . . . . .*/
1227          case 45: // non_terminal ::= NONTERMINAL
1228
{
1229              Object JavaDoc RESULT = null;
1230
1231              CUP$Parser$result = new java_cup.runtime.Symbol(7/*non_terminal*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1232            }
1233          return CUP$Parser$result;
1234
1235          /*. . . . . . . . . . . . . . . . . . . .*/
1236          case 44: // non_terminal ::= NON TERMINAL
1237
{
1238              Object JavaDoc RESULT = null;
1239
1240              CUP$Parser$result = new java_cup.runtime.Symbol(7/*non_terminal*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1241            }
1242          return CUP$Parser$result;
1243
1244          /*. . . . . . . . . . . . . . . . . . . .*/
1245          case 43: // robust_id ::= id
1246
{
1247              String JavaDoc RESULT = null;
1248        int idleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1249        int idright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1250        String JavaDoc id = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1251         RESULT = id;
1252              CUP$Parser$result = new java_cup.runtime.Symbol(37/*robust_id*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1253            }
1254          return CUP$Parser$result;
1255
1256          /*. . . . . . . . . . . . . . . . . . . .*/
1257          case 42: // label_id ::= robust_id
1258
{
1259              String JavaDoc RESULT = null;
1260        int the_idleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1261        int the_idright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1262        String JavaDoc the_id = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1263         RESULT = the_id;
1264              CUP$Parser$result = new java_cup.runtime.Symbol(33/*label_id*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1265            }
1266          return CUP$Parser$result;
1267
1268          /*. . . . . . . . . . . . . . . . . . . .*/
1269          case 41: // opt_label ::=
1270
{
1271              String JavaDoc RESULT = null;
1272         RESULT = null;
1273              CUP$Parser$result = new java_cup.runtime.Symbol(34/*opt_label*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1274            }
1275          return CUP$Parser$result;
1276
1277          /*. . . . . . . . . . . . . . . . . . . .*/
1278          case 40: // opt_label ::= COLON label_id
1279
{
1280              String JavaDoc RESULT = null;
1281        int labidleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1282        int labidright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1283        String JavaDoc labid = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1284         RESULT = labid;
1285              CUP$Parser$result = new java_cup.runtime.Symbol(34/*opt_label*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1286            }
1287          return CUP$Parser$result;
1288
1289          /*. . . . . . . . . . . . . . . . . . . .*/
1290          case 39: // prod_part ::= code_str
1291
{
1292              Object JavaDoc RESULT = null;
1293        int code_strleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1294        int code_strright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1295        String JavaDoc code_str = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1296        
1297        RESULT = new SemanticAction(code_str);
1298    
1299              CUP$Parser$result = new java_cup.runtime.Symbol(2/*prod_part*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1300            }
1301          return CUP$Parser$result;
1302
1303          /*. . . . . . . . . . . . . . . . . . . .*/
1304          case 38: // prod_part ::= symbol_id opt_label
1305
{
1306              Object JavaDoc RESULT = null;
1307        int symidleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
1308        int symidright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
1309        String JavaDoc symid = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
1310        int labidleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1311        int labidright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1312        String JavaDoc labid = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1313        
1314        RESULT = new Nonterminal(symid, labid);
1315    
1316              CUP$Parser$result = new java_cup.runtime.Symbol(2/*prod_part*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1317            }
1318          return CUP$Parser$result;
1319
1320          /*. . . . . . . . . . . . . . . . . . . .*/
1321          case 37: // prod_part_list ::=
1322
{
1323              Vector RESULT = null;
1324         RESULT = new Vector();
1325              CUP$Parser$result = new java_cup.runtime.Symbol(20/*prod_part_list*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1326            }
1327          return CUP$Parser$result;
1328
1329          /*. . . . . . . . . . . . . . . . . . . .*/
1330          case 36: // prod_part_list ::= prod_part_list prod_part
1331
{
1332              Vector RESULT = null;
1333        int aleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
1334        int aright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
1335        Vector a = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
1336        int bleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1337        int bright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1338        Object JavaDoc b = (Object JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1339         
1340        /* Vector a, (non)terminal/code b */
1341        a.addElement(b); RESULT = a;
1342    
1343              CUP$Parser$result = new java_cup.runtime.Symbol(20/*prod_part_list*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1344            }
1345          return CUP$Parser$result;
1346
1347          /*. . . . . . . . . . . . . . . . . . . .*/
1348          case 35: // rhs ::= prod_part_list
1349
{
1350              Object JavaDoc RESULT = null;
1351        int pleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1352        int pright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1353        Vector p = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1354         RESULT = p;
1355              CUP$Parser$result = new java_cup.runtime.Symbol(3/*rhs*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1356            }
1357          return CUP$Parser$result;
1358
1359          /*. . . . . . . . . . . . . . . . . . . .*/
1360          case 34: // rhs ::= prod_part_list PERCENT_PREC term_id
1361
{
1362              Object JavaDoc RESULT = null;
1363        int pleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
1364        int pright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
1365        Vector p = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
1366        int term_nameleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1367        int term_nameright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1368        String JavaDoc term_name = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1369         p.add(new PrecedenceModifier(term_name));
1370           RESULT = p;
1371              CUP$Parser$result = new java_cup.runtime.Symbol(3/*rhs*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1372            }
1373          return CUP$Parser$result;
1374
1375          /*. . . . . . . . . . . . . . . . . . . .*/
1376          case 33: // rhs_list ::= rhs
1377
{
1378              Vector RESULT = null;
1379        int rleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1380        int rright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1381        Object JavaDoc r = (Object JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1382        
1383        Vector r_list = new Vector();
1384        r_list.addElement(r);
1385        RESULT = r_list;
1386    
1387              CUP$Parser$result = new java_cup.runtime.Symbol(21/*rhs_list*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1388            }
1389          return CUP$Parser$result;
1390
1391          /*. . . . . . . . . . . . . . . . . . . .*/
1392          case 32: // rhs_list ::= rhs_list BAR rhs
1393
{
1394              Vector RESULT = null;
1395        int r_listleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
1396        int r_listright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
1397        Vector r_list = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
1398        int rleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1399        int rright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1400        Object JavaDoc r = (Object JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1401        
1402        r_list.addElement(r);
1403        RESULT = r_list;
1404    
1405              CUP$Parser$result = new java_cup.runtime.Symbol(21/*rhs_list*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1406            }
1407          return CUP$Parser$result;
1408
1409          /*. . . . . . . . . . . . . . . . . . . .*/
1410          case 31: // symbol_id ::= id
1411
{
1412              String JavaDoc RESULT = null;
1413        int idleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1414        int idright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1415        String JavaDoc id = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1416         RESULT = id;
1417              CUP$Parser$result = new java_cup.runtime.Symbol(32/*symbol_id*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1418            }
1419          return CUP$Parser$result;
1420
1421          /*. . . . . . . . . . . . . . . . . . . .*/
1422          case 30: // nt_id ::= id
1423
{
1424              String JavaDoc RESULT = null;
1425        int idleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1426        int idright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1427        String JavaDoc id = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1428         RESULT = id;
1429              CUP$Parser$result = new java_cup.runtime.Symbol(31/*nt_id*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1430            }
1431          return CUP$Parser$result;
1432
1433          /*. . . . . . . . . . . . . . . . . . . .*/
1434          case 29: // production ::= nt_id COLON_COLON_EQUALS rhs_list SEMI
1435
{
1436              Production RESULT = null;
1437        int lhs_idleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
1438        int lhs_idright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).right;
1439        String JavaDoc lhs_id = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-3)).value;
1440        int rhsleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
1441        int rhsright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
1442        Vector rhs = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
1443         
1444        RESULT = new Production(new Nonterminal(lhs_id), rhs);
1445    
1446              CUP$Parser$result = new java_cup.runtime.Symbol(29/*production*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1447            }
1448          return CUP$Parser$result;
1449
1450          /*. . . . . . . . . . . . . . . . . . . .*/
1451          case 28: // production_list ::= production
1452
{
1453              Vector RESULT = null;
1454        int pleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1455        int pright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1456        Production p = (Production)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1457        
1458        Vector p_list = new Vector();
1459        p_list.addElement(p);
1460        RESULT = p_list;
1461    
1462              CUP$Parser$result = new java_cup.runtime.Symbol(30/*production_list*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1463            }
1464          return CUP$Parser$result;
1465
1466          /*. . . . . . . . . . . . . . . . . . . .*/
1467          case 27: // production_list ::= production_list production
1468
{
1469              Vector RESULT = null;
1470        int p_listleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
1471        int p_listright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
1472        Vector p_list = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
1473        int pleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1474        int pright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1475        Production p = (Production)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1476        
1477        p_list.addElement(p);
1478        RESULT = p_list;
1479    
1480              CUP$Parser$result = new java_cup.runtime.Symbol(30/*production_list*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1481            }
1482          return CUP$Parser$result;
1483
1484          /*. . . . . . . . . . . . . . . . . . . .*/
1485          case 26: // transfer_list ::= TO nt_id LBRACE rhs_list RBRACE
1486
{
1487              Vector RESULT = null;
1488        int ntleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
1489        int ntright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).right;
1490        String JavaDoc nt = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-3)).value;
1491        int rhsleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
1492        int rhsright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
1493        Vector rhs = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
1494        
1495        Vector v = new Vector();
1496        Production p = new Production(new Nonterminal(nt), rhs);
1497        v.addElement(p);
1498        RESULT = v;
1499    
1500              CUP$Parser$result = new java_cup.runtime.Symbol(22/*transfer_list*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1501            }
1502          return CUP$Parser$result;
1503
1504          /*. . . . . . . . . . . . . . . . . . . .*/
1505          case 25: // transfer_list ::= transfer_list TO nt_id LBRACE rhs_list RBRACE
1506
{
1507              Vector RESULT = null;
1508        int tlleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).left;
1509        int tlright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).right;
1510        Vector tl = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-5)).value;
1511        int ntleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
1512        int ntright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).right;
1513        String JavaDoc nt = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-3)).value;
1514        int rhsleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
1515        int rhsright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
1516        Vector rhs = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
1517        
1518        Production p = new Production(new Nonterminal(nt), rhs);
1519        tl.addElement(p);
1520        RESULT = tl;
1521    
1522              CUP$Parser$result = new java_cup.runtime.Symbol(22/*transfer_list*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1523            }
1524          return CUP$Parser$result;
1525
1526          /*. . . . . . . . . . . . . . . . . . . .*/
1527          case 24: // prod_modifier_opt ::=
1528
{
1529              Object JavaDoc RESULT = null;
1530         RESULT = null;
1531              CUP$Parser$result = new java_cup.runtime.Symbol(1/*prod_modifier_opt*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1532            }
1533          return CUP$Parser$result;
1534
1535          /*. . . . . . . . . . . . . . . . . . . .*/
1536          case 23: // prod_modifier_opt ::= OVERRIDE
1537
{
1538              Object JavaDoc RESULT = null;
1539        int aleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1540        int aright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1541        Token a = (Token)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1542         RESULT = (String JavaDoc)a.getValue();
1543              CUP$Parser$result = new java_cup.runtime.Symbol(1/*prod_modifier_opt*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1544            }
1545          return CUP$Parser$result;
1546
1547          /*. . . . . . . . . . . . . . . . . . . .*/
1548          case 22: // prod_modifier_opt ::= EXTEND
1549
{
1550              Object JavaDoc RESULT = null;
1551        int aleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1552        int aright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1553        Token a = (Token)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1554         RESULT = (String JavaDoc)a.getValue();
1555              CUP$Parser$result = new java_cup.runtime.Symbol(1/*prod_modifier_opt*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1556            }
1557          return CUP$Parser$result;
1558
1559          /*. . . . . . . . . . . . . . . . . . . .*/
1560          case 21: // nt_id_list ::= nt_id
1561
{
1562              Vector RESULT = null;
1563        int idleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1564        int idright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1565        String JavaDoc id = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1566        
1567        Vector list = new Vector();
1568        list.addElement(id);
1569        RESULT = list;
1570    
1571              CUP$Parser$result = new java_cup.runtime.Symbol(27/*nt_id_list*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1572            }
1573          return CUP$Parser$result;
1574
1575          /*. . . . . . . . . . . . . . . . . . . .*/
1576          case 20: // nt_id_list ::= nt_id_list COMMA nt_id
1577
{
1578              Vector RESULT = null;
1579        int listleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
1580        int listright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
1581        Vector list = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
1582        int idleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1583        int idright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1584        String JavaDoc id = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1585        
1586        list.addElement(id);
1587        RESULT = list;
1588    
1589              CUP$Parser$result = new java_cup.runtime.Symbol(27/*nt_id_list*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1590            }
1591          return CUP$Parser$result;
1592
1593          /*. . . . . . . . . . . . . . . . . . . .*/
1594          case 19: // command ::= TRANSFER nt_id transfer_list
1595
{
1596              Command RESULT = null;
1597        int ntleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
1598        int ntright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
1599        String JavaDoc nt = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
1600        int tlistleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1601        int tlistright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1602        Vector tlist = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1603        
1604        RESULT = new TransferCmd(nt, tlist);
1605    
1606              CUP$Parser$result = new java_cup.runtime.Symbol(28/*command*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1607            }
1608          return CUP$Parser$result;
1609
1610          /*. . . . . . . . . . . . . . . . . . . .*/
1611          case 18: // command ::= DROP LBRACE nt_id_list RBRACE
1612
{
1613              Command RESULT = null;
1614        int nt_listleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
1615        int nt_listright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
1616        Vector nt_list = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
1617         
1618        RESULT = new DropCmd(nt_list);
1619    
1620              CUP$Parser$result = new java_cup.runtime.Symbol(28/*command*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1621            }
1622          return CUP$Parser$result;
1623
1624          /*. . . . . . . . . . . . . . . . . . . .*/
1625          case 17: // command ::= DROP LBRACE production RBRACE
1626
{
1627              Command RESULT = null;
1628        int pleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
1629        int pright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
1630        Production p = (Production)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
1631         RESULT = new DropCmd(p);
1632              CUP$Parser$result = new java_cup.runtime.Symbol(28/*command*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1633            }
1634          return CUP$Parser$result;
1635
1636          /*. . . . . . . . . . . . . . . . . . . .*/
1637          case 16: // command ::= prod_modifier_opt production
1638
{
1639              Command RESULT = null;
1640        int modleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
1641        int modright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
1642        Object JavaDoc mod = (Object JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
1643        int pleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1644        int pright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1645        Production p = (Production)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1646        
1647        if (mod == null) {
1648            /* no modifier, new command */
1649            RESULT = new NewProdCmd(p);
1650        } else if (mod.equals("extend")) {
1651            RESULT = new ExtendCmd(p);
1652        } else /* if (mod.equals("override")) */ {
1653            RESULT = new OverrideCmd(p);
1654        }
1655    
1656              CUP$Parser$result = new java_cup.runtime.Symbol(28/*command*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1657            }
1658          return CUP$Parser$result;
1659
1660          /*. . . . . . . . . . . . . . . . . . . .*/
1661          case 15: // command_list_opt ::=
1662
{
1663              Vector RESULT = null;
1664         RESULT = new Vector();
1665              CUP$Parser$result = new java_cup.runtime.Symbol(19/*command_list_opt*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1666            }
1667          return CUP$Parser$result;
1668
1669          /*. . . . . . . . . . . . . . . . . . . .*/
1670          case 14: // command_list_opt ::= command_list_opt command
1671
{
1672              Vector RESULT = null;
1673        int bleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
1674        int bright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
1675        Vector b = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
1676        int aleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1677        int aright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1678        Command a = (Command)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1679        
1680        /* b = Vector, a = command; */
1681        b.addElement(a);
1682        RESULT = b;
1683    
1684              CUP$Parser$result = new java_cup.runtime.Symbol(19/*command_list_opt*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1685            }
1686          return CUP$Parser$result;
1687
1688          /*. . . . . . . . . . . . . . . . . . . .*/
1689          case 13: // ppg_start_spec_elt ::= START WITH id id SEMI
1690
{
1691              Vector RESULT = null;
1692        int startleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
1693        int startright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
1694        String JavaDoc start = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
1695        int methodleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
1696        int methodright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
1697        String JavaDoc method = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
1698        
1699        Vector m = new Vector();
1700        m.addElement(start);
1701        m.addElement(method);
1702        RESULT = m;
1703    
1704              CUP$Parser$result = new java_cup.runtime.Symbol(25/*ppg_start_spec_elt*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1705            }
1706          return CUP$Parser$result;
1707
1708          /*. . . . . . . . . . . . . . . . . . . .*/
1709          case 12: // ppg_start_spec_list ::= ppg_start_spec_elt
1710
{
1711              Vector RESULT = null;
1712        int eltleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1713        int eltright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1714        Vector elt = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1715         RESULT = elt;
1716              CUP$Parser$result = new java_cup.runtime.Symbol(26/*ppg_start_spec_list*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1717            }
1718          return CUP$Parser$result;
1719
1720          /*. . . . . . . . . . . . . . . . . . . .*/
1721          case 11: // ppg_start_spec_list ::= ppg_start_spec_list ppg_start_spec_elt
1722
{
1723              Vector RESULT = null;
1724        int listleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
1725        int listright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
1726        Vector list = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
1727        int eltleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1728        int eltright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1729        Vector elt = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1730         
1731        list.addAll(elt);
1732        RESULT = list;
1733    
1734              CUP$Parser$result = new java_cup.runtime.Symbol(26/*ppg_start_spec_list*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1735            }
1736          return CUP$Parser$result;
1737
1738          /*. . . . . . . . . . . . . . . . . . . .*/
1739          case 10: // ppg_start_spec ::= ppg_start_spec_list
1740
{
1741              Vector RESULT = null;
1742        int mleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1743        int mright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1744        Vector m = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1745         RESULT = m;
1746              CUP$Parser$result = new java_cup.runtime.Symbol(24/*ppg_start_spec*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1747            }
1748          return CUP$Parser$result;
1749
1750          /*. . . . . . . . . . . . . . . . . . . .*/
1751          case 9: // ppg_start_spec ::= START WITH nt_id SEMI
1752
{
1753              Vector RESULT = null;
1754        int startleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
1755        int startright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
1756        String JavaDoc start = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
1757         
1758        Vector v = new Vector();
1759        v.addElement(start);
1760        RESULT = v;
1761    
1762              CUP$Parser$result = new java_cup.runtime.Symbol(24/*ppg_start_spec*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1763            }
1764          return CUP$Parser$result;
1765
1766          /*. . . . . . . . . . . . . . . . . . . .*/
1767          case 8: // ppg_precedence_list ::= PRECEDENCE SEMI
1768
{
1769              Vector RESULT = null;
1770         RESULT = null;
1771              CUP$Parser$result = new java_cup.runtime.Symbol(23/*ppg_precedence_list*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1772            }
1773          return CUP$Parser$result;
1774
1775          /*. . . . . . . . . . . . . . . . . . . .*/
1776          case 7: // ppg_precedence_list ::= precedence_list
1777
{
1778              Vector RESULT = null;
1779        int p_lleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1780        int p_lright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1781        Vector p_l = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1782         RESULT = p_l;
1783              CUP$Parser$result = new java_cup.runtime.Symbol(23/*ppg_precedence_list*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1784            }
1785          return CUP$Parser$result;
1786
1787          /*. . . . . . . . . . . . . . . . . . . .*/
1788          case 6: // symbol_list_opt ::=
1789
{
1790              Vector RESULT = null;
1791         RESULT = null;
1792              CUP$Parser$result = new java_cup.runtime.Symbol(50/*symbol_list_opt*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1793            }
1794          return CUP$Parser$result;
1795
1796          /*. . . . . . . . . . . . . . . . . . . .*/
1797          case 5: // symbol_list_opt ::= symbol_list
1798
{
1799              Vector RESULT = null;
1800        int sym_listleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1801        int sym_listright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1802        Vector sym_list = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1803         RESULT = sym_list;
1804              CUP$Parser$result = new java_cup.runtime.Symbol(50/*symbol_list_opt*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1805            }
1806          return CUP$Parser$result;
1807
1808          /*. . . . . . . . . . . . . . . . . . . .*/
1809          case 4: // include_spec ::= INCLUDE STRING_CONST
1810
{
1811              String JavaDoc RESULT = null;
1812        int aleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1813        int aright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1814        Token a = (Token)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1815        
1816        RESULT = (String JavaDoc)a.getValue();
1817    
1818              CUP$Parser$result = new java_cup.runtime.Symbol(16/*include_spec*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1819            }
1820          return CUP$Parser$result;
1821
1822          /*. . . . . . . . . . . . . . . . . . . .*/
1823          case 3: // ppg_spec ::= include_spec package_spec import_list code_parts symbol_list_opt ppg_precedence_list ppg_start_spec command_list_opt
1824
{
1825              Spec RESULT = null;
1826        int incleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-7)).left;
1827        int incright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-7)).right;
1828        String JavaDoc inc = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-7)).value;
1829        int pkgleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)).left;
1830        int pkgright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)).right;
1831        String JavaDoc pkg = (String JavaDoc)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-6)).value;
1832        int impleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).left;
1833        int impright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).right;
1834        Vector imp = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-5)).value;
1835        int codeleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).left;
1836        int coderight = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).right;
1837        Vector code = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-4)).value;
1838        int sym_listleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
1839        int sym_listright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).right;
1840        Vector sym_list = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-3)).value;
1841        int prec_listleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
1842        int prec_listright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
1843        Vector prec_list = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
1844        int startleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
1845        int startright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
1846        Vector start = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
1847        int cmd_listleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1848        int cmd_listright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1849        Vector cmd_list = (Vector)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1850        
1851        RESULT = new PPGSpec(inc, pkg, imp, code, sym_list,
1852                                prec_list, start, cmd_list);
1853    
1854              CUP$Parser$result = new java_cup.runtime.Symbol(13/*ppg_spec*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-7)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1855            }
1856          return CUP$Parser$result;
1857
1858          /*. . . . . . . . . . . . . . . . . . . .*/
1859          case 2: // spec ::= cup_spec
1860
{
1861              Spec RESULT = null;
1862        int sleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1863        int sright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1864        Spec s = (Spec)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1865        
1866        Parser.setProgramNode(s);
1867    
1868              CUP$Parser$result = new java_cup.runtime.Symbol(12/*spec*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1869            }
1870          return CUP$Parser$result;
1871
1872          /*. . . . . . . . . . . . . . . . . . . .*/
1873          case 1: // spec ::= ppg_spec
1874
{
1875              Spec RESULT = null;
1876        int sleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left;
1877        int sright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right;
1878        Spec s = (Spec)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-0)).value;
1879        
1880        Parser.setProgramNode(s);
1881    
1882              CUP$Parser$result = new java_cup.runtime.Symbol(12/*spec*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1883            }
1884          return CUP$Parser$result;
1885
1886          /*. . . . . . . . . . . . . . . . . . . .*/
1887          case 0: // $START ::= spec EOF
1888
{
1889              Object JavaDoc RESULT = null;
1890        int start_valleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
1891        int start_valright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
1892        Spec start_val = (Spec)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
1893        RESULT = start_val;
1894              CUP$Parser$result = new java_cup.runtime.Symbol(0/*$START*/, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-0)).right, RESULT);
1895            }
1896          /* ACCEPT */
1897          CUP$Parser$parser.done_parsing();
1898          return CUP$Parser$result;
1899
1900          default:
1901            {
1902              throw new Exception JavaDoc(
1903                 "Invalid action number found in internal parse table");
1904            }
1905
1906        }
1907    }
1908}
1909
1910
Popular Tags