2 //----------------------------------------------------
3 // The following code was generated by CUP v0.11b 20160615 (GIT 4ac7450)
4 //----------------------------------------------------
5 package iotpolicy.parser;
7 import java_cup.runtime.ComplexSymbolFactory;
8 import java_cup.runtime.ScannerBuffer;
9 import java_cup.runtime.XMLElement;
10 import javax.xml.stream.XMLOutputFactory;
11 import javax.xml.stream.XMLStreamWriter;
13 import javax.xml.transform.*;
14 import javax.xml.transform.stream.*;
15 import java_cup.runtime.XMLElement;
17 import iotpolicy.tree.ParseNode;
19 /** CUP v0.11b 20160615 (GIT 4ac7450) generated parser.
21 @SuppressWarnings({"rawtypes"})
22 public class Parser extends java_cup.runtime.lr_parser {
24 public final Class getSymbolContainer() {
28 /** Default constructor. */
30 public Parser() {super();}
32 /** Constructor which sets the default scanner. */
34 public Parser(java_cup.runtime.Scanner s) {super(s);}
36 /** Constructor which sets the default scanner. */
37 public Parser(java_cup.runtime.Scanner s, java_cup.runtime.SymbolFactory sf) {super(s,sf);}
39 /** Production table. */
40 protected static final short _production_table[][] =
41 unpackFromStrings(new String[] {
42 "\000\047\000\002\002\003\000\002\002\004\000\002\002" +
43 "\003\000\002\003\011\000\002\004\004\000\002\004\002" +
44 "\000\002\005\011\000\002\005\011\000\002\006\004\000" +
45 "\002\006\002\000\002\007\005\000\002\007\004\000\002" +
46 "\007\005\000\002\007\004\000\002\007\007\000\002\007" +
47 "\007\000\002\007\011\000\002\007\011\000\002\007\011" +
48 "\000\002\007\011\000\002\007\010\000\002\007\010\000" +
49 "\002\007\012\000\002\007\012\000\002\007\012\000\002" +
50 "\007\012\000\002\011\004\000\002\011\002\000\002\012" +
51 "\007\000\002\013\004\000\002\013\002\000\002\014\006" +
52 "\000\002\014\006\000\002\015\004\000\002\015\002\000" +
53 "\002\016\012\000\002\017\003\000\002\017\005\000\002" +
56 /** Access to production table. */
57 public short[][] production_table() {return _production_table;}
59 /** Parse-action table. */
60 protected static final short[][] _action_table =
61 unpackFromStrings(new String[] {
62 "\000\127\000\010\002\uffdf\015\006\022\uffdf\001\002\000" +
63 "\004\002\001\001\002\000\006\002\uffff\022\117\001\002" +
64 "\000\004\016\011\001\002\000\004\002\010\001\002\000" +
65 "\004\002\000\001\002\000\004\026\012\001\002\000\004" +
66 "\012\013\001\002\000\010\013\ufffc\015\ufffc\017\ufffc\001" +
67 "\002\000\010\013\uffe6\015\016\017\uffe6\001\002\000\010" +
68 "\013\ufffd\015\ufffd\017\ufffd\001\002\000\006\025\041\026" +
69 "\040\001\002\000\006\013\022\017\021\001\002\000\006" +
70 "\013\uffe7\017\uffe7\001\002\000\004\026\023\001\002\000" +
71 "\004\002\ufffe\001\002\000\004\012\024\001\002\000\010" +
72 "\013\uffe3\020\uffe3\021\uffe3\001\002\000\010\013\030\020" +
73 "\027\021\031\001\002\000\010\013\uffe4\020\uffe4\021\uffe4" +
74 "\001\002\000\004\014\035\001\002\000\006\013\uffe5\017" +
75 "\uffe5\001\002\000\004\014\032\001\002\000\004\027\033" +
76 "\001\002\000\004\004\034\001\002\000\010\013\uffe1\020" +
77 "\uffe1\021\uffe1\001\002\000\004\027\036\001\002\000\004" +
78 "\004\037\001\002\000\010\013\uffe2\020\uffe2\021\uffe2\001" +
79 "\002\000\004\026\111\001\002\000\004\026\042\001\002" +
80 "\000\004\006\043\001\002\000\010\007\ufff8\025\ufff8\026" +
81 "\ufff8\001\002\000\010\007\046\025\050\026\045\001\002" +
82 "\000\006\010\054\026\055\001\002\000\004\004\053\001" +
83 "\002\000\010\007\ufff9\025\ufff9\026\ufff9\001\002\000\004" +
84 "\026\051\001\002\000\012\005\052\007\ufff6\025\ufff6\026" +
85 "\ufff6\001\002\000\010\007\ufff7\025\ufff7\026\ufff7\001\002" +
86 "\000\010\013\ufffb\015\ufffb\017\ufffb\001\002\000\006\025" +
87 "\060\026\057\001\002\000\012\005\056\007\ufff4\025\ufff4" +
88 "\026\ufff4\001\002\000\010\007\ufff5\025\ufff5\026\ufff5\001" +
89 "\002\000\006\005\075\011\076\001\002\000\006\005\061" +
90 "\011\062\001\002\000\006\025\066\026\065\001\002\000" +
91 "\004\026\063\001\002\000\012\005\064\007\ufff3\025\ufff3" +
92 "\026\ufff3\001\002\000\010\007\uffed\025\uffed\026\uffed\001" +
93 "\002\000\004\011\072\001\002\000\004\011\067\001\002" +
94 "\000\004\026\070\001\002\000\012\005\071\007\ufff1\025" +
95 "\ufff1\026\ufff1\001\002\000\010\007\uffeb\025\uffeb\026\uffeb" +
96 "\001\002\000\004\026\073\001\002\000\012\005\074\007" +
97 "\ufff0\025\ufff0\026\ufff0\001\002\000\010\007\uffea\025\uffea" +
98 "\026\uffea\001\002\000\006\025\102\026\101\001\002\000" +
99 "\004\026\077\001\002\000\012\005\100\007\ufff2\025\ufff2" +
100 "\026\ufff2\001\002\000\010\007\uffec\025\uffec\026\uffec\001" +
101 "\002\000\004\011\106\001\002\000\004\011\103\001\002" +
102 "\000\004\026\104\001\002\000\012\005\105\007\uffef\025" +
103 "\uffef\026\uffef\001\002\000\010\007\uffe9\025\uffe9\026\uffe9" +
104 "\001\002\000\004\026\107\001\002\000\012\005\110\007" +
105 "\uffee\025\uffee\026\uffee\001\002\000\010\007\uffe8\025\uffe8" +
106 "\026\uffe8\001\002\000\004\006\112\001\002\000\010\007" +
107 "\ufff8\025\ufff8\026\ufff8\001\002\000\010\007\114\025\050" +
108 "\026\045\001\002\000\004\004\115\001\002\000\010\013" +
109 "\ufffa\015\ufffa\017\ufffa\001\002\000\006\002\uffe0\022\uffe0" +
110 "\001\002\000\004\026\120\001\002\000\004\023\121\001" +
111 "\002\000\010\005\uffdb\024\uffdb\026\122\001\002\000\006" +
112 "\005\uffdd\024\uffdd\001\002\000\006\005\124\024\125\001" +
113 "\002\000\004\026\131\001\002\000\004\016\126\001\002" +
114 "\000\004\026\127\001\002\000\004\004\130\001\002\000" +
115 "\006\002\uffde\022\uffde\001\002\000\006\005\uffdc\024\uffdc" +
118 /** Access to parse-action table. */
119 public short[][] action_table() {return _action_table;}
121 /** <code>reduce_goto</code> table. */
122 protected static final short[][] _reduce_table =
123 unpackFromStrings(new String[] {
124 "\000\127\000\010\002\006\003\003\015\004\001\001\000" +
125 "\002\001\001\000\004\016\115\001\001\000\002\001\001" +
126 "\000\002\001\001\000\002\001\001\000\002\001\001\000" +
127 "\002\001\001\000\004\004\013\001\001\000\006\005\014" +
128 "\011\016\001\001\000\002\001\001\000\002\001\001\000" +
129 "\004\012\017\001\001\000\002\001\001\000\002\001\001" +
130 "\000\002\001\001\000\002\001\001\000\004\013\024\001" +
131 "\001\000\004\014\025\001\001\000\002\001\001\000\002" +
132 "\001\001\000\002\001\001\000\002\001\001\000\002\001" +
133 "\001\000\002\001\001\000\002\001\001\000\002\001\001" +
134 "\000\002\001\001\000\002\001\001\000\002\001\001\000" +
135 "\002\001\001\000\002\001\001\000\004\006\043\001\001" +
136 "\000\004\007\046\001\001\000\002\001\001\000\002\001" +
137 "\001\000\002\001\001\000\002\001\001\000\002\001\001" +
138 "\000\002\001\001\000\002\001\001\000\002\001\001\000" +
139 "\002\001\001\000\002\001\001\000\002\001\001\000\002" +
140 "\001\001\000\002\001\001\000\002\001\001\000\002\001" +
141 "\001\000\002\001\001\000\002\001\001\000\002\001\001" +
142 "\000\002\001\001\000\002\001\001\000\002\001\001\000" +
143 "\002\001\001\000\002\001\001\000\002\001\001\000\002" +
144 "\001\001\000\002\001\001\000\002\001\001\000\002\001" +
145 "\001\000\002\001\001\000\002\001\001\000\002\001\001" +
146 "\000\002\001\001\000\002\001\001\000\002\001\001\000" +
147 "\002\001\001\000\002\001\001\000\002\001\001\000\004" +
148 "\006\112\001\001\000\004\007\046\001\001\000\002\001" +
149 "\001\000\002\001\001\000\002\001\001\000\002\001\001" +
150 "\000\002\001\001\000\004\017\122\001\001\000\002\001" +
151 "\001\000\002\001\001\000\002\001\001\000\002\001\001" +
152 "\000\002\001\001\000\002\001\001\000\002\001\001\000" +
155 /** Access to <code>reduce_goto</code> table. */
156 public short[][] reduce_table() {return _reduce_table;}
158 /** Instance of action encapsulation class. */
159 protected CUP$Parser$actions action_obj;
161 /** Action encapsulation object initializer. */
162 protected void init_actions()
164 action_obj = new CUP$Parser$actions(this);
167 /** Invoke a user supplied parse action. */
168 public java_cup.runtime.Symbol do_action(
170 java_cup.runtime.lr_parser parser,
171 java.util.Stack stack,
173 throws java.lang.Exception
175 /* call code in generated class */
176 return action_obj.CUP$Parser$do_action(act_num, parser, stack, top);
179 /** Indicates start state. */
180 public int start_state() {return 0;}
181 /** Indicates start production. */
182 public int start_production() {return 1;}
184 /** <code>EOF</code> Symbol index. */
185 public int EOF_sym() {return 0;}
187 /** <code>error</code> Symbol index. */
188 public int error_sym() {return 1;}
192 public Parser(Lexer lex, ComplexSymbolFactory sf) {
195 public static void main(String[] args) throws Exception {
196 // initialize the symbol factory
197 ComplexSymbolFactory csf = new ComplexSymbolFactory();
198 // create a buffering scanner wrapper
199 ScannerBuffer lexer = new ScannerBuffer(new Lexer(new BufferedReader(new FileReader(args[0])),csf));
201 Parser p = new Parser(lexer,csf);
202 ParseNode pn = (ParseNode) p.parse().value;
206 /** Cup generated class to encapsulate user supplied action code.*/
207 @SuppressWarnings({"rawtypes", "unchecked", "unused"})
208 class CUP$Parser$actions {
209 private final Parser parser;
212 CUP$Parser$actions(Parser parser) {
213 this.parser = parser;
216 /** Method 0 with the actual generated action code for actions 0 to 300. */
217 public final java_cup.runtime.Symbol CUP$Parser$do_action_part00000000(
218 int CUP$Parser$act_num,
219 java_cup.runtime.lr_parser CUP$Parser$parser,
220 java.util.Stack CUP$Parser$stack,
222 throws java.lang.Exception
224 /* Symbol object for return from actions */
225 java_cup.runtime.Symbol CUP$Parser$result;
227 /* select the action based on the action number */
228 switch (CUP$Parser$act_num)
230 /*. . . . . . . . . . . . . . . . . . . .*/
231 case 0: // policy ::= intface
233 ParseNode RESULT =null;
234 int inleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
235 int inright = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
236 ParseNode in = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
238 ParseNode pn = new ParseNode("policy");
242 CUP$Parser$result = parser.getSymbolFactory().newSymbol("policy",0, ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
244 return CUP$Parser$result;
246 /*. . . . . . . . . . . . . . . . . . . .*/
247 case 1: // $START ::= policy EOF
250 int start_valleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
251 int start_valright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
252 ParseNode start_val = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
254 CUP$Parser$result = parser.getSymbolFactory().newSymbol("$START",0, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
257 CUP$Parser$parser.done_parsing();
258 return CUP$Parser$result;
260 /*. . . . . . . . . . . . . . . . . . . .*/
261 case 2: // policy ::= reqlist
263 ParseNode RESULT =null;
264 int rlleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
265 int rlright = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
266 ParseNode rl = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
268 ParseNode pn = new ParseNode("policy");
272 CUP$Parser$result = parser.getSymbolFactory().newSymbol("policy",0, ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
274 return CUP$Parser$result;
276 /*. . . . . . . . . . . . . . . . . . . .*/
277 case 3: // intface ::= PUBLIC INTERFACE IDENT BEGIN methlist capablist END
279 ParseNode RESULT =null;
280 int idintleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).left;
281 int idintright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).right;
282 Object idint = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-4)).value;
283 int mlleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
284 int mlright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
285 ParseNode ml = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
286 int clleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
287 int clright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
288 ParseNode cl = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
290 ParseNode pn = new ParseNode("interface");
291 pn.addChild("intface_ident").setLiteral(idint);
296 CUP$Parser$result = parser.getSymbolFactory().newSymbol("intface",1, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
298 return CUP$Parser$result;
300 /*. . . . . . . . . . . . . . . . . . . .*/
301 case 4: // methlist ::= methlist meth
303 ParseNode RESULT =null;
304 int mlleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
305 int mlright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
306 ParseNode ml = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
307 int mleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
308 int mright = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
309 ParseNode m = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
314 CUP$Parser$result = parser.getSymbolFactory().newSymbol("methlist",2, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
316 return CUP$Parser$result;
318 /*. . . . . . . . . . . . . . . . . . . .*/
319 case 5: // methlist ::=
321 ParseNode RESULT =null;
323 ParseNode pn = new ParseNode("method_list");
326 CUP$Parser$result = parser.getSymbolFactory().newSymbol("methlist",2, ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
328 return CUP$Parser$result;
330 /*. . . . . . . . . . . . . . . . . . . .*/
331 case 6: // meth ::= PUBLIC TYPE IDENT LPAR paramlist RPAR SEMICOLON
333 ParseNode RESULT =null;
334 int typemethleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).left;
335 int typemethright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).right;
336 Object typemeth = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-5)).value;
337 int idmethleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).left;
338 int idmethright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).right;
339 Object idmeth = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-4)).value;
340 int plleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
341 int plright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
342 ParseNode pl = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
344 ParseNode pn = new ParseNode("method");
345 pn.addChild("method_type").setLiteral(typemeth);
346 pn.addChild("method_ident").setLiteral(idmeth);
350 CUP$Parser$result = parser.getSymbolFactory().newSymbol("meth",3, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
352 return CUP$Parser$result;
354 /*. . . . . . . . . . . . . . . . . . . .*/
355 case 7: // meth ::= PUBLIC IDENT IDENT LPAR paramlist RPAR SEMICOLON
357 ParseNode RESULT =null;
358 int clsmethleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).left;
359 int clsmethright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).right;
360 Object clsmeth = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-5)).value;
361 int idmethleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).left;
362 int idmethright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).right;
363 Object idmeth = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-4)).value;
364 int plleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
365 int plright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
366 ParseNode pl = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
368 ParseNode pn = new ParseNode("method");
369 pn.addChild("method_class").setLiteral(clsmeth);
370 pn.addChild("method_ident").setLiteral(idmeth);
374 CUP$Parser$result = parser.getSymbolFactory().newSymbol("meth",3, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
376 return CUP$Parser$result;
378 /*. . . . . . . . . . . . . . . . . . . .*/
379 case 8: // paramlist ::= paramlist param
381 ParseNode RESULT =null;
382 int plleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
383 int plright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
384 ParseNode pl = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
385 int pleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
386 int pright = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
387 ParseNode p = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
392 CUP$Parser$result = parser.getSymbolFactory().newSymbol("paramlist",4, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
394 return CUP$Parser$result;
396 /*. . . . . . . . . . . . . . . . . . . .*/
397 case 9: // paramlist ::=
399 ParseNode RESULT =null;
401 ParseNode pn = new ParseNode("param_list");
404 CUP$Parser$result = parser.getSymbolFactory().newSymbol("paramlist",4, ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
406 return CUP$Parser$result;
408 /*. . . . . . . . . . . . . . . . . . . .*/
409 case 10: // param ::= TYPE IDENT COMMA
411 ParseNode RESULT =null;
412 int typeprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
413 int typeprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
414 Object typeprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
415 int idprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
416 int idprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
417 Object idprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
419 ParseNode pn = new ParseNode("param");
420 pn.addChild("param_type").setLiteral(typeprm);
421 pn.addChild("param_ident").setLiteral(idprm);
424 CUP$Parser$result = parser.getSymbolFactory().newSymbol("param",5, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
426 return CUP$Parser$result;
428 /*. . . . . . . . . . . . . . . . . . . .*/
429 case 11: // param ::= TYPE IDENT
431 ParseNode RESULT =null;
432 int typeprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
433 int typeprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
434 Object typeprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
435 int idprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
436 int idprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
437 Object idprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
439 ParseNode pn = new ParseNode("param");
440 pn.addChild("param_type").setLiteral(typeprm);
441 pn.addChild("param_ident").setLiteral(idprm);
444 CUP$Parser$result = parser.getSymbolFactory().newSymbol("param",5, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
446 return CUP$Parser$result;
448 /*. . . . . . . . . . . . . . . . . . . .*/
449 case 12: // param ::= IDENT IDENT COMMA
451 ParseNode RESULT =null;
452 int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
453 int clsprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
454 Object clsprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
455 int idprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
456 int idprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
457 Object idprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
459 ParseNode pn = new ParseNode("param");
460 pn.addChild("param_class").setLiteral(clsprm);
461 pn.addChild("param_ident").setLiteral(idprm);
464 CUP$Parser$result = parser.getSymbolFactory().newSymbol("param",5, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
466 return CUP$Parser$result;
468 /*. . . . . . . . . . . . . . . . . . . .*/
469 case 13: // param ::= IDENT IDENT
471 ParseNode RESULT =null;
472 int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
473 int clsprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
474 Object clsprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
475 int idprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
476 int idprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
477 Object idprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
479 ParseNode pn = new ParseNode("param");
480 pn.addChild("param_class").setLiteral(clsprm);
481 pn.addChild("param_ident").setLiteral(idprm);
484 CUP$Parser$result = parser.getSymbolFactory().newSymbol("param",5, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
486 return CUP$Parser$result;
488 /*. . . . . . . . . . . . . . . . . . . .*/
489 case 14: // param ::= IDENT LANG TYPE RANG IDENT
491 ParseNode RESULT =null;
492 int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).left;
493 int clsprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).right;
494 Object clsprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-4)).value;
495 int typegenleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
496 int typegenright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
497 Object typegen = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
498 int idprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
499 int idprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
500 Object idprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
502 ParseNode pn = new ParseNode("param");
503 pn.addChild("param_class").setLiteral((String)clsprm + "<" + typegen + ">");
504 pn.addChild("param_ident").setLiteral(idprm);
507 CUP$Parser$result = parser.getSymbolFactory().newSymbol("param",5, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
509 return CUP$Parser$result;
511 /*. . . . . . . . . . . . . . . . . . . .*/
512 case 15: // param ::= IDENT LANG IDENT RANG IDENT
514 ParseNode RESULT =null;
515 int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).left;
516 int clsprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).right;
517 Object clsprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-4)).value;
518 int clsgenleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
519 int clsgenright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
520 Object clsgen = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
521 int idprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
522 int idprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
523 Object idprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
525 ParseNode pn = new ParseNode("param");
526 pn.addChild("param_class").setLiteral((String)clsprm + "<" + clsgen + ">");
527 pn.addChild("param_ident").setLiteral(idprm);
530 CUP$Parser$result = parser.getSymbolFactory().newSymbol("param",5, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
532 return CUP$Parser$result;
534 /*. . . . . . . . . . . . . . . . . . . .*/
535 case 16: // param ::= IDENT LANG TYPE COMMA TYPE RANG IDENT
537 ParseNode RESULT =null;
538 int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)).left;
539 int clsprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)).right;
540 Object clsprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-6)).value;
541 int typegen1left = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).left;
542 int typegen1right = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).right;
543 Object typegen1 = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-4)).value;
544 int typegen2left = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
545 int typegen2right = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
546 Object typegen2 = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
547 int idprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
548 int idprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
549 Object idprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
551 ParseNode pn = new ParseNode("param");
552 pn.addChild("param_class").setLiteral((String)clsprm
553 + "<" + typegen1 + "," + typegen2 + ">");
554 pn.addChild("param_ident").setLiteral(idprm);
557 CUP$Parser$result = parser.getSymbolFactory().newSymbol("param",5, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
559 return CUP$Parser$result;
561 /*. . . . . . . . . . . . . . . . . . . .*/
562 case 17: // param ::= IDENT LANG TYPE COMMA IDENT RANG IDENT
564 ParseNode RESULT =null;
565 int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)).left;
566 int clsprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)).right;
567 Object clsprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-6)).value;
568 int typegenleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).left;
569 int typegenright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).right;
570 Object typegen = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-4)).value;
571 int clsgenleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
572 int clsgenright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
573 Object clsgen = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
574 int idprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
575 int idprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
576 Object idprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
578 ParseNode pn = new ParseNode("param");
579 pn.addChild("param_class").setLiteral((String)clsprm
580 + "<" + typegen + "," + clsgen + ">");
581 pn.addChild("param_ident").setLiteral(idprm);
584 CUP$Parser$result = parser.getSymbolFactory().newSymbol("param",5, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
586 return CUP$Parser$result;
588 /*. . . . . . . . . . . . . . . . . . . .*/
589 case 18: // param ::= IDENT LANG IDENT COMMA TYPE RANG IDENT
591 ParseNode RESULT =null;
592 int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)).left;
593 int clsprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)).right;
594 Object clsprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-6)).value;
595 int clsgenleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).left;
596 int clsgenright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).right;
597 Object clsgen = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-4)).value;
598 int typegenleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
599 int typegenright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
600 Object typegen = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
601 int idprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
602 int idprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
603 Object idprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
605 ParseNode pn = new ParseNode("param");
606 pn.addChild("param_class").setLiteral((String)clsprm
607 + "<" + clsgen + "," + typegen + ">");
608 pn.addChild("param_ident").setLiteral(idprm);
611 CUP$Parser$result = parser.getSymbolFactory().newSymbol("param",5, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
613 return CUP$Parser$result;
615 /*. . . . . . . . . . . . . . . . . . . .*/
616 case 19: // param ::= IDENT LANG IDENT COMMA IDENT RANG IDENT
618 ParseNode RESULT =null;
619 int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)).left;
620 int clsprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)).right;
621 Object clsprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-6)).value;
622 int clsgen1left = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).left;
623 int clsgen1right = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).right;
624 Object clsgen1 = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-4)).value;
625 int clsgen2left = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
626 int clsgen2right = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
627 Object clsgen2 = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
628 int idprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
629 int idprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
630 Object idprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
632 ParseNode pn = new ParseNode("param");
633 pn.addChild("param_class").setLiteral((String)clsprm
634 + "<" + clsgen1 + "," + clsgen2 + ">");
635 pn.addChild("param_ident").setLiteral(idprm);
638 CUP$Parser$result = parser.getSymbolFactory().newSymbol("param",5, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
640 return CUP$Parser$result;
642 /*. . . . . . . . . . . . . . . . . . . .*/
643 case 20: // param ::= IDENT LANG TYPE RANG IDENT COMMA
645 ParseNode RESULT =null;
646 int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).left;
647 int clsprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).right;
648 Object clsprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-5)).value;
649 int typegenleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
650 int typegenright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).right;
651 Object typegen = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-3)).value;
652 int idprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
653 int idprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
654 Object idprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
656 ParseNode pn = new ParseNode("param");
657 pn.addChild("param_class").setLiteral((String)clsprm + "<" + typegen + ">");
658 pn.addChild("param_ident").setLiteral(idprm);
661 CUP$Parser$result = parser.getSymbolFactory().newSymbol("param",5, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
663 return CUP$Parser$result;
665 /*. . . . . . . . . . . . . . . . . . . .*/
666 case 21: // param ::= IDENT LANG IDENT RANG IDENT COMMA
668 ParseNode RESULT =null;
669 int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).left;
670 int clsprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).right;
671 Object clsprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-5)).value;
672 int clsgenleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
673 int clsgenright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).right;
674 Object clsgen = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-3)).value;
675 int idprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
676 int idprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
677 Object idprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
679 ParseNode pn = new ParseNode("param");
680 pn.addChild("param_class").setLiteral((String)clsprm + "<" + clsgen + ">");
681 pn.addChild("param_ident").setLiteral(idprm);
684 CUP$Parser$result = parser.getSymbolFactory().newSymbol("param",5, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
686 return CUP$Parser$result;
688 /*. . . . . . . . . . . . . . . . . . . .*/
689 case 22: // param ::= IDENT LANG TYPE COMMA TYPE RANG IDENT COMMA
691 ParseNode RESULT =null;
692 int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-7)).left;
693 int clsprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-7)).right;
694 Object clsprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-7)).value;
695 int typegen1left = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).left;
696 int typegen1right = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).right;
697 Object typegen1 = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-5)).value;
698 int typegen2left = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
699 int typegen2right = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).right;
700 Object typegen2 = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-3)).value;
701 int idprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
702 int idprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
703 Object idprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
705 ParseNode pn = new ParseNode("param");
706 pn.addChild("param_class").setLiteral((String)clsprm
707 + "<" + typegen1 + "," + typegen2 + ">");
708 pn.addChild("param_ident").setLiteral(idprm);
711 CUP$Parser$result = parser.getSymbolFactory().newSymbol("param",5, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-7)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
713 return CUP$Parser$result;
715 /*. . . . . . . . . . . . . . . . . . . .*/
716 case 23: // param ::= IDENT LANG TYPE COMMA IDENT RANG IDENT COMMA
718 ParseNode RESULT =null;
719 int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-7)).left;
720 int clsprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-7)).right;
721 Object clsprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-7)).value;
722 int typegenleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).left;
723 int typegenright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).right;
724 Object typegen = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-5)).value;
725 int clsgenleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
726 int clsgenright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).right;
727 Object clsgen = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-3)).value;
728 int idprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
729 int idprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
730 Object idprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
732 ParseNode pn = new ParseNode("param");
733 pn.addChild("param_class").setLiteral((String)clsprm
734 + "<" + typegen + "," + clsgen + ">");
735 pn.addChild("param_ident").setLiteral(idprm);
738 CUP$Parser$result = parser.getSymbolFactory().newSymbol("param",5, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-7)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
740 return CUP$Parser$result;
742 /*. . . . . . . . . . . . . . . . . . . .*/
743 case 24: // param ::= IDENT LANG IDENT COMMA TYPE RANG IDENT COMMA
745 ParseNode RESULT =null;
746 int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-7)).left;
747 int clsprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-7)).right;
748 Object clsprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-7)).value;
749 int clsgenleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).left;
750 int clsgenright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).right;
751 Object clsgen = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-5)).value;
752 int typegenleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
753 int typegenright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).right;
754 Object typegen = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-3)).value;
755 int idprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
756 int idprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
757 Object idprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
759 ParseNode pn = new ParseNode("param");
760 pn.addChild("param_class").setLiteral((String)clsprm
761 + "<" + clsgen + "," + typegen + ">");
762 pn.addChild("param_ident").setLiteral(idprm);
765 CUP$Parser$result = parser.getSymbolFactory().newSymbol("param",5, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-7)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
767 return CUP$Parser$result;
769 /*. . . . . . . . . . . . . . . . . . . .*/
770 case 25: // param ::= IDENT LANG IDENT COMMA IDENT RANG IDENT COMMA
772 ParseNode RESULT =null;
773 int clsprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-7)).left;
774 int clsprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-7)).right;
775 Object clsprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-7)).value;
776 int clsgen1left = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).left;
777 int clsgen1right = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-5)).right;
778 Object clsgen1 = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-5)).value;
779 int clsgen2left = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
780 int clsgen2right = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).right;
781 Object clsgen2 = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-3)).value;
782 int idprmleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
783 int idprmright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
784 Object idprm = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
786 ParseNode pn = new ParseNode("param");
787 pn.addChild("param_class").setLiteral((String)clsprm
788 + "<" + clsgen1 + "," + clsgen2 + ">");
789 pn.addChild("param_ident").setLiteral(idprm);
792 CUP$Parser$result = parser.getSymbolFactory().newSymbol("param",5, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-7)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
794 return CUP$Parser$result;
796 /*. . . . . . . . . . . . . . . . . . . .*/
797 case 26: // capablist ::= capablist capab
799 ParseNode RESULT =null;
800 int clleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
801 int clright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
802 ParseNode cl = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
803 int capleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
804 int capright = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
805 ParseNode cap = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
810 CUP$Parser$result = parser.getSymbolFactory().newSymbol("capablist",7, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
812 return CUP$Parser$result;
814 /*. . . . . . . . . . . . . . . . . . . .*/
815 case 27: // capablist ::=
817 ParseNode RESULT =null;
819 ParseNode pn = new ParseNode("capab_list");
822 CUP$Parser$result = parser.getSymbolFactory().newSymbol("capablist",7, ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
824 return CUP$Parser$result;
826 /*. . . . . . . . . . . . . . . . . . . .*/
827 case 28: // capab ::= CAPABILITY IDENT BEGIN capabcont END
829 ParseNode RESULT =null;
830 int idcapleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
831 int idcapright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).right;
832 Object idcap = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-3)).value;
833 int ccontleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
834 int ccontright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
835 ParseNode ccont = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
837 ParseNode pn = new ParseNode("capability");
838 pn.addChild("capab_ident").setLiteral(idcap);
842 CUP$Parser$result = parser.getSymbolFactory().newSymbol("capab",8, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
844 return CUP$Parser$result;
846 /*. . . . . . . . . . . . . . . . . . . .*/
847 case 29: // capabcont ::= capabcont cont
849 ParseNode RESULT =null;
850 int ccontleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
851 int ccontright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
852 ParseNode ccont = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
853 int cntleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
854 int cntright = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
855 ParseNode cnt = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
860 CUP$Parser$result = parser.getSymbolFactory().newSymbol("capabcont",9, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
862 return CUP$Parser$result;
864 /*. . . . . . . . . . . . . . . . . . . .*/
865 case 30: // capabcont ::=
867 ParseNode RESULT =null;
869 ParseNode pn = new ParseNode("capab_content");
872 CUP$Parser$result = parser.getSymbolFactory().newSymbol("capabcont",9, ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
874 return CUP$Parser$result;
876 /*. . . . . . . . . . . . . . . . . . . .*/
877 case 31: // cont ::= DESCRIPTION ASSIGN STRINGCONST SEMICOLON
879 ParseNode RESULT =null;
880 int dscleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
881 int dscright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).right;
882 Object dsc = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-3)).value;
883 int strdscleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
884 int strdscright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
885 Object strdsc = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
887 ParseNode pn = new ParseNode("capab_content");
888 pn.addChild("capab_desc").setLiteral(strdsc);
891 CUP$Parser$result = parser.getSymbolFactory().newSymbol("cont",10, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
893 return CUP$Parser$result;
895 /*. . . . . . . . . . . . . . . . . . . .*/
896 case 32: // cont ::= METHOD ASSIGN STRINGCONST SEMICOLON
898 ParseNode RESULT =null;
899 int mtdleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).left;
900 int mtdright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)).right;
901 Object mtd = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-3)).value;
902 int strmethleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
903 int strmethright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
904 Object strmeth = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
906 ParseNode pn = new ParseNode("capab_content");
907 pn.addChild("capab_meth").setLiteral(strmeth);
910 CUP$Parser$result = parser.getSymbolFactory().newSymbol("cont",10, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-3)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
912 return CUP$Parser$result;
914 /*. . . . . . . . . . . . . . . . . . . .*/
915 case 33: // reqlist ::= reqlist require
917 ParseNode RESULT =null;
918 int rlleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
919 int rlright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
920 ParseNode rl = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
921 int reqleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
922 int reqright = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
923 ParseNode req = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
928 CUP$Parser$result = parser.getSymbolFactory().newSymbol("reqlist",11, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
930 return CUP$Parser$result;
932 /*. . . . . . . . . . . . . . . . . . . .*/
933 case 34: // reqlist ::=
935 ParseNode RESULT =null;
937 ParseNode pn = new ParseNode("reqlist");
940 CUP$Parser$result = parser.getSymbolFactory().newSymbol("reqlist",11, ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
942 return CUP$Parser$result;
944 /*. . . . . . . . . . . . . . . . . . . .*/
945 case 35: // require ::= REQUIRES IDENT WITH capintlist AS INTERFACE IDENT SEMICOLON
947 ParseNode RESULT =null;
948 int idintleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)).left;
949 int idintright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-6)).right;
950 Object idint = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-6)).value;
951 int cilleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).left;
952 int cilright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-4)).right;
953 ParseNode cil = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-4)).value;
954 int idnewintleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).left;
955 int idnewintright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-1)).right;
956 Object idnewint = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-1)).value;
958 ParseNode pn = new ParseNode("requires");
959 pn.addChild("intface_ident").setLiteral(idint);
961 pn.addChild("new_intface_ident").setLiteral(idnewint);
964 CUP$Parser$result = parser.getSymbolFactory().newSymbol("require",12, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-7)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
966 return CUP$Parser$result;
968 /*. . . . . . . . . . . . . . . . . . . .*/
969 case 36: // capintlist ::= IDENT
971 ParseNode RESULT =null;
972 int idcapleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
973 int idcapright = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
974 Object idcap = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
976 ParseNode pn = new ParseNode("capab_ident_list");
977 pn.addChild("capab_ident").setLiteral(idcap);
980 CUP$Parser$result = parser.getSymbolFactory().newSymbol("capintlist",13, ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
982 return CUP$Parser$result;
984 /*. . . . . . . . . . . . . . . . . . . .*/
985 case 37: // capintlist ::= capintlist COMMA IDENT
987 ParseNode RESULT =null;
988 int cilleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).left;
989 int cilright = ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)).right;
990 ParseNode cil = (ParseNode)((java_cup.runtime.Symbol) CUP$Parser$stack.elementAt(CUP$Parser$top-2)).value;
991 int idcapleft = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).left;
992 int idcapright = ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()).right;
993 Object idcap = (Object)((java_cup.runtime.Symbol) CUP$Parser$stack.peek()).value;
995 cil.addChild("capab_ident").setLiteral(idcap);
998 CUP$Parser$result = parser.getSymbolFactory().newSymbol("capintlist",13, ((java_cup.runtime.Symbol)CUP$Parser$stack.elementAt(CUP$Parser$top-2)), ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
1000 return CUP$Parser$result;
1002 /*. . . . . . . . . . . . . . . . . . . .*/
1003 case 38: // capintlist ::=
1005 ParseNode RESULT =null;
1007 ParseNode pn = new ParseNode("capab_ident_list");
1010 CUP$Parser$result = parser.getSymbolFactory().newSymbol("capintlist",13, ((java_cup.runtime.Symbol)CUP$Parser$stack.peek()), RESULT);
1012 return CUP$Parser$result;
1016 throw new Exception(
1017 "Invalid action number "+CUP$Parser$act_num+"found in internal parse table");
1020 } /* end of method */
1022 /** Method splitting the generated action code into several parts. */
1023 public final java_cup.runtime.Symbol CUP$Parser$do_action(
1024 int CUP$Parser$act_num,
1025 java_cup.runtime.lr_parser CUP$Parser$parser,
1026 java.util.Stack CUP$Parser$stack,
1028 throws java.lang.Exception
1030 return CUP$Parser$do_action_part00000000(