1
2 package org.apache.commons.ognl;
3
4 import java.math.*;
5
6
7
8
9
10 public class OgnlParser
11 protected JJTOgnlParserState jjtree = new JJTOgnlParserState();
12
13
14
15
16 final public Node topLevelExpression() throws ParseException {
17 expression();
18 jj_consume_token(0);
19 {if (true) return jjtree.rootNode();}
20 throw new Error("Missing return statement in function");
21 }
22
23
24 final public void expression() throws ParseException {
25 assignmentExpression();
26 label_1:
27 while (true) {
28 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
29 case 1:
30 ;
31 break;
32 default:
33 jj_la1[0] = jj_gen;
34 break label_1;
35 }
36 jj_consume_token(1);
37 ASTSequence jjtn001 = new ASTSequence(JJTSEQUENCE);
38 boolean jjtc001 = true;
39 jjtree.openNodeScope(jjtn001);
40 try {
41 assignmentExpression();
42 } catch (Throwable jjte001) {
43 if (jjtc001) {
44 jjtree.clearNodeScope(jjtn001);
45 jjtc001 = false;
46 } else {
47 jjtree.popNode();
48 }
49 if (jjte001 instanceof RuntimeException) {
50 {if (true) throw (RuntimeException)jjte001;}
51 }
52 if (jjte001 instanceof ParseException) {
53 {if (true) throw (ParseException)jjte001;}
54 }
55 {if (true) throw (Error)jjte001;}
56 } finally {
57 if (jjtc001) {
58 jjtree.closeNodeScope(jjtn001, 2);
59 }
60 }
61 }
62 }
63
64
65 final public void assignmentExpression() throws ParseException {
66 conditionalTestExpression();
67 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
68 case 2:
69 jj_consume_token(2);
70 ASTAssign jjtn001 = new ASTAssign(JJTASSIGN);
71 boolean jjtc001 = true;
72 jjtree.openNodeScope(jjtn001);
73 try {
74 assignmentExpression();
75 } catch (Throwable jjte001) {
76 if (jjtc001) {
77 jjtree.clearNodeScope(jjtn001);
78 jjtc001 = false;
79 } else {
80 jjtree.popNode();
81 }
82 if (jjte001 instanceof RuntimeException) {
83 {if (true) throw (RuntimeException)jjte001;}
84 }
85 if (jjte001 instanceof ParseException) {
86 {if (true) throw (ParseException)jjte001;}
87 }
88 {if (true) throw (Error)jjte001;}
89 } finally {
90 if (jjtc001) {
91 jjtree.closeNodeScope(jjtn001, 2);
92 }
93 }
94 break;
95 default:
96 jj_la1[1] = jj_gen;
97 ;
98 }
99 }
100
101
102 final public void conditionalTestExpression() throws ParseException {
103 logicalOrExpression();
104 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
105 case 3:
106 jj_consume_token(3);
107 conditionalTestExpression();
108 jj_consume_token(4);
109 ASTTest jjtn001 = new ASTTest(JJTTEST);
110 boolean jjtc001 = true;
111 jjtree.openNodeScope(jjtn001);
112 try {
113 conditionalTestExpression();
114 } catch (Throwable jjte001) {
115 if (jjtc001) {
116 jjtree.clearNodeScope(jjtn001);
117 jjtc001 = false;
118 } else {
119 jjtree.popNode();
120 }
121 if (jjte001 instanceof RuntimeException) {
122 {if (true) throw (RuntimeException)jjte001;}
123 }
124 if (jjte001 instanceof ParseException) {
125 {if (true) throw (ParseException)jjte001;}
126 }
127 {if (true) throw (Error)jjte001;}
128 } finally {
129 if (jjtc001) {
130 jjtree.closeNodeScope(jjtn001, 3);
131 }
132 }
133 break;
134 default:
135 jj_la1[2] = jj_gen;
136 ;
137 }
138 }
139
140
141 final public void logicalOrExpression() throws ParseException {
142 logicalAndExpression();
143 label_2:
144 while (true) {
145 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
146 case 5:
147 case 6:
148 ;
149 break;
150 default:
151 jj_la1[3] = jj_gen;
152 break label_2;
153 }
154 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
155 case 5:
156 jj_consume_token(5);
157 break;
158 case 6:
159 jj_consume_token(6);
160 break;
161 default:
162 jj_la1[4] = jj_gen;
163 jj_consume_token(-1);
164 throw new ParseException();
165 }
166 ASTOr jjtn001 = new ASTOr(JJTOR);
167 boolean jjtc001 = true;
168 jjtree.openNodeScope(jjtn001);
169 try {
170 logicalAndExpression();
171 } catch (Throwable jjte001) {
172 if (jjtc001) {
173 jjtree.clearNodeScope(jjtn001);
174 jjtc001 = false;
175 } else {
176 jjtree.popNode();
177 }
178 if (jjte001 instanceof RuntimeException) {
179 {if (true) throw (RuntimeException)jjte001;}
180 }
181 if (jjte001 instanceof ParseException) {
182 {if (true) throw (ParseException)jjte001;}
183 }
184 {if (true) throw (Error)jjte001;}
185 } finally {
186 if (jjtc001) {
187 jjtree.closeNodeScope(jjtn001, 2);
188 }
189 }
190 }
191 }
192
193
194 final public void logicalAndExpression() throws ParseException {
195 inclusiveOrExpression();
196 label_3:
197 while (true) {
198 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
199 case 7:
200 case 8:
201 ;
202 break;
203 default:
204 jj_la1[5] = jj_gen;
205 break label_3;
206 }
207 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
208 case 7:
209 jj_consume_token(7);
210 break;
211 case 8:
212 jj_consume_token(8);
213 break;
214 default:
215 jj_la1[6] = jj_gen;
216 jj_consume_token(-1);
217 throw new ParseException();
218 }
219 ASTAnd jjtn001 = new ASTAnd(JJTAND);
220 boolean jjtc001 = true;
221 jjtree.openNodeScope(jjtn001);
222 try {
223 inclusiveOrExpression();
224 } catch (Throwable jjte001) {
225 if (jjtc001) {
226 jjtree.clearNodeScope(jjtn001);
227 jjtc001 = false;
228 } else {
229 jjtree.popNode();
230 }
231 if (jjte001 instanceof RuntimeException) {
232 {if (true) throw (RuntimeException)jjte001;}
233 }
234 if (jjte001 instanceof ParseException) {
235 {if (true) throw (ParseException)jjte001;}
236 }
237 {if (true) throw (Error)jjte001;}
238 } finally {
239 if (jjtc001) {
240 jjtree.closeNodeScope(jjtn001, 2);
241 }
242 }
243 }
244 }
245
246
247 final public void inclusiveOrExpression() throws ParseException {
248 exclusiveOrExpression();
249 label_4:
250 while (true) {
251 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
252 case 9:
253 case 10:
254 ;
255 break;
256 default:
257 jj_la1[7] = jj_gen;
258 break label_4;
259 }
260 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
261 case 9:
262 jj_consume_token(9);
263 break;
264 case 10:
265 jj_consume_token(10);
266 break;
267 default:
268 jj_la1[8] = jj_gen;
269 jj_consume_token(-1);
270 throw new ParseException();
271 }
272 ASTBitOr jjtn001 = new ASTBitOr(JJTBITOR);
273 boolean jjtc001 = true;
274 jjtree.openNodeScope(jjtn001);
275 try {
276 exclusiveOrExpression();
277 } catch (Throwable jjte001) {
278 if (jjtc001) {
279 jjtree.clearNodeScope(jjtn001);
280 jjtc001 = false;
281 } else {
282 jjtree.popNode();
283 }
284 if (jjte001 instanceof RuntimeException) {
285 {if (true) throw (RuntimeException)jjte001;}
286 }
287 if (jjte001 instanceof ParseException) {
288 {if (true) throw (ParseException)jjte001;}
289 }
290 {if (true) throw (Error)jjte001;}
291 } finally {
292 if (jjtc001) {
293 jjtree.closeNodeScope(jjtn001, 2);
294 }
295 }
296 }
297 }
298
299
300 final public void exclusiveOrExpression() throws ParseException {
301 andExpression();
302 label_5:
303 while (true) {
304 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
305 case 11:
306 case 12:
307 ;
308 break;
309 default:
310 jj_la1[9] = jj_gen;
311 break label_5;
312 }
313 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
314 case 11:
315 jj_consume_token(11);
316 break;
317 case 12:
318 jj_consume_token(12);
319 break;
320 default:
321 jj_la1[10] = jj_gen;
322 jj_consume_token(-1);
323 throw new ParseException();
324 }
325 ASTXor jjtn001 = new ASTXor(JJTXOR);
326 boolean jjtc001 = true;
327 jjtree.openNodeScope(jjtn001);
328 try {
329 andExpression();
330 } catch (Throwable jjte001) {
331 if (jjtc001) {
332 jjtree.clearNodeScope(jjtn001);
333 jjtc001 = false;
334 } else {
335 jjtree.popNode();
336 }
337 if (jjte001 instanceof RuntimeException) {
338 {if (true) throw (RuntimeException)jjte001;}
339 }
340 if (jjte001 instanceof ParseException) {
341 {if (true) throw (ParseException)jjte001;}
342 }
343 {if (true) throw (Error)jjte001;}
344 } finally {
345 if (jjtc001) {
346 jjtree.closeNodeScope(jjtn001, 2);
347 }
348 }
349 }
350 }
351
352
353 final public void andExpression() throws ParseException {
354 equalityExpression();
355 label_6:
356 while (true) {
357 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
358 case 13:
359 case 14:
360 ;
361 break;
362 default:
363 jj_la1[11] = jj_gen;
364 break label_6;
365 }
366 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
367 case 13:
368 jj_consume_token(13);
369 break;
370 case 14:
371 jj_consume_token(14);
372 break;
373 default:
374 jj_la1[12] = jj_gen;
375 jj_consume_token(-1);
376 throw new ParseException();
377 }
378 ASTBitAnd jjtn001 = new ASTBitAnd(JJTBITAND);
379 boolean jjtc001 = true;
380 jjtree.openNodeScope(jjtn001);
381 try {
382 equalityExpression();
383 } catch (Throwable jjte001) {
384 if (jjtc001) {
385 jjtree.clearNodeScope(jjtn001);
386 jjtc001 = false;
387 } else {
388 jjtree.popNode();
389 }
390 if (jjte001 instanceof RuntimeException) {
391 {if (true) throw (RuntimeException)jjte001;}
392 }
393 if (jjte001 instanceof ParseException) {
394 {if (true) throw (ParseException)jjte001;}
395 }
396 {if (true) throw (Error)jjte001;}
397 } finally {
398 if (jjtc001) {
399 jjtree.closeNodeScope(jjtn001, 2);
400 }
401 }
402 }
403 }
404
405
406 final public void equalityExpression() throws ParseException {
407 relationalExpression();
408 label_7:
409 while (true) {
410 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
411 case 15:
412 case 16:
413 case 17:
414 case 18:
415 ;
416 break;
417 default:
418 jj_la1[13] = jj_gen;
419 break label_7;
420 }
421 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
422 case 15:
423 case 16:
424 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
425 case 15:
426 jj_consume_token(15);
427 break;
428 case 16:
429 jj_consume_token(16);
430 break;
431 default:
432 jj_la1[14] = jj_gen;
433 jj_consume_token(-1);
434 throw new ParseException();
435 }
436 ASTEq jjtn001 = new ASTEq(JJTEQ);
437 boolean jjtc001 = true;
438 jjtree.openNodeScope(jjtn001);
439 try {
440 relationalExpression();
441 } catch (Throwable jjte001) {
442 if (jjtc001) {
443 jjtree.clearNodeScope(jjtn001);
444 jjtc001 = false;
445 } else {
446 jjtree.popNode();
447 }
448 if (jjte001 instanceof RuntimeException) {
449 {if (true) throw (RuntimeException)jjte001;}
450 }
451 if (jjte001 instanceof ParseException) {
452 {if (true) throw (ParseException)jjte001;}
453 }
454 {if (true) throw (Error)jjte001;}
455 } finally {
456 if (jjtc001) {
457 jjtree.closeNodeScope(jjtn001, 2);
458 }
459 }
460 break;
461 case 17:
462 case 18:
463 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
464 case 17:
465 jj_consume_token(17);
466 break;
467 case 18:
468 jj_consume_token(18);
469 break;
470 default:
471 jj_la1[15] = jj_gen;
472 jj_consume_token(-1);
473 throw new ParseException();
474 }
475 ASTNotEq jjtn002 = new ASTNotEq(JJTNOTEQ);
476 boolean jjtc002 = true;
477 jjtree.openNodeScope(jjtn002);
478 try {
479 relationalExpression();
480 } catch (Throwable jjte002) {
481 if (jjtc002) {
482 jjtree.clearNodeScope(jjtn002);
483 jjtc002 = false;
484 } else {
485 jjtree.popNode();
486 }
487 if (jjte002 instanceof RuntimeException) {
488 {if (true) throw (RuntimeException)jjte002;}
489 }
490 if (jjte002 instanceof ParseException) {
491 {if (true) throw (ParseException)jjte002;}
492 }
493 {if (true) throw (Error)jjte002;}
494 } finally {
495 if (jjtc002) {
496 jjtree.closeNodeScope(jjtn002, 2);
497 }
498 }
499 break;
500 default:
501 jj_la1[16] = jj_gen;
502 jj_consume_token(-1);
503 throw new ParseException();
504 }
505 }
506 }
507
508
509 final public void relationalExpression() throws ParseException {
510 shiftExpression();
511 label_8:
512 while (true) {
513 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
514 case 19:
515 case 20:
516 case 21:
517 case 22:
518 case 23:
519 case 24:
520 case 25:
521 case 26:
522 case 27:
523 case 28:
524 ;
525 break;
526 default:
527 jj_la1[17] = jj_gen;
528 break label_8;
529 }
530 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
531 case 19:
532 case 20:
533 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
534 case 19:
535 jj_consume_token(19);
536 break;
537 case 20:
538 jj_consume_token(20);
539 break;
540 default:
541 jj_la1[18] = jj_gen;
542 jj_consume_token(-1);
543 throw new ParseException();
544 }
545 ASTLess jjtn001 = new ASTLess(JJTLESS);
546 boolean jjtc001 = true;
547 jjtree.openNodeScope(jjtn001);
548 try {
549 shiftExpression();
550 } catch (Throwable jjte001) {
551 if (jjtc001) {
552 jjtree.clearNodeScope(jjtn001);
553 jjtc001 = false;
554 } else {
555 jjtree.popNode();
556 }
557 if (jjte001 instanceof RuntimeException) {
558 {if (true) throw (RuntimeException)jjte001;}
559 }
560 if (jjte001 instanceof ParseException) {
561 {if (true) throw (ParseException)jjte001;}
562 }
563 {if (true) throw (Error)jjte001;}
564 } finally {
565 if (jjtc001) {
566 jjtree.closeNodeScope(jjtn001, 2);
567 }
568 }
569 break;
570 case 21:
571 case 22:
572 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
573 case 21:
574 jj_consume_token(21);
575 break;
576 case 22:
577 jj_consume_token(22);
578 break;
579 default:
580 jj_la1[19] = jj_gen;
581 jj_consume_token(-1);
582 throw new ParseException();
583 }
584 ASTGreater jjtn002 = new ASTGreater(JJTGREATER);
585 boolean jjtc002 = true;
586 jjtree.openNodeScope(jjtn002);
587 try {
588 shiftExpression();
589 } catch (Throwable jjte002) {
590 if (jjtc002) {
591 jjtree.clearNodeScope(jjtn002);
592 jjtc002 = false;
593 } else {
594 jjtree.popNode();
595 }
596 if (jjte002 instanceof RuntimeException) {
597 {if (true) throw (RuntimeException)jjte002;}
598 }
599 if (jjte002 instanceof ParseException) {
600 {if (true) throw (ParseException)jjte002;}
601 }
602 {if (true) throw (Error)jjte002;}
603 } finally {
604 if (jjtc002) {
605 jjtree.closeNodeScope(jjtn002, 2);
606 }
607 }
608 break;
609 case 23:
610 case 24:
611 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
612 case 23:
613 jj_consume_token(23);
614 break;
615 case 24:
616 jj_consume_token(24);
617 break;
618 default:
619 jj_la1[20] = jj_gen;
620 jj_consume_token(-1);
621 throw new ParseException();
622 }
623 ASTLessEq jjtn003 = new ASTLessEq(JJTLESSEQ);
624 boolean jjtc003 = true;
625 jjtree.openNodeScope(jjtn003);
626 try {
627 shiftExpression();
628 } catch (Throwable jjte003) {
629 if (jjtc003) {
630 jjtree.clearNodeScope(jjtn003);
631 jjtc003 = false;
632 } else {
633 jjtree.popNode();
634 }
635 if (jjte003 instanceof RuntimeException) {
636 {if (true) throw (RuntimeException)jjte003;}
637 }
638 if (jjte003 instanceof ParseException) {
639 {if (true) throw (ParseException)jjte003;}
640 }
641 {if (true) throw (Error)jjte003;}
642 } finally {
643 if (jjtc003) {
644 jjtree.closeNodeScope(jjtn003, 2);
645 }
646 }
647 break;
648 case 25:
649 case 26:
650 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
651 case 25:
652 jj_consume_token(25);
653 break;
654 case 26:
655 jj_consume_token(26);
656 break;
657 default:
658 jj_la1[21] = jj_gen;
659 jj_consume_token(-1);
660 throw new ParseException();
661 }
662 ASTGreaterEq jjtn004 = new ASTGreaterEq(JJTGREATEREQ);
663 boolean jjtc004 = true;
664 jjtree.openNodeScope(jjtn004);
665 try {
666 shiftExpression();
667 } catch (Throwable jjte004) {
668 if (jjtc004) {
669 jjtree.clearNodeScope(jjtn004);
670 jjtc004 = false;
671 } else {
672 jjtree.popNode();
673 }
674 if (jjte004 instanceof RuntimeException) {
675 {if (true) throw (RuntimeException)jjte004;}
676 }
677 if (jjte004 instanceof ParseException) {
678 {if (true) throw (ParseException)jjte004;}
679 }
680 {if (true) throw (Error)jjte004;}
681 } finally {
682 if (jjtc004) {
683 jjtree.closeNodeScope(jjtn004, 2);
684 }
685 }
686 break;
687 case 27:
688 jj_consume_token(27);
689 ASTIn jjtn005 = new ASTIn(JJTIN);
690 boolean jjtc005 = true;
691 jjtree.openNodeScope(jjtn005);
692 try {
693 shiftExpression();
694 } catch (Throwable jjte005) {
695 if (jjtc005) {
696 jjtree.clearNodeScope(jjtn005);
697 jjtc005 = false;
698 } else {
699 jjtree.popNode();
700 }
701 if (jjte005 instanceof RuntimeException) {
702 {if (true) throw (RuntimeException)jjte005;}
703 }
704 if (jjte005 instanceof ParseException) {
705 {if (true) throw (ParseException)jjte005;}
706 }
707 {if (true) throw (Error)jjte005;}
708 } finally {
709 if (jjtc005) {
710 jjtree.closeNodeScope(jjtn005, 2);
711 }
712 }
713 break;
714 case 28:
715 jj_consume_token(28);
716 jj_consume_token(27);
717 ASTNotIn jjtn006 = new ASTNotIn(JJTNOTIN);
718 boolean jjtc006 = true;
719 jjtree.openNodeScope(jjtn006);
720 try {
721 shiftExpression();
722 } catch (Throwable jjte006) {
723 if (jjtc006) {
724 jjtree.clearNodeScope(jjtn006);
725 jjtc006 = false;
726 } else {
727 jjtree.popNode();
728 }
729 if (jjte006 instanceof RuntimeException) {
730 {if (true) throw (RuntimeException)jjte006;}
731 }
732 if (jjte006 instanceof ParseException) {
733 {if (true) throw (ParseException)jjte006;}
734 }
735 {if (true) throw (Error)jjte006;}
736 } finally {
737 if (jjtc006) {
738 jjtree.closeNodeScope(jjtn006, 2);
739 }
740 }
741 break;
742 default:
743 jj_la1[22] = jj_gen;
744 jj_consume_token(-1);
745 throw new ParseException();
746 }
747 }
748 }
749
750
751 final public void shiftExpression() throws ParseException {
752 additiveExpression();
753 label_9:
754 while (true) {
755 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
756 case 29:
757 case 30:
758 case 31:
759 case 32:
760 case 33:
761 case 34:
762 ;
763 break;
764 default:
765 jj_la1[23] = jj_gen;
766 break label_9;
767 }
768 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
769 case 29:
770 case 30:
771 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
772 case 29:
773 jj_consume_token(29);
774 break;
775 case 30:
776 jj_consume_token(30);
777 break;
778 default:
779 jj_la1[24] = jj_gen;
780 jj_consume_token(-1);
781 throw new ParseException();
782 }
783 ASTShiftLeft jjtn001 = new ASTShiftLeft(JJTSHIFTLEFT);
784 boolean jjtc001 = true;
785 jjtree.openNodeScope(jjtn001);
786 try {
787 additiveExpression();
788 } catch (Throwable jjte001) {
789 if (jjtc001) {
790 jjtree.clearNodeScope(jjtn001);
791 jjtc001 = false;
792 } else {
793 jjtree.popNode();
794 }
795 if (jjte001 instanceof RuntimeException) {
796 {if (true) throw (RuntimeException)jjte001;}
797 }
798 if (jjte001 instanceof ParseException) {
799 {if (true) throw (ParseException)jjte001;}
800 }
801 {if (true) throw (Error)jjte001;}
802 } finally {
803 if (jjtc001) {
804 jjtree.closeNodeScope(jjtn001, 2);
805 }
806 }
807 break;
808 case 31:
809 case 32:
810 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
811 case 31:
812 jj_consume_token(31);
813 break;
814 case 32:
815 jj_consume_token(32);
816 break;
817 default:
818 jj_la1[25] = jj_gen;
819 jj_consume_token(-1);
820 throw new ParseException();
821 }
822 ASTShiftRight jjtn002 = new ASTShiftRight(JJTSHIFTRIGHT);
823 boolean jjtc002 = true;
824 jjtree.openNodeScope(jjtn002);
825 try {
826 additiveExpression();
827 } catch (Throwable jjte002) {
828 if (jjtc002) {
829 jjtree.clearNodeScope(jjtn002);
830 jjtc002 = false;
831 } else {
832 jjtree.popNode();
833 }
834 if (jjte002 instanceof RuntimeException) {
835 {if (true) throw (RuntimeException)jjte002;}
836 }
837 if (jjte002 instanceof ParseException) {
838 {if (true) throw (ParseException)jjte002;}
839 }
840 {if (true) throw (Error)jjte002;}
841 } finally {
842 if (jjtc002) {
843 jjtree.closeNodeScope(jjtn002, 2);
844 }
845 }
846 break;
847 case 33:
848 case 34:
849 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
850 case 33:
851 jj_consume_token(33);
852 break;
853 case 34:
854 jj_consume_token(34);
855 break;
856 default:
857 jj_la1[26] = jj_gen;
858 jj_consume_token(-1);
859 throw new ParseException();
860 }
861 ASTUnsignedShiftRight jjtn003 = new ASTUnsignedShiftRight(JJTUNSIGNEDSHIFTRIGHT);
862 boolean jjtc003 = true;
863 jjtree.openNodeScope(jjtn003);
864 try {
865 additiveExpression();
866 } catch (Throwable jjte003) {
867 if (jjtc003) {
868 jjtree.clearNodeScope(jjtn003);
869 jjtc003 = false;
870 } else {
871 jjtree.popNode();
872 }
873 if (jjte003 instanceof RuntimeException) {
874 {if (true) throw (RuntimeException)jjte003;}
875 }
876 if (jjte003 instanceof ParseException) {
877 {if (true) throw (ParseException)jjte003;}
878 }
879 {if (true) throw (Error)jjte003;}
880 } finally {
881 if (jjtc003) {
882 jjtree.closeNodeScope(jjtn003, 2);
883 }
884 }
885 break;
886 default:
887 jj_la1[27] = jj_gen;
888 jj_consume_token(-1);
889 throw new ParseException();
890 }
891 }
892 }
893
894
895 final public void additiveExpression() throws ParseException {
896 multiplicativeExpression();
897 label_10:
898 while (true) {
899 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
900 case 35:
901 case 36:
902 ;
903 break;
904 default:
905 jj_la1[28] = jj_gen;
906 break label_10;
907 }
908 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
909 case 35:
910 jj_consume_token(35);
911 ASTAdd jjtn001 = new ASTAdd(JJTADD);
912 boolean jjtc001 = true;
913 jjtree.openNodeScope(jjtn001);
914 try {
915 multiplicativeExpression();
916 } catch (Throwable jjte001) {
917 if (jjtc001) {
918 jjtree.clearNodeScope(jjtn001);
919 jjtc001 = false;
920 } else {
921 jjtree.popNode();
922 }
923 if (jjte001 instanceof RuntimeException) {
924 {if (true) throw (RuntimeException)jjte001;}
925 }
926 if (jjte001 instanceof ParseException) {
927 {if (true) throw (ParseException)jjte001;}
928 }
929 {if (true) throw (Error)jjte001;}
930 } finally {
931 if (jjtc001) {
932 jjtree.closeNodeScope(jjtn001, 2);
933 }
934 }
935 break;
936 case 36:
937 jj_consume_token(36);
938 ASTSubtract jjtn002 = new ASTSubtract(JJTSUBTRACT);
939 boolean jjtc002 = true;
940 jjtree.openNodeScope(jjtn002);
941 try {
942 multiplicativeExpression();
943 } catch (Throwable jjte002) {
944 if (jjtc002) {
945 jjtree.clearNodeScope(jjtn002);
946 jjtc002 = false;
947 } else {
948 jjtree.popNode();
949 }
950 if (jjte002 instanceof RuntimeException) {
951 {if (true) throw (RuntimeException)jjte002;}
952 }
953 if (jjte002 instanceof ParseException) {
954 {if (true) throw (ParseException)jjte002;}
955 }
956 {if (true) throw (Error)jjte002;}
957 } finally {
958 if (jjtc002) {
959 jjtree.closeNodeScope(jjtn002, 2);
960 }
961 }
962 break;
963 default:
964 jj_la1[29] = jj_gen;
965 jj_consume_token(-1);
966 throw new ParseException();
967 }
968 }
969 }
970
971
972 final public void multiplicativeExpression() throws ParseException {
973 unaryExpression();
974 label_11:
975 while (true) {
976 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
977 case 37:
978 case 38:
979 case 39:
980 ;
981 break;
982 default:
983 jj_la1[30] = jj_gen;
984 break label_11;
985 }
986 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
987 case 37:
988 jj_consume_token(37);
989 ASTMultiply jjtn001 = new ASTMultiply(JJTMULTIPLY);
990 boolean jjtc001 = true;
991 jjtree.openNodeScope(jjtn001);
992 try {
993 unaryExpression();
994 } catch (Throwable jjte001) {
995 if (jjtc001) {
996 jjtree.clearNodeScope(jjtn001);
997 jjtc001 = false;
998 } else {
999 jjtree.popNode();
1000 }
1001 if (jjte001 instanceof RuntimeException) {
1002 {if (true) throw (RuntimeException)jjte001;}
1003 }
1004 if (jjte001 instanceof ParseException) {
1005 {if (true) throw (ParseException)jjte001;}
1006 }
1007 {if (true) throw (Error)jjte001;}
1008 } finally {
1009 if (jjtc001) {
1010 jjtree.closeNodeScope(jjtn001, 2);
1011 }
1012 }
1013 break;
1014 case 38:
1015 jj_consume_token(38);
1016 ASTDivide jjtn002 = new ASTDivide(JJTDIVIDE);
1017 boolean jjtc002 = true;
1018 jjtree.openNodeScope(jjtn002);
1019 try {
1020 unaryExpression();
1021 } catch (Throwable jjte002) {
1022 if (jjtc002) {
1023 jjtree.clearNodeScope(jjtn002);
1024 jjtc002 = false;
1025 } else {
1026 jjtree.popNode();
1027 }
1028 if (jjte002 instanceof RuntimeException) {
1029 {if (true) throw (RuntimeException)jjte002;}
1030 }
1031 if (jjte002 instanceof ParseException) {
1032 {if (true) throw (ParseException)jjte002;}
1033 }
1034 {if (true) throw (Error)jjte002;}
1035 } finally {
1036 if (jjtc002) {
1037 jjtree.closeNodeScope(jjtn002, 2);
1038 }
1039 }
1040 break;
1041 case 39:
1042 jj_consume_token(39);
1043 ASTRemainder jjtn003 = new ASTRemainder(JJTREMAINDER);
1044 boolean jjtc003 = true;
1045 jjtree.openNodeScope(jjtn003);
1046 try {
1047 unaryExpression();
1048 } catch (Throwable jjte003) {
1049 if (jjtc003) {
1050 jjtree.clearNodeScope(jjtn003);
1051 jjtc003 = false;
1052 } else {
1053 jjtree.popNode();
1054 }
1055 if (jjte003 instanceof RuntimeException) {
1056 {if (true) throw (RuntimeException)jjte003;}
1057 }
1058 if (jjte003 instanceof ParseException) {
1059 {if (true) throw (ParseException)jjte003;}
1060 }
1061 {if (true) throw (Error)jjte003;}
1062 } finally {
1063 if (jjtc003) {
1064 jjtree.closeNodeScope(jjtn003, 2);
1065 }
1066 }
1067 break;
1068 default:
1069 jj_la1[31] = jj_gen;
1070 jj_consume_token(-1);
1071 throw new ParseException();
1072 }
1073 }
1074 }
1075
1076
1077 final public void unaryExpression() throws ParseException {
1078 StringBuilder stringBuilder;
1079 Token token;
1080 ASTInstanceof ionode;
1081 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1082 case 36:
1083 jj_consume_token(36);
1084 ASTNegate jjtn001 = new ASTNegate(JJTNEGATE);
1085 boolean jjtc001 = true;
1086 jjtree.openNodeScope(jjtn001);
1087 try {
1088 unaryExpression();
1089 } catch (Throwable jjte001) {
1090 if (jjtc001) {
1091 jjtree.clearNodeScope(jjtn001);
1092 jjtc001 = false;
1093 } else {
1094 jjtree.popNode();
1095 }
1096 if (jjte001 instanceof RuntimeException) {
1097 {if (true) throw (RuntimeException)jjte001;}
1098 }
1099 if (jjte001 instanceof ParseException) {
1100 {if (true) throw (ParseException)jjte001;}
1101 }
1102 {if (true) throw (Error)jjte001;}
1103 } finally {
1104 if (jjtc001) {
1105 jjtree.closeNodeScope(jjtn001, 1);
1106 }
1107 }
1108 break;
1109 case 35:
1110 jj_consume_token(35);
1111 unaryExpression();
1112 break;
1113 case 40:
1114 jj_consume_token(40);
1115 ASTBitNegate jjtn002 = new ASTBitNegate(JJTBITNEGATE);
1116 boolean jjtc002 = true;
1117 jjtree.openNodeScope(jjtn002);
1118 try {
1119 unaryExpression();
1120 } catch (Throwable jjte002) {
1121 if (jjtc002) {
1122 jjtree.clearNodeScope(jjtn002);
1123 jjtc002 = false;
1124 } else {
1125 jjtree.popNode();
1126 }
1127 if (jjte002 instanceof RuntimeException) {
1128 {if (true) throw (RuntimeException)jjte002;}
1129 }
1130 if (jjte002 instanceof ParseException) {
1131 {if (true) throw (ParseException)jjte002;}
1132 }
1133 {if (true) throw (Error)jjte002;}
1134 } finally {
1135 if (jjtc002) {
1136 jjtree.closeNodeScope(jjtn002, 1);
1137 }
1138 }
1139 break;
1140 case 28:
1141 case 41:
1142 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1143 case 41:
1144 jj_consume_token(41);
1145 break;
1146 case 28:
1147 jj_consume_token(28);
1148 break;
1149 default:
1150 jj_la1[32] = jj_gen;
1151 jj_consume_token(-1);
1152 throw new ParseException();
1153 }
1154 ASTNot jjtn003 = new ASTNot(JJTNOT);
1155 boolean jjtc003 = true;
1156 jjtree.openNodeScope(jjtn003);
1157 try {
1158 unaryExpression();
1159 } catch (Throwable jjte003) {
1160 if (jjtc003) {
1161 jjtree.clearNodeScope(jjtn003);
1162 jjtc003 = false;
1163 } else {
1164 jjtree.popNode();
1165 }
1166 if (jjte003 instanceof RuntimeException) {
1167 {if (true) throw (RuntimeException)jjte003;}
1168 }
1169 if (jjte003 instanceof ParseException) {
1170 {if (true) throw (ParseException)jjte003;}
1171 }
1172 {if (true) throw (Error)jjte003;}
1173 } finally {
1174 if (jjtc003) {
1175 jjtree.closeNodeScope(jjtn003, 1);
1176 }
1177 }
1178 break;
1179 case 4:
1180 case 44:
1181 case 46:
1182 case 47:
1183 case 48:
1184 case 49:
1185 case 50:
1186 case 51:
1187 case 52:
1188 case 54:
1189 case 56:
1190 case 57:
1191 case IDENT:
1192 case DYNAMIC_SUBSCRIPT:
1193 case CHAR_LITERAL:
1194 case BACK_CHAR_LITERAL:
1195 case STRING_LITERAL:
1196 case INT_LITERAL:
1197 case FLT_LITERAL:
1198 navigationChain();
1199 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1200 case 42:
1201 jj_consume_token(42);
1202 token = jj_consume_token(IDENT);
1203 ASTInstanceof jjtn004 = new ASTInstanceof(JJTINSTANCEOF);
1204 boolean jjtc004 = true;
1205 jjtree.openNodeScope(jjtn004);
1206 try {
1207 jjtree.closeNodeScope(jjtn004, 1);
1208 jjtc004 = false;
1209 stringBuilder = new StringBuilder(token.image); ionode = jjtn004;
1210 } finally {
1211 if (jjtc004) {
1212 jjtree.closeNodeScope(jjtn004, 1);
1213 }
1214 }
1215 label_12:
1216 while (true) {
1217 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1218 case 43:
1219 ;
1220 break;
1221 default:
1222 jj_la1[33] = jj_gen;
1223 break label_12;
1224 }
1225 jj_consume_token(43);
1226 token = jj_consume_token(IDENT);
1227 stringBuilder.append('.').append( token.image );
1228 }
1229 ionode.setTargetType( stringBuilder.toString() );
1230 break;
1231 default:
1232 jj_la1[34] = jj_gen;
1233 ;
1234 }
1235 break;
1236 default:
1237 jj_la1[35] = jj_gen;
1238 jj_consume_token(-1);
1239 throw new ParseException();
1240 }
1241 }
1242
1243
1244 final public void navigationChain() throws ParseException {
1245 primaryExpression();
1246 label_13:
1247 while (true) {
1248 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1249 case 43:
1250 case 44:
1251 case 52:
1252 case DYNAMIC_SUBSCRIPT:
1253 ;
1254 break;
1255 default:
1256 jj_la1[36] = jj_gen;
1257 break label_13;
1258 }
1259 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1260 case 43:
1261 jj_consume_token(43);
1262 ASTChain jjtn001 = new ASTChain(JJTCHAIN);
1263 boolean jjtc001 = true;
1264 jjtree.openNodeScope(jjtn001);
1265 try {
1266 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1267 case IDENT:
1268 if (jj_2_1(2)) {
1269 methodCall();
1270 } else {
1271 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1272 case IDENT:
1273 propertyName();
1274 break;
1275 default:
1276 jj_la1[37] = jj_gen;
1277 jj_consume_token(-1);
1278 throw new ParseException();
1279 }
1280 }
1281 break;
1282 case 54:
1283 if (jj_2_2(2)) {
1284 projection();
1285 } else {
1286 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1287 case 54:
1288 selection();
1289 break;
1290 default:
1291 jj_la1[38] = jj_gen;
1292 jj_consume_token(-1);
1293 throw new ParseException();
1294 }
1295 }
1296 break;
1297 case 44:
1298 jj_consume_token(44);
1299 expression();
1300 jj_consume_token(45);
1301 break;
1302 default:
1303 jj_la1[39] = jj_gen;
1304 jj_consume_token(-1);
1305 throw new ParseException();
1306 }
1307 } catch (Throwable jjte001) {
1308 if (jjtc001) {
1309 jjtree.clearNodeScope(jjtn001);
1310 jjtc001 = false;
1311 } else {
1312 jjtree.popNode();
1313 }
1314 if (jjte001 instanceof RuntimeException) {
1315 {if (true) throw (RuntimeException)jjte001;}
1316 }
1317 if (jjte001 instanceof ParseException) {
1318 {if (true) throw (ParseException)jjte001;}
1319 }
1320 {if (true) throw (Error)jjte001;}
1321 } finally {
1322 if (jjtc001) {
1323 jjtree.closeNodeScope(jjtn001, 2);
1324 }
1325 }
1326 break;
1327 case 52:
1328 case DYNAMIC_SUBSCRIPT:
1329 ASTChain jjtn002 = new ASTChain(JJTCHAIN);
1330 boolean jjtc002 = true;
1331 jjtree.openNodeScope(jjtn002);
1332 try {
1333 index();
1334 } catch (Throwable jjte002) {
1335 if (jjtc002) {
1336 jjtree.clearNodeScope(jjtn002);
1337 jjtc002 = false;
1338 } else {
1339 jjtree.popNode();
1340 }
1341 if (jjte002 instanceof RuntimeException) {
1342 {if (true) throw (RuntimeException)jjte002;}
1343 }
1344 if (jjte002 instanceof ParseException) {
1345 {if (true) throw (ParseException)jjte002;}
1346 }
1347 {if (true) throw (Error)jjte002;}
1348 } finally {
1349 if (jjtc002) {
1350 jjtree.closeNodeScope(jjtn002, 2);
1351 }
1352 }
1353 break;
1354 case 44:
1355 jj_consume_token(44);
1356 expression();
1357 ASTEval jjtn003 = new ASTEval(JJTEVAL);
1358 boolean jjtc003 = true;
1359 jjtree.openNodeScope(jjtn003);
1360 try {
1361 jj_consume_token(45);
1362 } finally {
1363 if (jjtc003) {
1364 jjtree.closeNodeScope(jjtn003, 2);
1365 }
1366 }
1367 break;
1368 default:
1369 jj_la1[40] = jj_gen;
1370 jj_consume_token(-1);
1371 throw new ParseException();
1372 }
1373 }
1374 }
1375
1376 final public void primaryExpression() throws ParseException {
1377 Token token;
1378 String className = null;
1379 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1380 case CHAR_LITERAL:
1381 case BACK_CHAR_LITERAL:
1382 case STRING_LITERAL:
1383 case INT_LITERAL:
1384 case FLT_LITERAL:
1385 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1386 case CHAR_LITERAL:
1387 jj_consume_token(CHAR_LITERAL);
1388 break;
1389 case BACK_CHAR_LITERAL:
1390 jj_consume_token(BACK_CHAR_LITERAL);
1391 break;
1392 case STRING_LITERAL:
1393 jj_consume_token(STRING_LITERAL);
1394 break;
1395 case INT_LITERAL:
1396 jj_consume_token(INT_LITERAL);
1397 break;
1398 case FLT_LITERAL:
1399 jj_consume_token(FLT_LITERAL);
1400 break;
1401 default:
1402 jj_la1[41] = jj_gen;
1403 jj_consume_token(-1);
1404 throw new ParseException();
1405 }
1406 ASTConst jjtn001 = new ASTConst(JJTCONST);
1407 boolean jjtc001 = true;
1408 jjtree.openNodeScope(jjtn001);
1409 try {
1410 jjtree.closeNodeScope(jjtn001, 0);
1411 jjtc001 = false;
1412 jjtn001.setValue( token_source.literalValue );
1413 } finally {
1414 if (jjtc001) {
1415 jjtree.closeNodeScope(jjtn001, 0);
1416 }
1417 }
1418 break;
1419 case 46:
1420 jj_consume_token(46);
1421 ASTConst jjtn002 = new ASTConst(JJTCONST);
1422 boolean jjtc002 = true;
1423 jjtree.openNodeScope(jjtn002);
1424 try {
1425 jjtree.closeNodeScope(jjtn002, 0);
1426 jjtc002 = false;
1427 jjtn002.setValue( Boolean.TRUE );
1428 } finally {
1429 if (jjtc002) {
1430 jjtree.closeNodeScope(jjtn002, 0);
1431 }
1432 }
1433 break;
1434 case 47:
1435 jj_consume_token(47);
1436 ASTConst jjtn003 = new ASTConst(JJTCONST);
1437 boolean jjtc003 = true;
1438 jjtree.openNodeScope(jjtn003);
1439 try {
1440 jjtree.closeNodeScope(jjtn003, 0);
1441 jjtc003 = false;
1442 jjtn003.setValue( Boolean.FALSE );
1443 } finally {
1444 if (jjtc003) {
1445 jjtree.closeNodeScope(jjtn003, 0);
1446 }
1447 }
1448 break;
1449 case 48:
1450 ASTConst jjtn004 = new ASTConst(JJTCONST);
1451 boolean jjtc004 = true;
1452 jjtree.openNodeScope(jjtn004);
1453 try {
1454 jj_consume_token(48);
1455 } finally {
1456 if (jjtc004) {
1457 jjtree.closeNodeScope(jjtn004, 0);
1458 }
1459 }
1460 break;
1461 default:
1462 jj_la1[48] = jj_gen;
1463 if (jj_2_4(2)) {
1464 jj_consume_token(49);
1465 ASTThisVarRef jjtn005 = new ASTThisVarRef(JJTTHISVARREF);
1466 boolean jjtc005 = true;
1467 jjtree.openNodeScope(jjtn005);
1468 try {
1469 jjtree.closeNodeScope(jjtn005, 0);
1470 jjtc005 = false;
1471 jjtn005.setName( "this" );
1472 } finally {
1473 if (jjtc005) {
1474 jjtree.closeNodeScope(jjtn005, 0);
1475 }
1476 }
1477 } else if (jj_2_5(2)) {
1478 jj_consume_token(50);
1479 ASTRootVarRef jjtn006 = new ASTRootVarRef(JJTROOTVARREF);
1480 boolean jjtc006 = true;
1481 jjtree.openNodeScope(jjtn006);
1482 try {
1483 jjtree.closeNodeScope(jjtn006, 0);
1484 jjtc006 = false;
1485 jjtn006.setName( "root" );
1486 } finally {
1487 if (jjtc006) {
1488 jjtree.closeNodeScope(jjtn006, 0);
1489 }
1490 }
1491 } else if (jj_2_6(2)) {
1492 jj_consume_token(51);
1493 token = jj_consume_token(IDENT);
1494 ASTVarRef jjtn007 = new ASTVarRef(JJTVARREF);
1495 boolean jjtc007 = true;
1496 jjtree.openNodeScope(jjtn007);
1497 try {
1498 jjtree.closeNodeScope(jjtn007, 0);
1499 jjtc007 = false;
1500 jjtn007.setName( token.image );
1501 } finally {
1502 if (jjtc007) {
1503 jjtree.closeNodeScope(jjtn007, 0);
1504 }
1505 }
1506 } else if (jj_2_7(2)) {
1507 jj_consume_token(4);
1508 jj_consume_token(52);
1509 expression();
1510 jj_consume_token(53);
1511 ASTConst jjtn008 = new ASTConst(JJTCONST);
1512 boolean jjtc008 = true;
1513 jjtree.openNodeScope(jjtn008);
1514 try {
1515 jjtree.closeNodeScope(jjtn008, 1);
1516 jjtc008 = false;
1517 jjtn008.setValue( jjtn008.jjtGetChild(0) );
1518 } finally {
1519 if (jjtc008) {
1520 jjtree.closeNodeScope(jjtn008, 1);
1521 }
1522 }
1523 } else {
1524 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1525 case 56:
1526 staticReference();
1527 break;
1528 default:
1529 jj_la1[49] = jj_gen;
1530 if (jj_2_8(2)) {
1531 constructorCall();
1532 } else {
1533 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1534 case IDENT:
1535 if (jj_2_3(2)) {
1536 methodCall();
1537 } else {
1538 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1539 case IDENT:
1540 propertyName();
1541 break;
1542 default:
1543 jj_la1[42] = jj_gen;
1544 jj_consume_token(-1);
1545 throw new ParseException();
1546 }
1547 }
1548 break;
1549 case 52:
1550 case DYNAMIC_SUBSCRIPT:
1551 index();
1552 break;
1553 case 44:
1554 jj_consume_token(44);
1555 expression();
1556 jj_consume_token(45);
1557 break;
1558 case 54:
1559 jj_consume_token(54);
1560 ASTList jjtn009 = new ASTList(JJTLIST);
1561 boolean jjtc009 = true;
1562 jjtree.openNodeScope(jjtn009);
1563 try {
1564 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1565 case 4:
1566 case 28:
1567 case 35:
1568 case 36:
1569 case 40:
1570 case 41:
1571 case 44:
1572 case 46:
1573 case 47:
1574 case 48:
1575 case 49:
1576 case 50:
1577 case 51:
1578 case 52:
1579 case 54:
1580 case 56:
1581 case 57:
1582 case IDENT:
1583 case DYNAMIC_SUBSCRIPT:
1584 case CHAR_LITERAL:
1585 case BACK_CHAR_LITERAL:
1586 case STRING_LITERAL:
1587 case INT_LITERAL:
1588 case FLT_LITERAL:
1589 assignmentExpression();
1590 label_14:
1591 while (true) {
1592 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1593 case 1:
1594 ;
1595 break;
1596 default:
1597 jj_la1[43] = jj_gen;
1598 break label_14;
1599 }
1600 jj_consume_token(1);
1601 assignmentExpression();
1602 }
1603 break;
1604 default:
1605 jj_la1[44] = jj_gen;
1606 ;
1607 }
1608 } catch (Throwable jjte009) {
1609 if (jjtc009) {
1610 jjtree.clearNodeScope(jjtn009);
1611 jjtc009 = false;
1612 } else {
1613 jjtree.popNode();
1614 }
1615 if (jjte009 instanceof RuntimeException) {
1616 {if (true) throw (RuntimeException)jjte009;}
1617 }
1618 if (jjte009 instanceof ParseException) {
1619 {if (true) throw (ParseException)jjte009;}
1620 }
1621 {if (true) throw (Error)jjte009;}
1622 } finally {
1623 if (jjtc009) {
1624 jjtree.closeNodeScope(jjtn009, true);
1625 }
1626 }
1627 jj_consume_token(55);
1628 break;
1629 default:
1630 jj_la1[50] = jj_gen;
1631 if (jj_2_9(2)) {
1632 ASTMap jjtn010 = new ASTMap(JJTMAP);
1633 boolean jjtc010 = true;
1634 jjtree.openNodeScope(jjtn010);
1635 try {
1636 jj_consume_token(51);
1637 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1638 case 56:
1639 className = classReference();
1640 break;
1641 default:
1642 jj_la1[45] = jj_gen;
1643 ;
1644 }
1645 jj_consume_token(54);
1646 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1647 case 4:
1648 case 28:
1649 case 35:
1650 case 36:
1651 case 40:
1652 case 41:
1653 case 44:
1654 case 46:
1655 case 47:
1656 case 48:
1657 case 49:
1658 case 50:
1659 case 51:
1660 case 52:
1661 case 54:
1662 case 56:
1663 case 57:
1664 case IDENT:
1665 case DYNAMIC_SUBSCRIPT:
1666 case CHAR_LITERAL:
1667 case BACK_CHAR_LITERAL:
1668 case STRING_LITERAL:
1669 case INT_LITERAL:
1670 case FLT_LITERAL:
1671 keyValueExpression();
1672 label_15:
1673 while (true) {
1674 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1675 case 1:
1676 ;
1677 break;
1678 default:
1679 jj_la1[46] = jj_gen;
1680 break label_15;
1681 }
1682 jj_consume_token(1);
1683 keyValueExpression();
1684 }
1685 break;
1686 default:
1687 jj_la1[47] = jj_gen;
1688 ;
1689 }
1690 jjtn010.setClassName(className);
1691 jj_consume_token(55);
1692 } catch (Throwable jjte010) {
1693 if (jjtc010) {
1694 jjtree.clearNodeScope(jjtn010);
1695 jjtc010 = false;
1696 } else {
1697 jjtree.popNode();
1698 }
1699 if (jjte010 instanceof RuntimeException) {
1700 {if (true) throw (RuntimeException)jjte010;}
1701 }
1702 if (jjte010 instanceof ParseException) {
1703 {if (true) throw (ParseException)jjte010;}
1704 }
1705 {if (true) throw (Error)jjte010;}
1706 } finally {
1707 if (jjtc010) {
1708 jjtree.closeNodeScope(jjtn010, true);
1709 }
1710 }
1711 } else {
1712 jj_consume_token(-1);
1713 throw new ParseException();
1714 }
1715 }
1716 }
1717 }
1718 }
1719 }
1720 }
1721
1722 final public void keyValueExpression() throws ParseException {
1723 ASTKeyValue jjtn001 = new ASTKeyValue(JJTKEYVALUE);
1724 boolean jjtc001 = true;
1725 jjtree.openNodeScope(jjtn001);
1726 try {
1727 assignmentExpression();
1728 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1729 case 4:
1730 jj_consume_token(4);
1731 assignmentExpression();
1732 break;
1733 default:
1734 jj_la1[51] = jj_gen;
1735 ;
1736 }
1737 } catch (Throwable jjte001) {
1738 if (jjtc001) {
1739 jjtree.clearNodeScope(jjtn001);
1740 jjtc001 = false;
1741 } else {
1742 jjtree.popNode();
1743 }
1744 if (jjte001 instanceof RuntimeException) {
1745 {if (true) throw (RuntimeException)jjte001;}
1746 }
1747 if (jjte001 instanceof ParseException) {
1748 {if (true) throw (ParseException)jjte001;}
1749 }
1750 {if (true) throw (Error)jjte001;}
1751 } finally {
1752 if (jjtc001) {
1753 jjtree.closeNodeScope(jjtn001, true);
1754 }
1755 }
1756 }
1757
1758 final public void staticReference() throws ParseException {
1759 String className = "java.lang.Math";
1760 Token token;
1761 className = classReference();
1762 if (jj_2_10(2)) {
1763 staticMethodCall(className);
1764 } else {
1765 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1766 case IDENT:
1767 token = jj_consume_token(IDENT);
1768 ASTStaticField jjtn001 = new ASTStaticField(JJTSTATICFIELD);
1769 boolean jjtc001 = true;
1770 jjtree.openNodeScope(jjtn001);
1771 try {
1772 jjtree.closeNodeScope(jjtn001, 0);
1773 jjtc001 = false;
1774 jjtn001.init( className, token.image );
1775 } finally {
1776 if (jjtc001) {
1777 jjtree.closeNodeScope(jjtn001, 0);
1778 }
1779 }
1780 break;
1781 default:
1782 jj_la1[52] = jj_gen;
1783 jj_consume_token(-1);
1784 throw new ParseException();
1785 }
1786 }
1787 }
1788
1789 final public String classReference() throws ParseException {
1790 String result = "java.lang.Math";
1791 jj_consume_token(56);
1792 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1793 case IDENT:
1794 result = className();
1795 break;
1796 default:
1797 jj_la1[53] = jj_gen;
1798 ;
1799 }
1800 jj_consume_token(56);
1801 {if (true) return result;}
1802 throw new Error("Missing return statement in function");
1803 }
1804
1805 final public String className() throws ParseException {
1806 Token token;
1807 StringBuilder result;
1808 token = jj_consume_token(IDENT);
1809 result = new StringBuilder( token.image );
1810 label_16:
1811 while (true) {
1812 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1813 case 43:
1814 ;
1815 break;
1816 default:
1817 jj_la1[54] = jj_gen;
1818 break label_16;
1819 }
1820 jj_consume_token(43);
1821 token = jj_consume_token(IDENT);
1822 result.append('.').append( token.image );
1823 }
1824 {if (true) return result.toString();}
1825 throw new Error("Missing return statement in function");
1826 }
1827
1828 final public void constructorCall() throws ParseException {
1829
1830 ASTCtor jjtn000 = new ASTCtor(JJTCTOR);
1831 boolean jjtc000 = true;
1832 jjtree.openNodeScope(jjtn000);String className;
1833 Token token;
1834 StringBuilder stringBuilder;
1835 try {
1836 jj_consume_token(57);
1837 className = className();
1838 if (jj_2_11(2)) {
1839 jj_consume_token(44);
1840 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1841 case 4:
1842 case 28:
1843 case 35:
1844 case 36:
1845 case 40:
1846 case 41:
1847 case 44:
1848 case 46:
1849 case 47:
1850 case 48:
1851 case 49:
1852 case 50:
1853 case 51:
1854 case 52:
1855 case 54:
1856 case 56:
1857 case 57:
1858 case IDENT:
1859 case DYNAMIC_SUBSCRIPT:
1860 case CHAR_LITERAL:
1861 case BACK_CHAR_LITERAL:
1862 case STRING_LITERAL:
1863 case INT_LITERAL:
1864 case FLT_LITERAL:
1865 assignmentExpression();
1866 label_17:
1867 while (true) {
1868 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1869 case 1:
1870 ;
1871 break;
1872 default:
1873 jj_la1[55] = jj_gen;
1874 break label_17;
1875 }
1876 jj_consume_token(1);
1877 assignmentExpression();
1878 }
1879 break;
1880 default:
1881 jj_la1[56] = jj_gen;
1882 ;
1883 }
1884 jj_consume_token(45);
1885 jjtree.closeNodeScope(jjtn000, true);
1886 jjtc000 = false;
1887 jjtn000.setClassName(className);
1888 } else if (jj_2_12(2)) {
1889 jj_consume_token(52);
1890 jj_consume_token(53);
1891 jj_consume_token(54);
1892 ASTList jjtn001 = new ASTList(JJTLIST);
1893 boolean jjtc001 = true;
1894 jjtree.openNodeScope(jjtn001);
1895 try {
1896 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1897 case 4:
1898 case 28:
1899 case 35:
1900 case 36:
1901 case 40:
1902 case 41:
1903 case 44:
1904 case 46:
1905 case 47:
1906 case 48:
1907 case 49:
1908 case 50:
1909 case 51:
1910 case 52:
1911 case 54:
1912 case 56:
1913 case 57:
1914 case IDENT:
1915 case DYNAMIC_SUBSCRIPT:
1916 case CHAR_LITERAL:
1917 case BACK_CHAR_LITERAL:
1918 case STRING_LITERAL:
1919 case INT_LITERAL:
1920 case FLT_LITERAL:
1921 assignmentExpression();
1922 label_18:
1923 while (true) {
1924 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1925 case 1:
1926 ;
1927 break;
1928 default:
1929 jj_la1[57] = jj_gen;
1930 break label_18;
1931 }
1932 jj_consume_token(1);
1933 assignmentExpression();
1934 }
1935 break;
1936 default:
1937 jj_la1[58] = jj_gen;
1938 ;
1939 }
1940 } catch (Throwable jjte001) {
1941 if (jjtc001) {
1942 jjtree.clearNodeScope(jjtn001);
1943 jjtc001 = false;
1944 } else {
1945 jjtree.popNode();
1946 }
1947 if (jjte001 instanceof RuntimeException) {
1948 {if (true) throw (RuntimeException)jjte001;}
1949 }
1950 if (jjte001 instanceof ParseException) {
1951 {if (true) throw (ParseException)jjte001;}
1952 }
1953 {if (true) throw (Error)jjte001;}
1954 } finally {
1955 if (jjtc001) {
1956 jjtree.closeNodeScope(jjtn001, true);
1957 }
1958 }
1959 jj_consume_token(55);
1960 jjtree.closeNodeScope(jjtn000, true);
1961 jjtc000 = false;
1962 jjtn000.setClassName(className);
1963 jjtn000.setArray(true);
1964 } else if (jj_2_13(2)) {
1965 jj_consume_token(52);
1966 assignmentExpression();
1967 jj_consume_token(53);
1968 jjtree.closeNodeScope(jjtn000, true);
1969 jjtc000 = false;
1970 jjtn000.setClassName(className);
1971 jjtn000.setArray(true);
1972 } else {
1973 jj_consume_token(-1);
1974 throw new ParseException();
1975 }
1976 } catch (Throwable jjte000) {
1977 if (jjtc000) {
1978 jjtree.clearNodeScope(jjtn000);
1979 jjtc000 = false;
1980 } else {
1981 jjtree.popNode();
1982 }
1983 if (jjte000 instanceof RuntimeException) {
1984 {if (true) throw (RuntimeException)jjte000;}
1985 }
1986 if (jjte000 instanceof ParseException) {
1987 {if (true) throw (ParseException)jjte000;}
1988 }
1989 {if (true) throw (Error)jjte000;}
1990 } finally {
1991 if (jjtc000) {
1992 jjtree.closeNodeScope(jjtn000, true);
1993 }
1994 }
1995 }
1996
1997 final public void propertyName() throws ParseException {
1998
1999 ASTProperty jjtn000 = new ASTProperty(JJTPROPERTY);
2000 boolean jjtc000 = true;
2001 jjtree.openNodeScope(jjtn000);Token token;
2002 try {
2003 token = jj_consume_token(IDENT);
2004 ASTConst jjtn001 = new ASTConst(JJTCONST);
2005 boolean jjtc001 = true;
2006 jjtree.openNodeScope(jjtn001);
2007 try {
2008 jjtree.closeNodeScope(jjtn001, true);
2009 jjtc001 = false;
2010 jjtn001.setValue( token.image );
2011 } finally {
2012 if (jjtc001) {
2013 jjtree.closeNodeScope(jjtn001, true);
2014 }
2015 }
2016 } finally {
2017 if (jjtc000) {
2018 jjtree.closeNodeScope(jjtn000, true);
2019 }
2020 }
2021 }
2022
2023 final public void staticMethodCall(String className) throws ParseException {
2024
2025 ASTStaticMethod jjtn000 = new ASTStaticMethod(JJTSTATICMETHOD);
2026 boolean jjtc000 = true;
2027 jjtree.openNodeScope(jjtn000);Token token;
2028 try {
2029 token = jj_consume_token(IDENT);
2030 jj_consume_token(44);
2031 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2032 case 4:
2033 case 28:
2034 case 35:
2035 case 36:
2036 case 40:
2037 case 41:
2038 case 44:
2039 case 46:
2040 case 47:
2041 case 48:
2042 case 49:
2043 case 50:
2044 case 51:
2045 case 52:
2046 case 54:
2047 case 56:
2048 case 57:
2049 case IDENT:
2050 case DYNAMIC_SUBSCRIPT:
2051 case CHAR_LITERAL:
2052 case BACK_CHAR_LITERAL:
2053 case STRING_LITERAL:
2054 case INT_LITERAL:
2055 case FLT_LITERAL:
2056 assignmentExpression();
2057 label_19:
2058 while (true) {
2059 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2060 case 1:
2061 ;
2062 break;
2063 default:
2064 jj_la1[59] = jj_gen;
2065 break label_19;
2066 }
2067 jj_consume_token(1);
2068 assignmentExpression();
2069 }
2070 break;
2071 default:
2072 jj_la1[60] = jj_gen;
2073 ;
2074 }
2075 jj_consume_token(45);
2076 jjtree.closeNodeScope(jjtn000, true);
2077 jjtc000 = false;
2078 jjtn000.init( className, token.image );
2079 } catch (Throwable jjte000) {
2080 if (jjtc000) {
2081 jjtree.clearNodeScope(jjtn000);
2082 jjtc000 = false;
2083 } else {
2084 jjtree.popNode();
2085 }
2086 if (jjte000 instanceof RuntimeException) {
2087 {if (true) throw (RuntimeException)jjte000;}
2088 }
2089 if (jjte000 instanceof ParseException) {
2090 {if (true) throw (ParseException)jjte000;}
2091 }
2092 {if (true) throw (Error)jjte000;}
2093 } finally {
2094 if (jjtc000) {
2095 jjtree.closeNodeScope(jjtn000, true);
2096 }
2097 }
2098 }
2099
2100 final public void methodCall() throws ParseException {
2101
2102 ASTMethod jjtn000 = new ASTMethod(JJTMETHOD);
2103 boolean jjtc000 = true;
2104 jjtree.openNodeScope(jjtn000);Token token;
2105 try {
2106 token = jj_consume_token(IDENT);
2107 jj_consume_token(44);
2108 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2109 case 4:
2110 case 28:
2111 case 35:
2112 case 36:
2113 case 40:
2114 case 41:
2115 case 44:
2116 case 46:
2117 case 47:
2118 case 48:
2119 case 49:
2120 case 50:
2121 case 51:
2122 case 52:
2123 case 54:
2124 case 56:
2125 case 57:
2126 case IDENT:
2127 case DYNAMIC_SUBSCRIPT:
2128 case CHAR_LITERAL:
2129 case BACK_CHAR_LITERAL:
2130 case STRING_LITERAL:
2131 case INT_LITERAL:
2132 case FLT_LITERAL:
2133 assignmentExpression();
2134 label_20:
2135 while (true) {
2136 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2137 case 1:
2138 ;
2139 break;
2140 default:
2141 jj_la1[61] = jj_gen;
2142 break label_20;
2143 }
2144 jj_consume_token(1);
2145 assignmentExpression();
2146 }
2147 break;
2148 default:
2149 jj_la1[62] = jj_gen;
2150 ;
2151 }
2152 jj_consume_token(45);
2153 jjtree.closeNodeScope(jjtn000, true);
2154 jjtc000 = false;
2155 jjtn000.setMethodName( token.image );
2156 } catch (Throwable jjte000) {
2157 if (jjtc000) {
2158 jjtree.clearNodeScope(jjtn000);
2159 jjtc000 = false;
2160 } else {
2161 jjtree.popNode();
2162 }
2163 if (jjte000 instanceof RuntimeException) {
2164 {if (true) throw (RuntimeException)jjte000;}
2165 }
2166 if (jjte000 instanceof ParseException) {
2167 {if (true) throw (ParseException)jjte000;}
2168 }
2169 {if (true) throw (Error)jjte000;}
2170 } finally {
2171 if (jjtc000) {
2172 jjtree.closeNodeScope(jjtn000, true);
2173 }
2174 }
2175 }
2176
2177
2178
2179
2180
2181 final public void projection() throws ParseException {
2182
2183 ASTProject jjtn000 = new ASTProject(JJTPROJECT);
2184 boolean jjtc000 = true;
2185 jjtree.openNodeScope(jjtn000);
2186 try {
2187 jj_consume_token(54);
2188 expression();
2189 jj_consume_token(55);
2190 } catch (Throwable jjte000) {
2191 if (jjtc000) {
2192 jjtree.clearNodeScope(jjtn000);
2193 jjtc000 = false;
2194 } else {
2195 jjtree.popNode();
2196 }
2197 if (jjte000 instanceof RuntimeException) {
2198 {if (true) throw (RuntimeException)jjte000;}
2199 }
2200 if (jjte000 instanceof ParseException) {
2201 {if (true) throw (ParseException)jjte000;}
2202 }
2203 {if (true) throw (Error)jjte000;}
2204 } finally {
2205 if (jjtc000) {
2206 jjtree.closeNodeScope(jjtn000, true);
2207 }
2208 }
2209 }
2210
2211 final public void selection() throws ParseException {
2212 if (jj_2_14(2)) {
2213 selectAll();
2214 } else if (jj_2_15(2)) {
2215 selectFirst();
2216 } else if (jj_2_16(2)) {
2217 selectLast();
2218 } else {
2219 jj_consume_token(-1);
2220 throw new ParseException();
2221 }
2222 }
2223
2224
2225
2226
2227
2228 final public void selectAll() throws ParseException {
2229
2230 ASTSelect jjtn000 = new ASTSelect(JJTSELECT);
2231 boolean jjtc000 = true;
2232 jjtree.openNodeScope(jjtn000);
2233 try {
2234 jj_consume_token(54);
2235 jj_consume_token(3);
2236 expression();
2237 jj_consume_token(55);
2238 } catch (Throwable jjte000) {
2239 if (jjtc000) {
2240 jjtree.clearNodeScope(jjtn000);
2241 jjtc000 = false;
2242 } else {
2243 jjtree.popNode();
2244 }
2245 if (jjte000 instanceof RuntimeException) {
2246 {if (true) throw (RuntimeException)jjte000;}
2247 }
2248 if (jjte000 instanceof ParseException) {
2249 {if (true) throw (ParseException)jjte000;}
2250 }
2251 {if (true) throw (Error)jjte000;}
2252 } finally {
2253 if (jjtc000) {
2254 jjtree.closeNodeScope(jjtn000, true);
2255 }
2256 }
2257 }
2258
2259
2260
2261
2262
2263 final public void selectFirst() throws ParseException {
2264
2265 ASTSelectFirst jjtn000 = new ASTSelectFirst(JJTSELECTFIRST);
2266 boolean jjtc000 = true;
2267 jjtree.openNodeScope(jjtn000);
2268 try {
2269 jj_consume_token(54);
2270 jj_consume_token(11);
2271 expression();
2272 jj_consume_token(55);
2273 } catch (Throwable jjte000) {
2274 if (jjtc000) {
2275 jjtree.clearNodeScope(jjtn000);
2276 jjtc000 = false;
2277 } else {
2278 jjtree.popNode();
2279 }
2280 if (jjte000 instanceof RuntimeException) {
2281 {if (true) throw (RuntimeException)jjte000;}
2282 }
2283 if (jjte000 instanceof ParseException) {
2284 {if (true) throw (ParseException)jjte000;}
2285 }
2286 {if (true) throw (Error)jjte000;}
2287 } finally {
2288 if (jjtc000) {
2289 jjtree.closeNodeScope(jjtn000, true);
2290 }
2291 }
2292 }
2293
2294
2295
2296
2297
2298 final public void selectLast() throws ParseException {
2299
2300 ASTSelectLast jjtn000 = new ASTSelectLast(JJTSELECTLAST);
2301 boolean jjtc000 = true;
2302 jjtree.openNodeScope(jjtn000);
2303 try {
2304 jj_consume_token(54);
2305 jj_consume_token(58);
2306 expression();
2307 jj_consume_token(55);
2308 } catch (Throwable jjte000) {
2309 if (jjtc000) {
2310 jjtree.clearNodeScope(jjtn000);
2311 jjtc000 = false;
2312 } else {
2313 jjtree.popNode();
2314 }
2315 if (jjte000 instanceof RuntimeException) {
2316 {if (true) throw (RuntimeException)jjte000;}
2317 }
2318 if (jjte000 instanceof ParseException) {
2319 {if (true) throw (ParseException)jjte000;}
2320 }
2321 {if (true) throw (Error)jjte000;}
2322 } finally {
2323 if (jjtc000) {
2324 jjtree.closeNodeScope(jjtn000, true);
2325 }
2326 }
2327 }
2328
2329 final public void index() throws ParseException {
2330
2331 ASTProperty jjtn000 = new ASTProperty(JJTPROPERTY);
2332 boolean jjtc000 = true;
2333 jjtree.openNodeScope(jjtn000);
2334 try {
2335 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2336 case 52:
2337 jj_consume_token(52);
2338 expression();
2339 jj_consume_token(53);
2340 jjtree.closeNodeScope(jjtn000, true);
2341 jjtc000 = false;
2342 jjtn000.setIndexedAccess(true);
2343 break;
2344 case DYNAMIC_SUBSCRIPT:
2345 jj_consume_token(DYNAMIC_SUBSCRIPT);
2346 ASTConst jjtn001 = new ASTConst(JJTCONST);
2347 boolean jjtc001 = true;
2348 jjtree.openNodeScope(jjtn001);
2349 try {
2350 jjtree.closeNodeScope(jjtn001, true);
2351 jjtc001 = false;
2352 jjtn001.setValue( token_source.literalValue );
2353 } finally {
2354 if (jjtc001) {
2355 jjtree.closeNodeScope(jjtn001, true);
2356 }
2357 }
2358 jjtree.closeNodeScope(jjtn000, true);
2359 jjtc000 = false;
2360 jjtn000.setIndexedAccess(true);
2361 break;
2362 default:
2363 jj_la1[63] = jj_gen;
2364 jj_consume_token(-1);
2365 throw new ParseException();
2366 }
2367 } catch (Throwable jjte000) {
2368 if (jjtc000) {
2369 jjtree.clearNodeScope(jjtn000);
2370 jjtc000 = false;
2371 } else {
2372 jjtree.popNode();
2373 }
2374 if (jjte000 instanceof RuntimeException) {
2375 {if (true) throw (RuntimeException)jjte000;}
2376 }
2377 if (jjte000 instanceof ParseException) {
2378 {if (true) throw (ParseException)jjte000;}
2379 }
2380 {if (true) throw (Error)jjte000;}
2381 } finally {
2382 if (jjtc000) {
2383 jjtree.closeNodeScope(jjtn000, true);
2384 }
2385 }
2386 }
2387
2388 private boolean jj_2_1(int xla) {
2389 jj_la = xla; jj_lastpos = jj_scanpos = token;
2390 try { return !jj_3_1(); }
2391 catch(LookaheadSuccess ls) { return true; }
2392 finally { jj_save(0, xla); }
2393 }
2394
2395 private boolean jj_2_2(int xla) {
2396 jj_la = xla; jj_lastpos = jj_scanpos = token;
2397 try { return !jj_3_2(); }
2398 catch(LookaheadSuccess ls) { return true; }
2399 finally { jj_save(1, xla); }
2400 }
2401
2402 private boolean jj_2_3(int xla) {
2403 jj_la = xla; jj_lastpos = jj_scanpos = token;
2404 try { return !jj_3_3(); }
2405 catch(LookaheadSuccess ls) { return true; }
2406 finally { jj_save(2, xla); }
2407 }
2408
2409 private boolean jj_2_4(int xla) {
2410 jj_la = xla; jj_lastpos = jj_scanpos = token;
2411 try { return !jj_3_4(); }
2412 catch(LookaheadSuccess ls) { return true; }
2413 finally { jj_save(3, xla); }
2414 }
2415
2416 private boolean jj_2_5(int xla) {
2417 jj_la = xla; jj_lastpos = jj_scanpos = token;
2418 try { return !jj_3_5(); }
2419 catch(LookaheadSuccess ls) { return true; }
2420 finally { jj_save(4, xla); }
2421 }
2422
2423 private boolean jj_2_6(int xla) {
2424 jj_la = xla; jj_lastpos = jj_scanpos = token;
2425 try { return !jj_3_6(); }
2426 catch(LookaheadSuccess ls) { return true; }
2427 finally { jj_save(5, xla); }
2428 }
2429
2430 private boolean jj_2_7(int xla) {
2431 jj_la = xla; jj_lastpos = jj_scanpos = token;
2432 try { return !jj_3_7(); }
2433 catch(LookaheadSuccess ls) { return true; }
2434 finally { jj_save(6, xla); }
2435 }
2436
2437 private boolean jj_2_8(int xla) {
2438 jj_la = xla; jj_lastpos = jj_scanpos = token;
2439 try { return !jj_3_8(); }
2440 catch(LookaheadSuccess ls) { return true; }
2441 finally { jj_save(7, xla); }
2442 }
2443
2444 private boolean jj_2_9(int xla) {
2445 jj_la = xla; jj_lastpos = jj_scanpos = token;
2446 try { return !jj_3_9(); }
2447 catch(LookaheadSuccess ls) { return true; }
2448 finally { jj_save(8, xla); }
2449 }
2450
2451 private boolean jj_2_10(int xla) {
2452 jj_la = xla; jj_lastpos = jj_scanpos = token;
2453 try { return !jj_3_10(); }
2454 catch(LookaheadSuccess ls) { return true; }
2455 finally { jj_save(9, xla); }
2456 }
2457
2458 private boolean jj_2_11(int xla) {
2459 jj_la = xla; jj_lastpos = jj_scanpos = token;
2460 try { return !jj_3_11(); }
2461 catch(LookaheadSuccess ls) { return true; }
2462 finally { jj_save(10, xla); }
2463 }
2464
2465 private boolean jj_2_12(int xla) {
2466 jj_la = xla; jj_lastpos = jj_scanpos = token;
2467 try { return !jj_3_12(); }
2468 catch(LookaheadSuccess ls) { return true; }
2469 finally { jj_save(11, xla); }
2470 }
2471
2472 private boolean jj_2_13(int xla) {
2473 jj_la = xla; jj_lastpos = jj_scanpos = token;
2474 try { return !jj_3_13(); }
2475 catch(LookaheadSuccess ls) { return true; }
2476 finally { jj_save(12, xla); }
2477 }
2478
2479 private boolean jj_2_14(int xla) {
2480 jj_la = xla; jj_lastpos = jj_scanpos = token;
2481 try { return !jj_3_14(); }
2482 catch(LookaheadSuccess ls) { return true; }
2483 finally { jj_save(13, xla); }
2484 }
2485
2486 private boolean jj_2_15(int xla) {
2487 jj_la = xla; jj_lastpos = jj_scanpos = token;
2488 try { return !jj_3_15(); }
2489 catch(LookaheadSuccess ls) { return true; }
2490 finally { jj_save(14, xla); }
2491 }
2492
2493 private boolean jj_2_16(int xla) {
2494 jj_la = xla; jj_lastpos = jj_scanpos = token;
2495 try { return !jj_3_16(); }
2496 catch(LookaheadSuccess ls) { return true; }
2497 finally { jj_save(15, xla); }
2498 }
2499
2500 private boolean jj_3R_57() {
2501 if (jj_3R_62()) return true;
2502 return false;
2503 }
2504
2505 private boolean jj_3R_25() {
2506 if (jj_scan_token(IDENT)) return true;
2507 if (jj_scan_token(44)) return true;
2508 return false;
2509 }
2510
2511 private boolean jj_3R_34() {
2512 if (jj_3R_35()) return true;
2513 return false;
2514 }
2515
2516 private boolean jj_3_7() {
2517 if (jj_scan_token(4)) return true;
2518 if (jj_scan_token(52)) return true;
2519 return false;
2520 }
2521
2522 private boolean jj_3_6() {
2523 if (jj_scan_token(51)) return true;
2524 if (jj_scan_token(IDENT)) return true;
2525 return false;
2526 }
2527
2528 private boolean jj_3_5() {
2529 if (jj_scan_token(50)) return true;
2530 return false;
2531 }
2532
2533 private boolean jj_3R_27() {
2534 if (jj_3R_34()) return true;
2535 return false;
2536 }
2537
2538 private boolean jj_3_4() {
2539 if (jj_scan_token(49)) return true;
2540 return false;
2541 }
2542
2543 private boolean jj_3R_65() {
2544 if (jj_scan_token(IDENT)) return true;
2545 return false;
2546 }
2547
2548 private boolean jj_3R_43() {
2549 if (jj_3R_44()) return true;
2550 return false;
2551 }
2552
2553 private boolean jj_3R_56() {
2554 if (jj_scan_token(48)) return true;
2555 return false;
2556 }
2557
2558 private boolean jj_3R_55() {
2559 if (jj_scan_token(47)) return true;
2560 return false;
2561 }
2562
2563 private boolean jj_3R_54() {
2564 if (jj_scan_token(46)) return true;
2565 return false;
2566 }
2567
2568 private boolean jj_3R_31() {
2569 if (jj_3R_27()) return true;
2570 return false;
2571 }
2572
2573 private boolean jj_3_13() {
2574 if (jj_scan_token(52)) return true;
2575 if (jj_3R_27()) return true;
2576 return false;
2577 }
2578
2579 private boolean jj_3R_53() {
2580 Token xsp;
2581 xsp = jj_scanpos;
2582 if (jj_scan_token(73)) {
2583 jj_scanpos = xsp;
2584 if (jj_scan_token(76)) {
2585 jj_scanpos = xsp;
2586 if (jj_scan_token(79)) {
2587 jj_scanpos = xsp;
2588 if (jj_scan_token(80)) {
2589 jj_scanpos = xsp;
2590 if (jj_scan_token(81)) return true;
2591 }
2592 }
2593 }
2594 }
2595 return false;
2596 }
2597
2598 private boolean jj_3R_26() {
2599 if (jj_3R_27()) return true;
2600 return false;
2601 }
2602
2603 private boolean jj_3R_52() {
2604 Token xsp;
2605 xsp = jj_scanpos;
2606 if (jj_3R_53()) {
2607 jj_scanpos = xsp;
2608 if (jj_3R_54()) {
2609 jj_scanpos = xsp;
2610 if (jj_3R_55()) {
2611 jj_scanpos = xsp;
2612 if (jj_3R_56()) {
2613 jj_scanpos = xsp;
2614 if (jj_3_4()) {
2615 jj_scanpos = xsp;
2616 if (jj_3_5()) {
2617 jj_scanpos = xsp;
2618 if (jj_3_6()) {
2619 jj_scanpos = xsp;
2620 if (jj_3_7()) {
2621 jj_scanpos = xsp;
2622 if (jj_3R_57()) {
2623 jj_scanpos = xsp;
2624 if (jj_3_8()) {
2625 jj_scanpos = xsp;
2626 if (jj_3R_58()) {
2627 jj_scanpos = xsp;
2628 if (jj_3R_59()) {
2629 jj_scanpos = xsp;
2630 if (jj_3R_60()) {
2631 jj_scanpos = xsp;
2632 if (jj_3R_61()) {
2633 jj_scanpos = xsp;
2634 if (jj_3_9()) return true;
2635 }
2636 }
2637 }
2638 }
2639 }
2640 }
2641 }
2642 }
2643 }
2644 }
2645 }
2646 }
2647 }
2648 }
2649 return false;
2650 }
2651
2652 private boolean jj_3R_42() {
2653 if (jj_3R_43()) return true;
2654 return false;
2655 }
2656
2657 private boolean jj_3_12() {
2658 if (jj_scan_token(52)) return true;
2659 if (jj_scan_token(53)) return true;
2660 return false;
2661 }
2662
2663 private boolean jj_3_11() {
2664 if (jj_scan_token(44)) return true;
2665 Token xsp;
2666 xsp = jj_scanpos;
2667 if (jj_3R_26()) jj_scanpos = xsp;
2668 if (jj_scan_token(45)) return true;
2669 return false;
2670 }
2671
2672 private boolean jj_3R_67() {
2673 if (jj_scan_token(DYNAMIC_SUBSCRIPT)) return true;
2674 return false;
2675 }
2676
2677 private boolean jj_3_2() {
2678 if (jj_3R_22()) return true;
2679 return false;
2680 }
2681
2682 private boolean jj_3R_66() {
2683 if (jj_scan_token(52)) return true;
2684 return false;
2685 }
2686
2687 private boolean jj_3R_64() {
2688 Token xsp;
2689 xsp = jj_scanpos;
2690 if (jj_3R_66()) {
2691 jj_scanpos = xsp;
2692 if (jj_3R_67()) return true;
2693 }
2694 return false;
2695 }
2696
2697 private boolean jj_3_1() {
2698 if (jj_3R_21()) return true;
2699 return false;
2700 }
2701
2702 private boolean jj_3R_23() {
2703 if (jj_scan_token(57)) return true;
2704 if (jj_3R_32()) return true;
2705 return false;
2706 }
2707
2708 private boolean jj_3R_41() {
2709 if (jj_3R_42()) return true;
2710 return false;
2711 }
2712
2713 private boolean jj_3R_30() {
2714 if (jj_scan_token(54)) return true;
2715 if (jj_scan_token(58)) return true;
2716 return false;
2717 }
2718
2719 private boolean jj_3R_32() {
2720 if (jj_scan_token(IDENT)) return true;
2721 return false;
2722 }
2723
2724 private boolean jj_3R_51() {
2725 if (jj_3R_52()) return true;
2726 return false;
2727 }
2728
2729 private boolean jj_3R_29() {
2730 if (jj_scan_token(54)) return true;
2731 if (jj_scan_token(11)) return true;
2732 return false;
2733 }
2734
2735 private boolean jj_3R_40() {
2736 if (jj_3R_41()) return true;
2737 return false;
2738 }
2739
2740 private boolean jj_3R_33() {
2741 if (jj_scan_token(56)) return true;
2742 return false;
2743 }
2744
2745 private boolean jj_3R_63() {
2746 if (jj_3R_65()) return true;
2747 return false;
2748 }
2749
2750 private boolean jj_3R_28() {
2751 if (jj_scan_token(54)) return true;
2752 if (jj_scan_token(3)) return true;
2753 return false;
2754 }
2755
2756 private boolean jj_3R_50() {
2757 if (jj_3R_51()) return true;
2758 return false;
2759 }
2760
2761 private boolean jj_3R_39() {
2762 if (jj_3R_40()) return true;
2763 return false;
2764 }
2765
2766 private boolean jj_3_10() {
2767 if (jj_3R_25()) return true;
2768 return false;
2769 }
2770
2771 private boolean jj_3R_24() {
2772 if (jj_3R_33()) return true;
2773 return false;
2774 }
2775
2776 private boolean jj_3R_49() {
2777 Token xsp;
2778 xsp = jj_scanpos;
2779 if (jj_scan_token(41)) {
2780 jj_scanpos = xsp;
2781 if (jj_scan_token(28)) return true;
2782 }
2783 return false;
2784 }
2785
2786 private boolean jj_3R_48() {
2787 if (jj_scan_token(40)) return true;
2788 return false;
2789 }
2790
2791 private boolean jj_3_16() {
2792 if (jj_3R_30()) return true;
2793 return false;
2794 }
2795
2796 private boolean jj_3R_47() {
2797 if (jj_scan_token(35)) return true;
2798 return false;
2799 }
2800
2801 private boolean jj_3_15() {
2802 if (jj_3R_29()) return true;
2803 return false;
2804 }
2805
2806 private boolean jj_3R_38() {
2807 if (jj_3R_39()) return true;
2808 return false;
2809 }
2810
2811 private boolean jj_3R_46() {
2812 if (jj_scan_token(36)) return true;
2813 return false;
2814 }
2815
2816 private boolean jj_3_14() {
2817 if (jj_3R_28()) return true;
2818 return false;
2819 }
2820
2821 private boolean jj_3R_62() {
2822 if (jj_3R_33()) return true;
2823 return false;
2824 }
2825
2826 private boolean jj_3R_45() {
2827 Token xsp;
2828 xsp = jj_scanpos;
2829 if (jj_3R_46()) {
2830 jj_scanpos = xsp;
2831 if (jj_3R_47()) {
2832 jj_scanpos = xsp;
2833 if (jj_3R_48()) {
2834 jj_scanpos = xsp;
2835 if (jj_3R_49()) {
2836 jj_scanpos = xsp;
2837 if (jj_3R_50()) return true;
2838 }
2839 }
2840 }
2841 }
2842 return false;
2843 }
2844
2845 private boolean jj_3R_37() {
2846 if (jj_3R_38()) return true;
2847 return false;
2848 }
2849
2850 private boolean jj_3R_22() {
2851 if (jj_scan_token(54)) return true;
2852 if (jj_3R_31()) return true;
2853 return false;
2854 }
2855
2856 private boolean jj_3_9() {
2857 if (jj_scan_token(51)) return true;
2858 Token xsp;
2859 xsp = jj_scanpos;
2860 if (jj_3R_24()) jj_scanpos = xsp;
2861 if (jj_scan_token(54)) return true;
2862 return false;
2863 }
2864
2865 private boolean jj_3R_36() {
2866 if (jj_3R_37()) return true;
2867 return false;
2868 }
2869
2870 private boolean jj_3R_61() {
2871 if (jj_scan_token(54)) return true;
2872 return false;
2873 }
2874
2875 private boolean jj_3R_60() {
2876 if (jj_scan_token(44)) return true;
2877 return false;
2878 }
2879
2880 private boolean jj_3R_59() {
2881 if (jj_3R_64()) return true;
2882 return false;
2883 }
2884
2885 private boolean jj_3_3() {
2886 if (jj_3R_21()) return true;
2887 return false;
2888 }
2889
2890 private boolean jj_3R_21() {
2891 if (jj_scan_token(IDENT)) return true;
2892 if (jj_scan_token(44)) return true;
2893 return false;
2894 }
2895
2896 private boolean jj_3R_58() {
2897 Token xsp;
2898 xsp = jj_scanpos;
2899 if (jj_3_3()) {
2900 jj_scanpos = xsp;
2901 if (jj_3R_63()) return true;
2902 }
2903 return false;
2904 }
2905
2906 private boolean jj_3R_35() {
2907 if (jj_3R_36()) return true;
2908 return false;
2909 }
2910
2911 private boolean jj_3R_44() {
2912 if (jj_3R_45()) return true;
2913 return false;
2914 }
2915
2916 private boolean jj_3_8() {
2917 if (jj_3R_23()) return true;
2918 return false;
2919 }
2920
2921
2922 public OgnlParserTokenManager token_source;
2923 JavaCharStream jj_input_stream;
2924
2925 public Token token;
2926
2927 public Token jj_nt;
2928 private int jj_ntk;
2929 private Token jj_scanpos, jj_lastpos;
2930 private int jj_la;
2931 private int jj_gen;
2932 final private int[] jj_la1 = new int[64];
2933 static private int[] jj_la1_0;
2934 static private int[] jj_la1_1;
2935 static private int[] jj_la1_2;
2936 static {
2937 jj_la1_init_0();
2938 jj_la1_init_1();
2939 jj_la1_init_2();
2940 }
2941 private static void jj_la1_init_0() {
2942 jj_la1_0 = new int[] {0x2,0x4,0x8,0x60,0x60,0x180,0x180,0x600,0x600,0x1800,0x1800,0x6000,0x6000,0x78000,0x18000,0x60000,0x78000,0x1ff80000,0x180000,0x600000,0x1800000,0x6000000,0x1ff80000,0xe0000000,0x60000000,0x80000000,0x0,0xe0000000,0x0,0x0,0x0,0x0,0x10000000,0x0,0x0,0x10000010,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x10000010,0x0,0x2,0x10000010,0x0,0x0,0x0,0x10,0x0,0x0,0x0,0x2,0x10000010,0x2,0x10000010,0x2,0x10000010,0x2,0x10000010,0x0,};
2943 }
2944 private static void jj_la1_init_1() {
2945 jj_la1_1 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0x0,0x1,0x6,0x7,0x18,0x18,0xe0,0xe0,0x200,0x800,0x400,0x35fd318,0x101800,0x0,0x400000,0x401000,0x101800,0x0,0x0,0x0,0x35fd318,0x1000000,0x0,0x35fd318,0x1c000,0x1000000,0x501000,0x0,0x0,0x0,0x800,0x0,0x35fd318,0x0,0x35fd318,0x0,0x35fd318,0x0,0x35fd318,0x100000,};
2946 }
2947 private static void jj_la1_init_2() {
2948 jj_la1_2 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x39209,0x8,0x1,0x0,0x1,0x8,0x39200,0x1,0x0,0x39209,0x0,0x0,0x39209,0x39200,0x0,0x9,0x0,0x1,0x1,0x0,0x0,0x39209,0x0,0x39209,0x0,0x39209,0x0,0x39209,0x8,};
2949 }
2950 final private JJCalls[] jj_2_rtns = new JJCalls[16];
2951 private boolean jj_rescan = false;
2952 private int jj_gc = 0;
2953
2954
2955 public OgnlParser(java.io.InputStream stream) {
2956 this(stream, null);
2957 }
2958
2959 public OgnlParser(java.io.InputStream stream, String encoding) {
2960 try { jj_input_stream = new JavaCharStream(stream, encoding, 1, 1); } catch(java.io.UnsupportedEncodingException e) { throw new RuntimeException(e); }
2961 token_source = new OgnlParserTokenManager(jj_input_stream);
2962 token = new Token();
2963 jj_ntk = -1;
2964 jj_gen = 0;
2965 for (int i = 0; i < 64; i++) jj_la1[i] = -1;
2966 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
2967 }
2968
2969
2970 public void ReInit(java.io.InputStream stream) {
2971 ReInit(stream, null);
2972 }
2973
2974 public void ReInit(java.io.InputStream stream, String encoding) {
2975 try { jj_input_stream.ReInit(stream, encoding, 1, 1); } catch(java.io.UnsupportedEncodingException e) { throw new RuntimeException(e); }
2976 token_source.ReInit(jj_input_stream);
2977 token = new Token();
2978 jj_ntk = -1;
2979 jj_gen = 0;
2980 for (int i = 0; i < 64; i++) jj_la1[i] = -1;
2981 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
2982 }
2983
2984
2985 public OgnlParser(java.io.Reader stream) {
2986 jj_input_stream = new JavaCharStream(stream, 1, 1);
2987 token_source = new OgnlParserTokenManager(jj_input_stream);
2988 token = new Token();
2989 jj_ntk = -1;
2990 jj_gen = 0;
2991 for (int i = 0; i < 64; i++) jj_la1[i] = -1;
2992 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
2993 }
2994
2995
2996 public void ReInit(java.io.Reader stream) {
2997 jj_input_stream.ReInit(stream, 1, 1);
2998 token_source.ReInit(jj_input_stream);
2999 token = new Token();
3000 jj_ntk = -1;
3001 jj_gen = 0;
3002 for (int i = 0; i < 64; i++) jj_la1[i] = -1;
3003 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
3004 }
3005
3006
3007 public OgnlParser(OgnlParserTokenManager tm) {
3008 token_source = tm;
3009 token = new Token();
3010 jj_ntk = -1;
3011 jj_gen = 0;
3012 for (int i = 0; i < 64; i++) jj_la1[i] = -1;
3013 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
3014 }
3015
3016
3017 public void ReInit(OgnlParserTokenManager tm) {
3018 token_source = tm;
3019 token = new Token();
3020 jj_ntk = -1;
3021 jj_gen = 0;
3022 for (int i = 0; i < 64; i++) jj_la1[i] = -1;
3023 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
3024 }
3025
3026 private Token jj_consume_token(int kind) throws ParseException {
3027 Token oldToken;
3028 if ((oldToken = token).next != null) token = token.next;
3029 else token = token.next = token_source.getNextToken();
3030 jj_ntk = -1;
3031 if (token.kind == kind) {
3032 jj_gen++;
3033 if (++jj_gc > 100) {
3034 jj_gc = 0;
3035 for (int i = 0; i < jj_2_rtns.length; i++) {
3036 JJCalls c = jj_2_rtns[i];
3037 while (c != null) {
3038 if (c.gen < jj_gen) c.first = null;
3039 c = c.next;
3040 }
3041 }
3042 }
3043 return token;
3044 }
3045 token = oldToken;
3046 jj_kind = kind;
3047 throw generateParseException();
3048 }
3049
3050 static private final class LookaheadSuccess extends java.lang.Error { }
3051 final private LookaheadSuccess jj_ls = new LookaheadSuccess();
3052 private boolean jj_scan_token(int kind) {
3053 if (jj_scanpos == jj_lastpos) {
3054 jj_la--;
3055 if (jj_scanpos.next == null) {
3056 jj_lastpos = jj_scanpos = jj_scanpos.next = token_source.getNextToken();
3057 } else {
3058 jj_lastpos = jj_scanpos = jj_scanpos.next;
3059 }
3060 } else {
3061 jj_scanpos = jj_scanpos.next;
3062 }
3063 if (jj_rescan) {
3064 int i = 0; Token tok = token;
3065 while (tok != null && tok != jj_scanpos) { i++; tok = tok.next; }
3066 if (tok != null) jj_add_error_token(kind, i);
3067 }
3068 if (jj_scanpos.kind != kind) return true;
3069 if (jj_la == 0 && jj_scanpos == jj_lastpos) throw jj_ls;
3070 return false;
3071 }
3072
3073
3074
3075 final public Token getNextToken() {
3076 if (token.next != null) token = token.next;
3077 else token = token.next = token_source.getNextToken();
3078 jj_ntk = -1;
3079 jj_gen++;
3080 return token;
3081 }
3082
3083
3084 final public Token getToken(int index) {
3085 Token t = token;
3086 for (int i = 0; i < index; i++) {
3087 if (t.next != null) t = t.next;
3088 else t = t.next = token_source.getNextToken();
3089 }
3090 return t;
3091 }
3092
3093 private int jj_ntk() {
3094 if ((jj_nt=token.next) == null)
3095 return (jj_ntk = (token.next=token_source.getNextToken()).kind);
3096 else
3097 return (jj_ntk = jj_nt.kind);
3098 }
3099
3100 private java.util.List<int[]> jj_expentries = new java.util.ArrayList<int[]>();
3101 private int[] jj_expentry;
3102 private int jj_kind = -1;
3103 private int[] jj_lasttokens = new int[100];
3104 private int jj_endpos;
3105
3106 private void jj_add_error_token(int kind, int pos) {
3107 if (pos >= 100) return;
3108 if (pos == jj_endpos + 1) {
3109 jj_lasttokens[jj_endpos++] = kind;
3110 } else if (jj_endpos != 0) {
3111 jj_expentry = new int[jj_endpos];
3112 for (int i = 0; i < jj_endpos; i++) {
3113 jj_expentry[i] = jj_lasttokens[i];
3114 }
3115 jj_entries_loop: for (java.util.Iterator<?> it = jj_expentries.iterator(); it.hasNext();) {
3116 int[] oldentry = (int[])(it.next());
3117 if (oldentry.length == jj_expentry.length) {
3118 for (int i = 0; i < jj_expentry.length; i++) {
3119 if (oldentry[i] != jj_expentry[i]) {
3120 continue jj_entries_loop;
3121 }
3122 }
3123 jj_expentries.add(jj_expentry);
3124 break jj_entries_loop;
3125 }
3126 }
3127 if (pos != 0) jj_lasttokens[(jj_endpos = pos) - 1] = kind;
3128 }
3129 }
3130
3131
3132 public ParseException generateParseException() {
3133 jj_expentries.clear();
3134 boolean[] la1tokens = new boolean[86];
3135 if (jj_kind >= 0) {
3136 la1tokens[jj_kind] = true;
3137 jj_kind = -1;
3138 }
3139 for (int i = 0; i < 64; i++) {
3140 if (jj_la1[i] == jj_gen) {
3141 for (int j = 0; j < 32; j++) {
3142 if ((jj_la1_0[i] & (1<<j)) != 0) {
3143 la1tokens[j] = true;
3144 }
3145 if ((jj_la1_1[i] & (1<<j)) != 0) {
3146 la1tokens[32+j] = true;
3147 }
3148 if ((jj_la1_2[i] & (1<<j)) != 0) {
3149 la1tokens[64+j] = true;
3150 }
3151 }
3152 }
3153 }
3154 for (int i = 0; i < 86; i++) {
3155 if (la1tokens[i]) {
3156 jj_expentry = new int[1];
3157 jj_expentry[0] = i;
3158 jj_expentries.add(jj_expentry);
3159 }
3160 }
3161 jj_endpos = 0;
3162 jj_rescan_token();
3163 jj_add_error_token(0, 0);
3164 int[][] exptokseq = new int[jj_expentries.size()][];
3165 for (int i = 0; i < jj_expentries.size(); i++) {
3166 exptokseq[i] = jj_expentries.get(i);
3167 }
3168 return new ParseException(token, exptokseq, tokenImage);
3169 }
3170
3171
3172 final public void enable_tracing() {
3173 }
3174
3175
3176 final public void disable_tracing() {
3177 }
3178
3179 private void jj_rescan_token() {
3180 jj_rescan = true;
3181 for (int i = 0; i < 16; i++) {
3182 try {
3183 JJCalls p = jj_2_rtns[i];
3184 do {
3185 if (p.gen > jj_gen) {
3186 jj_la = p.arg; jj_lastpos = jj_scanpos = p.first;
3187 switch (i) {
3188 case 0: jj_3_1(); break;
3189 case 1: jj_3_2(); break;
3190 case 2: jj_3_3(); break;
3191 case 3: jj_3_4(); break;
3192 case 4: jj_3_5(); break;
3193 case 5: jj_3_6(); break;
3194 case 6: jj_3_7(); break;
3195 case 7: jj_3_8(); break;
3196 case 8: jj_3_9(); break;
3197 case 9: jj_3_10(); break;
3198 case 10: jj_3_11(); break;
3199 case 11: jj_3_12(); break;
3200 case 12: jj_3_13(); break;
3201 case 13: jj_3_14(); break;
3202 case 14: jj_3_15(); break;
3203 case 15: jj_3_16(); break;
3204 }
3205 }
3206 p = p.next;
3207 } while (p != null);
3208 } catch(LookaheadSuccess ls) { }
3209 }
3210 jj_rescan = false;
3211 }
3212
3213 private void jj_save(int index, int xla) {
3214 JJCalls p = jj_2_rtns[index];
3215 while (p.gen > jj_gen) {
3216 if (p.next == null) { p = p.next = new JJCalls(); break; }
3217 p = p.next;
3218 }
3219 p.gen = jj_gen + xla - jj_la; p.first = token; p.arg = xla;
3220 }
3221
3222 static final class JJCalls {
3223 int gen;
3224 Token first;
3225 int arg;
3226 JJCalls next;
3227 }
3228
3229 }