1 7 8 9 package com.sun.tools.example.debug.expr; 10 11 import com.sun.jdi.*; 12 import java.util.Stack ; 13 import java.util.List ; 14 import java.util.ArrayList ; 15 16 public class ExpressionParser implements ExpressionParserConstants { 17 18 Stack stack = new Stack (); 19 VirtualMachine vm = null; 20 GetFrame frameGetter = null; 21 private static GetFrame lastFrameGetter; 22 private static LValue lastLValue; 23 24 LValue peek() { 25 return (LValue)stack.peek(); 26 } 27 28 LValue pop() { 29 return (LValue)stack.pop(); 30 } 31 32 void push(LValue lval) { 33 stack.push(lval); 34 } 35 36 public static Value getMassagedValue() throws ParseException { 37 return lastLValue.getMassagedValue(lastFrameGetter); 38 } 39 40 public interface GetFrame { 41 StackFrame get() throws IncompatibleThreadStateException; 42 } 43 44 public static Value evaluate(String expr, VirtualMachine vm, 45 GetFrame frameGetter) throws ParseException, 46 InvocationException, 47 InvalidTypeException, 48 ClassNotLoadedException, 49 IncompatibleThreadStateException { 50 java.io.InputStream in = new java.io.StringBufferInputStream (expr); 52 ExpressionParser parser = new ExpressionParser(in); 53 parser.vm = vm; 54 parser.frameGetter = frameGetter; 55 Value value = null; 56 parser.Expression(); 57 lastFrameGetter = frameGetter; 58 lastLValue = parser.pop(); 59 return lastLValue.getValue(); 60 } 61 62 public static void main(String args[]) { 63 ExpressionParser parser; 64 System.out.print("Java Expression Parser: "); 65 if (args.length == 0) { 66 System.out.println("Reading from standard input . . ."); 67 parser = new ExpressionParser(System.in); 68 } else if (args.length == 1) { 69 System.out.println("Reading from file " + args[0] + " . . ."); 70 try { 71 parser = new ExpressionParser(new java.io.FileInputStream (args[0])); 72 } catch (java.io.FileNotFoundException e) { 73 System.out.println("Java Parser Version 1.0.2: File " + 74 args[0] + " not found."); 75 return; 76 } 77 } else { 78 System.out.println("Usage is one of:"); 79 System.out.println(" java ExpressionParser < inputfile"); 80 System.out.println("OR"); 81 System.out.println(" java ExpressionParser inputfile"); 82 return; 83 } 84 try { 85 parser.Expression(); 86 System.out.print("Java Expression Parser: "); 87 System.out.println("Java program parsed successfully."); 88 } catch (ParseException e) { 89 System.out.print("Java Expression Parser: "); 90 System.out.println("Encountered errors during parse."); 91 } 92 } 93 94 97 98 101 final public void Type() throws ParseException { 102 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 103 case BOOLEAN: 104 case BYTE: 105 case CHAR: 106 case DOUBLE: 107 case FLOAT: 108 case INT: 109 case LONG: 110 case SHORT: 111 PrimitiveType(); 112 break; 113 case IDENTIFIER: 114 Name(); 115 break; 116 default: 117 jj_la1[0] = jj_gen; 118 jj_consume_token(-1); 119 throw new ParseException(); 120 } 121 label_1: 122 while (true) { 123 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 124 case LBRACKET: 125 ; 126 break; 127 default: 128 jj_la1[1] = jj_gen; 129 break label_1; 130 } 131 jj_consume_token(LBRACKET); 132 jj_consume_token(RBRACKET); 133 } 134 } 135 136 final public void PrimitiveType() throws ParseException { 137 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 138 case BOOLEAN: 139 jj_consume_token(BOOLEAN); 140 break; 141 case CHAR: 142 jj_consume_token(CHAR); 143 break; 144 case BYTE: 145 jj_consume_token(BYTE); 146 break; 147 case SHORT: 148 jj_consume_token(SHORT); 149 break; 150 case INT: 151 jj_consume_token(INT); 152 break; 153 case LONG: 154 jj_consume_token(LONG); 155 break; 156 case FLOAT: 157 jj_consume_token(FLOAT); 158 break; 159 case DOUBLE: 160 jj_consume_token(DOUBLE); 161 break; 162 default: 163 jj_la1[2] = jj_gen; 164 jj_consume_token(-1); 165 throw new ParseException(); 166 } 167 } 168 169 final public String Name() throws ParseException { 170 StringBuffer sb = new StringBuffer (); 171 jj_consume_token(IDENTIFIER); 172 sb.append(token); 173 label_2: 174 while (true) { 175 if (jj_2_1(2)) { 176 ; 177 } else { 178 break label_2; 179 } 180 jj_consume_token(DOT); 181 jj_consume_token(IDENTIFIER); 182 sb.append('.'); sb.append(token); 183 } 184 {if (true) return sb.toString();} 185 throw new Error ("Missing return statement in function"); 186 } 187 188 final public void NameList() throws ParseException { 189 Name(); 190 label_3: 191 while (true) { 192 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 193 case COMMA: 194 ; 195 break; 196 default: 197 jj_la1[3] = jj_gen; 198 break label_3; 199 } 200 jj_consume_token(COMMA); 201 Name(); 202 } 203 } 204 205 208 final public void Expression() throws ParseException { 209 if (jj_2_2(2147483647)) { 210 Assignment(); 211 } else { 212 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 213 case FALSE: 214 case NEW: 215 case NULL: 216 case SUPER: 217 case THIS: 218 case TRUE: 219 case INTEGER_LITERAL: 220 case FLOATING_POINT_LITERAL: 221 case CHARACTER_LITERAL: 222 case STRING_LITERAL: 223 case IDENTIFIER: 224 case LPAREN: 225 case BANG: 226 case TILDE: 227 case INCR: 228 case DECR: 229 case PLUS: 230 case MINUS: 231 ConditionalExpression(); 232 break; 233 default: 234 jj_la1[4] = jj_gen; 235 jj_consume_token(-1); 236 throw new ParseException(); 237 } 238 } 239 } 240 241 final public void Assignment() throws ParseException { 242 PrimaryExpression(); 243 AssignmentOperator(); 244 Expression(); 245 LValue exprVal = pop(); pop().setValue(exprVal); push(exprVal); 246 } 247 248 final public void AssignmentOperator() throws ParseException { 249 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 250 case ASSIGN: 251 jj_consume_token(ASSIGN); 252 break; 253 case STARASSIGN: 254 jj_consume_token(STARASSIGN); 255 break; 256 case SLASHASSIGN: 257 jj_consume_token(SLASHASSIGN); 258 break; 259 case REMASSIGN: 260 jj_consume_token(REMASSIGN); 261 break; 262 case PLUSASSIGN: 263 jj_consume_token(PLUSASSIGN); 264 break; 265 case MINUSASSIGN: 266 jj_consume_token(MINUSASSIGN); 267 break; 268 case LSHIFTASSIGN: 269 jj_consume_token(LSHIFTASSIGN); 270 break; 271 case RSIGNEDSHIFTASSIGN: 272 jj_consume_token(RSIGNEDSHIFTASSIGN); 273 break; 274 case RUNSIGNEDSHIFTASSIGN: 275 jj_consume_token(RUNSIGNEDSHIFTASSIGN); 276 break; 277 case ANDASSIGN: 278 jj_consume_token(ANDASSIGN); 279 break; 280 case XORASSIGN: 281 jj_consume_token(XORASSIGN); 282 break; 283 case ORASSIGN: 284 jj_consume_token(ORASSIGN); 285 break; 286 default: 287 jj_la1[5] = jj_gen; 288 jj_consume_token(-1); 289 throw new ParseException(); 290 } 291 } 292 293 final public void ConditionalExpression() throws ParseException { 294 ConditionalOrExpression(); 295 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 296 case HOOK: 297 jj_consume_token(HOOK); 298 Expression(); 299 jj_consume_token(COLON); 300 ConditionalExpression(); 301 LValue falseBranch = pop(); LValue trueBranch = pop(); 302 Value cond = pop().interiorGetValue(); 303 if (cond instanceof BooleanValue) { 304 push(((BooleanValue)cond).booleanValue()? 305 trueBranch : falseBranch); 306 } else { 307 {if (true) throw new ParseException("Condition must be boolean");} 308 } 309 break; 310 default: 311 jj_la1[6] = jj_gen; 312 ; 313 } 314 } 315 316 final public void ConditionalOrExpression() throws ParseException { 317 ConditionalAndExpression(); 318 label_4: 319 while (true) { 320 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 321 case SC_OR: 322 ; 323 break; 324 default: 325 jj_la1[7] = jj_gen; 326 break label_4; 327 } 328 jj_consume_token(SC_OR); 329 ConditionalAndExpression(); 330 {if (true) throw new ParseException("operation not yet supported");} 331 } 332 } 333 334 final public void ConditionalAndExpression() throws ParseException { 335 InclusiveOrExpression(); 336 label_5: 337 while (true) { 338 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 339 case SC_AND: 340 ; 341 break; 342 default: 343 jj_la1[8] = jj_gen; 344 break label_5; 345 } 346 jj_consume_token(SC_AND); 347 InclusiveOrExpression(); 348 {if (true) throw new ParseException("operation not yet supported");} 349 } 350 } 351 352 final public void InclusiveOrExpression() throws ParseException { 353 ExclusiveOrExpression(); 354 label_6: 355 while (true) { 356 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 357 case BIT_OR: 358 ; 359 break; 360 default: 361 jj_la1[9] = jj_gen; 362 break label_6; 363 } 364 jj_consume_token(BIT_OR); 365 ExclusiveOrExpression(); 366 {if (true) throw new ParseException("operation not yet supported");} 367 } 368 } 369 370 final public void ExclusiveOrExpression() throws ParseException { 371 AndExpression(); 372 label_7: 373 while (true) { 374 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 375 case XOR: 376 ; 377 break; 378 default: 379 jj_la1[10] = jj_gen; 380 break label_7; 381 } 382 jj_consume_token(XOR); 383 AndExpression(); 384 {if (true) throw new ParseException("operation not yet supported");} 385 } 386 } 387 388 final public void AndExpression() throws ParseException { 389 EqualityExpression(); 390 label_8: 391 while (true) { 392 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 393 case BIT_AND: 394 ; 395 break; 396 default: 397 jj_la1[11] = jj_gen; 398 break label_8; 399 } 400 jj_consume_token(BIT_AND); 401 EqualityExpression(); 402 {if (true) throw new ParseException("operation not yet supported");} 403 } 404 } 405 406 final public void EqualityExpression() throws ParseException { 407 Token tok; 408 InstanceOfExpression(); 409 label_9: 410 while (true) { 411 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 412 case EQ: 413 case NE: 414 ; 415 break; 416 default: 417 jj_la1[12] = jj_gen; 418 break label_9; 419 } 420 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 421 case EQ: 422 tok = jj_consume_token(EQ); 423 break; 424 case NE: 425 tok = jj_consume_token(NE); 426 break; 427 default: 428 jj_la1[13] = jj_gen; 429 jj_consume_token(-1); 430 throw new ParseException(); 431 } 432 InstanceOfExpression(); 433 LValue left = pop(); 434 push( LValue.booleanOperation(vm, tok, pop(), left) ); 435 } 436 } 437 438 final public void InstanceOfExpression() throws ParseException { 439 RelationalExpression(); 440 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 441 case INSTANCEOF: 442 jj_consume_token(INSTANCEOF); 443 Type(); 444 {if (true) throw new ParseException("operation not yet supported");} 445 break; 446 default: 447 jj_la1[14] = jj_gen; 448 ; 449 } 450 } 451 452 final public void RelationalExpression() throws ParseException { 453 Token tok; 454 ShiftExpression(); 455 label_10: 456 while (true) { 457 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 458 case GT: 459 case LT: 460 case LE: 461 case GE: 462 ; 463 break; 464 default: 465 jj_la1[15] = jj_gen; 466 break label_10; 467 } 468 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 469 case LT: 470 tok = jj_consume_token(LT); 471 break; 472 case GT: 473 tok = jj_consume_token(GT); 474 break; 475 case LE: 476 tok = jj_consume_token(LE); 477 break; 478 case GE: 479 tok = jj_consume_token(GE); 480 break; 481 default: 482 jj_la1[16] = jj_gen; 483 jj_consume_token(-1); 484 throw new ParseException(); 485 } 486 ShiftExpression(); 487 LValue left = pop(); 488 push( LValue.booleanOperation(vm, tok, pop(), left) ); 489 } 490 } 491 492 final public void ShiftExpression() throws ParseException { 493 AdditiveExpression(); 494 label_11: 495 while (true) { 496 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 497 case LSHIFT: 498 case RSIGNEDSHIFT: 499 case RUNSIGNEDSHIFT: 500 ; 501 break; 502 default: 503 jj_la1[17] = jj_gen; 504 break label_11; 505 } 506 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 507 case LSHIFT: 508 jj_consume_token(LSHIFT); 509 break; 510 case RSIGNEDSHIFT: 511 jj_consume_token(RSIGNEDSHIFT); 512 break; 513 case RUNSIGNEDSHIFT: 514 jj_consume_token(RUNSIGNEDSHIFT); 515 break; 516 default: 517 jj_la1[18] = jj_gen; 518 jj_consume_token(-1); 519 throw new ParseException(); 520 } 521 AdditiveExpression(); 522 {if (true) throw new ParseException("operation not yet supported");} 523 } 524 } 525 526 final public void AdditiveExpression() throws ParseException { 527 Token tok; 528 MultiplicativeExpression(); 529 label_12: 530 while (true) { 531 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 532 case PLUS: 533 case MINUS: 534 ; 535 break; 536 default: 537 jj_la1[19] = jj_gen; 538 break label_12; 539 } 540 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 541 case PLUS: 542 tok = jj_consume_token(PLUS); 543 break; 544 case MINUS: 545 tok = jj_consume_token(MINUS); 546 break; 547 default: 548 jj_la1[20] = jj_gen; 549 jj_consume_token(-1); 550 throw new ParseException(); 551 } 552 MultiplicativeExpression(); 553 LValue left = pop(); 554 push( LValue.operation(vm, tok, pop(), left, frameGetter) ); 555 } 556 } 557 558 final public void MultiplicativeExpression() throws ParseException { 559 Token tok; 560 UnaryExpression(); 561 label_13: 562 while (true) { 563 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 564 case STAR: 565 case SLASH: 566 case REM: 567 ; 568 break; 569 default: 570 jj_la1[21] = jj_gen; 571 break label_13; 572 } 573 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 574 case STAR: 575 tok = jj_consume_token(STAR); 576 break; 577 case SLASH: 578 tok = jj_consume_token(SLASH); 579 break; 580 case REM: 581 tok = jj_consume_token(REM); 582 break; 583 default: 584 jj_la1[22] = jj_gen; 585 jj_consume_token(-1); 586 throw new ParseException(); 587 } 588 UnaryExpression(); 589 LValue left = pop(); 590 push( LValue.operation(vm, tok, pop(), left, frameGetter) ); 591 } 592 } 593 594 final public void UnaryExpression() throws ParseException { 595 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 596 case PLUS: 597 case MINUS: 598 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 599 case PLUS: 600 jj_consume_token(PLUS); 601 break; 602 case MINUS: 603 jj_consume_token(MINUS); 604 break; 605 default: 606 jj_la1[23] = jj_gen; 607 jj_consume_token(-1); 608 throw new ParseException(); 609 } 610 UnaryExpression(); 611 {if (true) throw new ParseException("operation not yet supported");} 612 break; 613 case INCR: 614 PreIncrementExpression(); 615 break; 616 case DECR: 617 PreDecrementExpression(); 618 break; 619 case FALSE: 620 case NEW: 621 case NULL: 622 case SUPER: 623 case THIS: 624 case TRUE: 625 case INTEGER_LITERAL: 626 case FLOATING_POINT_LITERAL: 627 case CHARACTER_LITERAL: 628 case STRING_LITERAL: 629 case IDENTIFIER: 630 case LPAREN: 631 case BANG: 632 case TILDE: 633 UnaryExpressionNotPlusMinus(); 634 break; 635 default: 636 jj_la1[24] = jj_gen; 637 jj_consume_token(-1); 638 throw new ParseException(); 639 } 640 } 641 642 final public void PreIncrementExpression() throws ParseException { 643 jj_consume_token(INCR); 644 PrimaryExpression(); 645 {if (true) throw new ParseException("operation not yet supported");} 646 } 647 648 final public void PreDecrementExpression() throws ParseException { 649 jj_consume_token(DECR); 650 PrimaryExpression(); 651 {if (true) throw new ParseException("operation not yet supported");} 652 } 653 654 final public void UnaryExpressionNotPlusMinus() throws ParseException { 655 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 656 case BANG: 657 case TILDE: 658 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 659 case TILDE: 660 jj_consume_token(TILDE); 661 break; 662 case BANG: 663 jj_consume_token(BANG); 664 break; 665 default: 666 jj_la1[25] = jj_gen; 667 jj_consume_token(-1); 668 throw new ParseException(); 669 } 670 UnaryExpression(); 671 {if (true) throw new ParseException("operation not yet supported");} 672 break; 673 default: 674 jj_la1[26] = jj_gen; 675 if (jj_2_3(2147483647)) { 676 CastExpression(); 677 } else { 678 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 679 case FALSE: 680 case NEW: 681 case NULL: 682 case SUPER: 683 case THIS: 684 case TRUE: 685 case INTEGER_LITERAL: 686 case FLOATING_POINT_LITERAL: 687 case CHARACTER_LITERAL: 688 case STRING_LITERAL: 689 case IDENTIFIER: 690 case LPAREN: 691 PostfixExpression(); 692 break; 693 default: 694 jj_la1[27] = jj_gen; 695 jj_consume_token(-1); 696 throw new ParseException(); 697 } 698 } 699 } 700 } 701 702 final public void CastLookahead() throws ParseException { 706 if (jj_2_4(2)) { 707 jj_consume_token(LPAREN); 708 PrimitiveType(); 709 } else if (jj_2_5(2147483647)) { 710 jj_consume_token(LPAREN); 711 Name(); 712 jj_consume_token(LBRACKET); 713 jj_consume_token(RBRACKET); 714 } else { 715 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 716 case LPAREN: 717 jj_consume_token(LPAREN); 718 Name(); 719 jj_consume_token(RPAREN); 720 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 721 case TILDE: 722 jj_consume_token(TILDE); 723 break; 724 case BANG: 725 jj_consume_token(BANG); 726 break; 727 case LPAREN: 728 jj_consume_token(LPAREN); 729 break; 730 case IDENTIFIER: 731 jj_consume_token(IDENTIFIER); 732 break; 733 case THIS: 734 jj_consume_token(THIS); 735 break; 736 case SUPER: 737 jj_consume_token(SUPER); 738 break; 739 case NEW: 740 jj_consume_token(NEW); 741 break; 742 case FALSE: 743 case NULL: 744 case TRUE: 745 case INTEGER_LITERAL: 746 case FLOATING_POINT_LITERAL: 747 case CHARACTER_LITERAL: 748 case STRING_LITERAL: 749 Literal(); 750 break; 751 default: 752 jj_la1[28] = jj_gen; 753 jj_consume_token(-1); 754 throw new ParseException(); 755 } 756 break; 757 default: 758 jj_la1[29] = jj_gen; 759 jj_consume_token(-1); 760 throw new ParseException(); 761 } 762 } 763 } 764 765 final public void PostfixExpression() throws ParseException { 766 PrimaryExpression(); 767 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 768 case INCR: 769 case DECR: 770 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 771 case INCR: 772 jj_consume_token(INCR); 773 break; 774 case DECR: 775 jj_consume_token(DECR); 776 {if (true) throw new ParseException("operation not yet supported");} 777 break; 778 default: 779 jj_la1[30] = jj_gen; 780 jj_consume_token(-1); 781 throw new ParseException(); 782 } 783 break; 784 default: 785 jj_la1[31] = jj_gen; 786 ; 787 } 788 } 789 790 final public void CastExpression() throws ParseException { 791 if (jj_2_6(2)) { 792 jj_consume_token(LPAREN); 793 PrimitiveType(); 794 label_14: 795 while (true) { 796 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 797 case LBRACKET: 798 ; 799 break; 800 default: 801 jj_la1[32] = jj_gen; 802 break label_14; 803 } 804 jj_consume_token(LBRACKET); 805 jj_consume_token(RBRACKET); 806 } 807 jj_consume_token(RPAREN); 808 UnaryExpression(); 809 } else { 810 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 811 case LPAREN: 812 jj_consume_token(LPAREN); 813 Name(); 814 label_15: 815 while (true) { 816 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 817 case LBRACKET: 818 ; 819 break; 820 default: 821 jj_la1[33] = jj_gen; 822 break label_15; 823 } 824 jj_consume_token(LBRACKET); 825 jj_consume_token(RBRACKET); 826 } 827 jj_consume_token(RPAREN); 828 UnaryExpressionNotPlusMinus(); 829 break; 830 default: 831 jj_la1[34] = jj_gen; 832 jj_consume_token(-1); 833 throw new ParseException(); 834 } 835 } 836 } 837 838 final public void PrimaryExpression() throws ParseException { 839 PrimaryPrefix(); 840 label_16: 841 while (true) { 842 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 843 case LPAREN: 844 case LBRACKET: 845 case DOT: 846 ; 847 break; 848 default: 849 jj_la1[35] = jj_gen; 850 break label_16; 851 } 852 PrimarySuffix(); 853 } 854 } 855 856 final public void PrimaryPrefix() throws ParseException { 857 String name; 858 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 859 case FALSE: 860 case NULL: 861 case TRUE: 862 case INTEGER_LITERAL: 863 case FLOATING_POINT_LITERAL: 864 case CHARACTER_LITERAL: 865 case STRING_LITERAL: 866 Literal(); 867 break; 868 case IDENTIFIER: 869 name = Name(); 870 push(LValue.makeName(vm, frameGetter, name)); 871 break; 872 case THIS: 873 jj_consume_token(THIS); 874 push(LValue.makeThisObject(vm, frameGetter, token)); 875 break; 876 case SUPER: 877 jj_consume_token(SUPER); 878 jj_consume_token(DOT); 879 jj_consume_token(IDENTIFIER); 880 {if (true) throw new ParseException("operation not yet supported");} 881 break; 882 case LPAREN: 883 jj_consume_token(LPAREN); 884 Expression(); 885 jj_consume_token(RPAREN); 886 break; 887 case NEW: 888 AllocationExpression(); 889 break; 890 default: 891 jj_la1[36] = jj_gen; 892 jj_consume_token(-1); 893 throw new ParseException(); 894 } 895 } 896 897 final public void PrimarySuffix() throws ParseException { 898 List argList; 899 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 900 case LBRACKET: 901 jj_consume_token(LBRACKET); 902 Expression(); 903 jj_consume_token(RBRACKET); 904 LValue index = pop(); 905 push(pop().arrayElementLValue(index)); 906 break; 907 case DOT: 908 jj_consume_token(DOT); 909 jj_consume_token(IDENTIFIER); 910 push(pop().memberLValue(frameGetter, token.image)); 911 break; 912 case LPAREN: 913 argList = Arguments(); 914 peek().invokeWith(argList); 915 break; 916 default: 917 jj_la1[37] = jj_gen; 918 jj_consume_token(-1); 919 throw new ParseException(); 920 } 921 } 922 923 final public void Literal() throws ParseException { 924 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 925 case INTEGER_LITERAL: 926 jj_consume_token(INTEGER_LITERAL); 927 push(LValue.makeInteger(vm, token)); 928 break; 929 case FLOATING_POINT_LITERAL: 930 jj_consume_token(FLOATING_POINT_LITERAL); 931 push(LValue.makeFloat(vm, token)); 932 break; 933 case CHARACTER_LITERAL: 934 jj_consume_token(CHARACTER_LITERAL); 935 push(LValue.makeCharacter(vm, token)); 936 break; 937 case STRING_LITERAL: 938 jj_consume_token(STRING_LITERAL); 939 push(LValue.makeString(vm, token)); 940 break; 941 case FALSE: 942 case TRUE: 943 BooleanLiteral(); 944 push(LValue.makeBoolean(vm, token)); 945 break; 946 case NULL: 947 NullLiteral(); 948 push(LValue.makeNull(vm, token)); 949 break; 950 default: 951 jj_la1[38] = jj_gen; 952 jj_consume_token(-1); 953 throw new ParseException(); 954 } 955 } 956 957 final public void BooleanLiteral() throws ParseException { 958 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 959 case TRUE: 960 jj_consume_token(TRUE); 961 break; 962 case FALSE: 963 jj_consume_token(FALSE); 964 break; 965 default: 966 jj_la1[39] = jj_gen; 967 jj_consume_token(-1); 968 throw new ParseException(); 969 } 970 } 971 972 final public void NullLiteral() throws ParseException { 973 jj_consume_token(NULL); 974 } 975 976 final public List Arguments() throws ParseException { 977 List argList = new ArrayList (); 978 jj_consume_token(LPAREN); 979 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 980 case FALSE: 981 case NEW: 982 case NULL: 983 case SUPER: 984 case THIS: 985 case TRUE: 986 case INTEGER_LITERAL: 987 case FLOATING_POINT_LITERAL: 988 case CHARACTER_LITERAL: 989 case STRING_LITERAL: 990 case IDENTIFIER: 991 case LPAREN: 992 case BANG: 993 case TILDE: 994 case INCR: 995 case DECR: 996 case PLUS: 997 case MINUS: 998 ArgumentList(argList); 999 break; 1000 default: 1001 jj_la1[40] = jj_gen; 1002 ; 1003 } 1004 jj_consume_token(RPAREN); 1005 {if (true) return argList;} 1006 throw new Error ("Missing return statement in function"); 1007 } 1008 1009 final public void ArgumentList(List argList) throws ParseException { 1010 Expression(); 1011 argList.add(pop().interiorGetValue()); 1012 label_17: 1013 while (true) { 1014 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1015 case COMMA: 1016 ; 1017 break; 1018 default: 1019 jj_la1[41] = jj_gen; 1020 break label_17; 1021 } 1022 jj_consume_token(COMMA); 1023 Expression(); 1024 argList.add(pop().interiorGetValue()); 1025 } 1026 } 1027 1028 final public void AllocationExpression() throws ParseException { 1029 List argList; String className; 1030 if (jj_2_7(2)) { 1031 jj_consume_token(NEW); 1032 PrimitiveType(); 1033 ArrayDimensions(); 1034 } else { 1035 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1036 case NEW: 1037 jj_consume_token(NEW); 1038 className = Name(); 1039 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1040 case LPAREN: 1041 argList = Arguments(); 1042 push(LValue.makeNewObject(vm, frameGetter, className, argList)); 1043 break; 1044 case LBRACKET: 1045 ArrayDimensions(); 1046 {if (true) throw new ParseException("operation not yet supported");} 1047 break; 1048 default: 1049 jj_la1[42] = jj_gen; 1050 jj_consume_token(-1); 1051 throw new ParseException(); 1052 } 1053 break; 1054 default: 1055 jj_la1[43] = jj_gen; 1056 jj_consume_token(-1); 1057 throw new ParseException(); 1058 } 1059 } 1060 } 1061 1062 1066 final public void ArrayDimensions() throws ParseException { 1067 label_18: 1068 while (true) { 1069 jj_consume_token(LBRACKET); 1070 Expression(); 1071 jj_consume_token(RBRACKET); 1072 if (jj_2_8(2)) { 1073 ; 1074 } else { 1075 break label_18; 1076 } 1077 } 1078 label_19: 1079 while (true) { 1080 if (jj_2_9(2)) { 1081 ; 1082 } else { 1083 break label_19; 1084 } 1085 jj_consume_token(LBRACKET); 1086 jj_consume_token(RBRACKET); 1087 } 1088 } 1089 1090 final private boolean jj_2_1(int xla) { 1091 jj_la = xla; jj_lastpos = jj_scanpos = token; 1092 boolean retval = !jj_3_1(); 1093 jj_save(0, xla); 1094 return retval; 1095 } 1096 1097 final private boolean jj_2_2(int xla) { 1098 jj_la = xla; jj_lastpos = jj_scanpos = token; 1099 boolean retval = !jj_3_2(); 1100 jj_save(1, xla); 1101 return retval; 1102 } 1103 1104 final private boolean jj_2_3(int xla) { 1105 jj_la = xla; jj_lastpos = jj_scanpos = token; 1106 boolean retval = !jj_3_3(); 1107 jj_save(2, xla); 1108 return retval; 1109 } 1110 1111 final private boolean jj_2_4(int xla) { 1112 jj_la = xla; jj_lastpos = jj_scanpos = token; 1113 boolean retval = !jj_3_4(); 1114 jj_save(3, xla); 1115 return retval; 1116 } 1117 1118 final private boolean jj_2_5(int xla) { 1119 jj_la = xla; jj_lastpos = jj_scanpos = token; 1120 boolean retval = !jj_3_5(); 1121 jj_save(4, xla); 1122 return retval; 1123 } 1124 1125 final private boolean jj_2_6(int xla) { 1126 jj_la = xla; jj_lastpos = jj_scanpos = token; 1127 boolean retval = !jj_3_6(); 1128 jj_save(5, xla); 1129 return retval; 1130 } 1131 1132 final private boolean jj_2_7(int xla) { 1133 jj_la = xla; jj_lastpos = jj_scanpos = token; 1134 boolean retval = !jj_3_7(); 1135 jj_save(6, xla); 1136 return retval; 1137 } 1138 1139 final private boolean jj_2_8(int xla) { 1140 jj_la = xla; jj_lastpos = jj_scanpos = token; 1141 boolean retval = !jj_3_8(); 1142 jj_save(7, xla); 1143 return retval; 1144 } 1145 1146 final private boolean jj_2_9(int xla) { 1147 jj_la = xla; jj_lastpos = jj_scanpos = token; 1148 boolean retval = !jj_3_9(); 1149 jj_save(8, xla); 1150 return retval; 1151 } 1152 1153 final private boolean jj_3R_154() { 1154 if (jj_scan_token(INCR)) return true; 1155 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1156 return false; 1157 } 1158 1159 final private boolean jj_3R_151() { 1160 Token xsp; 1161 xsp = jj_scanpos; 1162 if (jj_3R_154()) { 1163 jj_scanpos = xsp; 1164 if (jj_3R_155()) return true; 1165 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1166 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1167 return false; 1168 } 1169 1170 final private boolean jj_3R_148() { 1171 Token xsp; 1172 xsp = jj_scanpos; 1173 if (jj_3_6()) { 1174 jj_scanpos = xsp; 1175 if (jj_3R_150()) return true; 1176 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1177 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1178 return false; 1179 } 1180 1181 final private boolean jj_3_6() { 1182 if (jj_scan_token(LPAREN)) return true; 1183 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1184 if (jj_3R_23()) return true; 1185 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1186 Token xsp; 1187 while (true) { 1188 xsp = jj_scanpos; 1189 if (jj_3R_152()) { jj_scanpos = xsp; break; } 1190 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1191 } 1192 if (jj_scan_token(RPAREN)) return true; 1193 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1194 if (jj_3R_115()) return true; 1195 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1196 return false; 1197 } 1198 1199 final private boolean jj_3R_25() { 1200 Token xsp; 1201 xsp = jj_scanpos; 1202 if (jj_3R_50()) { 1203 jj_scanpos = xsp; 1204 if (jj_3R_51()) return true; 1205 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1206 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1207 return false; 1208 } 1209 1210 final private boolean jj_3R_50() { 1211 if (jj_3R_67()) return true; 1212 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1213 return false; 1214 } 1215 1216 final private boolean jj_3_5() { 1217 if (jj_scan_token(LPAREN)) return true; 1218 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1219 if (jj_3R_24()) return true; 1220 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1221 if (jj_scan_token(LBRACKET)) return true; 1222 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1223 return false; 1224 } 1225 1226 final private boolean jj_3R_149() { 1227 if (jj_3R_20()) return true; 1228 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1229 Token xsp; 1230 xsp = jj_scanpos; 1231 if (jj_3R_151()) jj_scanpos = xsp; 1232 else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1233 return false; 1234 } 1235 1236 final private boolean jj_3R_41() { 1237 if (jj_scan_token(LPAREN)) return true; 1238 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1239 if (jj_3R_24()) return true; 1240 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1241 if (jj_scan_token(RPAREN)) return true; 1242 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1243 Token xsp; 1244 xsp = jj_scanpos; 1245 if (jj_3R_59()) { 1246 jj_scanpos = xsp; 1247 if (jj_3R_60()) { 1248 jj_scanpos = xsp; 1249 if (jj_3R_61()) { 1250 jj_scanpos = xsp; 1251 if (jj_3R_62()) { 1252 jj_scanpos = xsp; 1253 if (jj_3R_63()) { 1254 jj_scanpos = xsp; 1255 if (jj_3R_64()) { 1256 jj_scanpos = xsp; 1257 if (jj_3R_65()) { 1258 jj_scanpos = xsp; 1259 if (jj_3R_66()) return true; 1260 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1261 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1262 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1263 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1264 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1265 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1266 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1267 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1268 return false; 1269 } 1270 1271 final private boolean jj_3R_40() { 1272 if (jj_scan_token(LPAREN)) return true; 1273 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1274 if (jj_3R_24()) return true; 1275 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1276 if (jj_scan_token(LBRACKET)) return true; 1277 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1278 if (jj_scan_token(RBRACKET)) return true; 1279 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1280 return false; 1281 } 1282 1283 final private boolean jj_3R_123() { 1284 if (jj_scan_token(LBRACKET)) return true; 1285 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1286 if (jj_scan_token(RBRACKET)) return true; 1287 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1288 return false; 1289 } 1290 1291 final private boolean jj_3_1() { 1292 if (jj_scan_token(DOT)) return true; 1293 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1294 if (jj_scan_token(IDENTIFIER)) return true; 1295 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1296 return false; 1297 } 1298 1299 final private boolean jj_3_4() { 1300 if (jj_scan_token(LPAREN)) return true; 1301 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1302 if (jj_3R_23()) return true; 1303 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1304 return false; 1305 } 1306 1307 final private boolean jj_3R_22() { 1308 Token xsp; 1309 xsp = jj_scanpos; 1310 if (jj_3_4()) { 1311 jj_scanpos = xsp; 1312 if (jj_3R_40()) { 1313 jj_scanpos = xsp; 1314 if (jj_3R_41()) return true; 1315 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1316 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1317 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1318 return false; 1319 } 1320 1321 final private boolean jj_3_3() { 1322 if (jj_3R_22()) return true; 1323 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1324 return false; 1325 } 1326 1327 final private boolean jj_3R_24() { 1328 if (jj_scan_token(IDENTIFIER)) return true; 1329 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1330 Token xsp; 1331 while (true) { 1332 xsp = jj_scanpos; 1333 if (jj_3_1()) { jj_scanpos = xsp; break; } 1334 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1335 } 1336 return false; 1337 } 1338 1339 final private boolean jj_3R_147() { 1340 if (jj_scan_token(BANG)) return true; 1341 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1342 return false; 1343 } 1344 1345 final private boolean jj_3R_142() { 1346 if (jj_3R_149()) return true; 1347 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1348 return false; 1349 } 1350 1351 final private boolean jj_3R_122() { 1352 if (jj_3R_24()) return true; 1353 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1354 return false; 1355 } 1356 1357 final private boolean jj_3R_49() { 1358 if (jj_scan_token(DOUBLE)) return true; 1359 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1360 return false; 1361 } 1362 1363 final private boolean jj_3R_141() { 1364 if (jj_3R_148()) return true; 1365 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1366 return false; 1367 } 1368 1369 final private boolean jj_3R_48() { 1370 if (jj_scan_token(FLOAT)) return true; 1371 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1372 return false; 1373 } 1374 1375 final private boolean jj_3R_146() { 1376 if (jj_scan_token(TILDE)) return true; 1377 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1378 return false; 1379 } 1380 1381 final private boolean jj_3R_47() { 1382 if (jj_scan_token(LONG)) return true; 1383 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1384 return false; 1385 } 1386 1387 final private boolean jj_3R_140() { 1388 Token xsp; 1389 xsp = jj_scanpos; 1390 if (jj_3R_146()) { 1391 jj_scanpos = xsp; 1392 if (jj_3R_147()) return true; 1393 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1394 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1395 if (jj_3R_115()) return true; 1396 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1397 return false; 1398 } 1399 1400 final private boolean jj_3R_136() { 1401 Token xsp; 1402 xsp = jj_scanpos; 1403 if (jj_3R_140()) { 1404 jj_scanpos = xsp; 1405 if (jj_3R_141()) { 1406 jj_scanpos = xsp; 1407 if (jj_3R_142()) return true; 1408 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1409 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1410 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1411 return false; 1412 } 1413 1414 final private boolean jj_3R_46() { 1415 if (jj_scan_token(INT)) return true; 1416 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1417 return false; 1418 } 1419 1420 final private boolean jj_3R_145() { 1421 if (jj_scan_token(REM)) return true; 1422 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1423 return false; 1424 } 1425 1426 final private boolean jj_3R_45() { 1427 if (jj_scan_token(SHORT)) return true; 1428 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1429 return false; 1430 } 1431 1432 final private boolean jj_3R_44() { 1433 if (jj_scan_token(BYTE)) return true; 1434 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1435 return false; 1436 } 1437 1438 final private boolean jj_3R_135() { 1439 if (jj_scan_token(DECR)) return true; 1440 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1441 if (jj_3R_20()) return true; 1442 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1443 return false; 1444 } 1445 1446 final private boolean jj_3R_43() { 1447 if (jj_scan_token(CHAR)) return true; 1448 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1449 return false; 1450 } 1451 1452 final private boolean jj_3R_23() { 1453 Token xsp; 1454 xsp = jj_scanpos; 1455 if (jj_3R_42()) { 1456 jj_scanpos = xsp; 1457 if (jj_3R_43()) { 1458 jj_scanpos = xsp; 1459 if (jj_3R_44()) { 1460 jj_scanpos = xsp; 1461 if (jj_3R_45()) { 1462 jj_scanpos = xsp; 1463 if (jj_3R_46()) { 1464 jj_scanpos = xsp; 1465 if (jj_3R_47()) { 1466 jj_scanpos = xsp; 1467 if (jj_3R_48()) { 1468 jj_scanpos = xsp; 1469 if (jj_3R_49()) return true; 1470 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1471 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1472 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1473 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1474 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1475 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1476 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1477 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1478 return false; 1479 } 1480 1481 final private boolean jj_3R_42() { 1482 if (jj_scan_token(BOOLEAN)) return true; 1483 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1484 return false; 1485 } 1486 1487 final private boolean jj_3_9() { 1488 if (jj_scan_token(LBRACKET)) return true; 1489 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1490 if (jj_scan_token(RBRACKET)) return true; 1491 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1492 return false; 1493 } 1494 1495 final private boolean jj_3R_121() { 1496 if (jj_3R_23()) return true; 1497 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1498 return false; 1499 } 1500 1501 final private boolean jj_3R_144() { 1502 if (jj_scan_token(SLASH)) return true; 1503 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1504 return false; 1505 } 1506 1507 final private boolean jj_3R_134() { 1508 if (jj_scan_token(INCR)) return true; 1509 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1510 if (jj_3R_20()) return true; 1511 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1512 return false; 1513 } 1514 1515 final private boolean jj_3R_114() { 1516 Token xsp; 1517 xsp = jj_scanpos; 1518 if (jj_3R_121()) { 1519 jj_scanpos = xsp; 1520 if (jj_3R_122()) return true; 1521 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1522 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1523 while (true) { 1524 xsp = jj_scanpos; 1525 if (jj_3R_123()) { jj_scanpos = xsp; break; } 1526 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1527 } 1528 return false; 1529 } 1530 1531 final private boolean jj_3R_120() { 1532 if (jj_scan_token(GE)) return true; 1533 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1534 return false; 1535 } 1536 1537 final private boolean jj_3R_133() { 1538 if (jj_scan_token(MINUS)) return true; 1539 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1540 return false; 1541 } 1542 1543 final private boolean jj_3R_127() { 1544 if (jj_3R_136()) return true; 1545 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1546 return false; 1547 } 1548 1549 final private boolean jj_3R_126() { 1550 if (jj_3R_135()) return true; 1551 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1552 return false; 1553 } 1554 1555 final private boolean jj_3R_139() { 1556 if (jj_scan_token(MINUS)) return true; 1557 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1558 return false; 1559 } 1560 1561 final private boolean jj_3R_125() { 1562 if (jj_3R_134()) return true; 1563 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1564 return false; 1565 } 1566 1567 final private boolean jj_3R_132() { 1568 if (jj_scan_token(PLUS)) return true; 1569 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1570 return false; 1571 } 1572 1573 final private boolean jj_3R_143() { 1574 if (jj_scan_token(STAR)) return true; 1575 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1576 return false; 1577 } 1578 1579 final private boolean jj_3R_124() { 1580 Token xsp; 1581 xsp = jj_scanpos; 1582 if (jj_3R_132()) { 1583 jj_scanpos = xsp; 1584 if (jj_3R_133()) return true; 1585 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1586 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1587 if (jj_3R_115()) return true; 1588 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1589 return false; 1590 } 1591 1592 final private boolean jj_3R_115() { 1593 Token xsp; 1594 xsp = jj_scanpos; 1595 if (jj_3R_124()) { 1596 jj_scanpos = xsp; 1597 if (jj_3R_125()) { 1598 jj_scanpos = xsp; 1599 if (jj_3R_126()) { 1600 jj_scanpos = xsp; 1601 if (jj_3R_127()) return true; 1602 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1603 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1604 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1605 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1606 return false; 1607 } 1608 1609 final private boolean jj_3R_137() { 1610 Token xsp; 1611 xsp = jj_scanpos; 1612 if (jj_3R_143()) { 1613 jj_scanpos = xsp; 1614 if (jj_3R_144()) { 1615 jj_scanpos = xsp; 1616 if (jj_3R_145()) return true; 1617 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1618 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1619 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1620 if (jj_3R_115()) return true; 1621 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1622 return false; 1623 } 1624 1625 final private boolean jj_3R_131() { 1626 if (jj_scan_token(RUNSIGNEDSHIFT)) return true; 1627 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1628 return false; 1629 } 1630 1631 final private boolean jj_3R_119() { 1632 if (jj_scan_token(LE)) return true; 1633 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1634 return false; 1635 } 1636 1637 final private boolean jj_3R_138() { 1638 if (jj_scan_token(PLUS)) return true; 1639 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1640 return false; 1641 } 1642 1643 final private boolean jj_3R_112() { 1644 if (jj_3R_115()) return true; 1645 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1646 Token xsp; 1647 while (true) { 1648 xsp = jj_scanpos; 1649 if (jj_3R_137()) { jj_scanpos = xsp; break; } 1650 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1651 } 1652 return false; 1653 } 1654 1655 final private boolean jj_3R_88() { 1656 if (jj_3R_86()) return true; 1657 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1658 return false; 1659 } 1660 1661 final private boolean jj_3R_130() { 1662 if (jj_scan_token(RSIGNEDSHIFT)) return true; 1663 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1664 return false; 1665 } 1666 1667 final private boolean jj_3R_128() { 1668 Token xsp; 1669 xsp = jj_scanpos; 1670 if (jj_3R_138()) { 1671 jj_scanpos = xsp; 1672 if (jj_3R_139()) return true; 1673 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1674 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1675 if (jj_3R_112()) return true; 1676 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1677 return false; 1678 } 1679 1680 final private boolean jj_3R_87() { 1681 if (jj_3R_82()) return true; 1682 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1683 return false; 1684 } 1685 1686 final private boolean jj_3R_118() { 1687 if (jj_scan_token(GT)) return true; 1688 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1689 return false; 1690 } 1691 1692 final private boolean jj_3R_129() { 1693 if (jj_scan_token(LSHIFT)) return true; 1694 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1695 return false; 1696 } 1697 1698 final private boolean jj_3R_116() { 1699 Token xsp; 1700 xsp = jj_scanpos; 1701 if (jj_3R_129()) { 1702 jj_scanpos = xsp; 1703 if (jj_3R_130()) { 1704 jj_scanpos = xsp; 1705 if (jj_3R_131()) return true; 1706 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1707 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1708 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1709 if (jj_3R_108()) return true; 1710 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1711 return false; 1712 } 1713 1714 final private boolean jj_3R_108() { 1715 if (jj_3R_112()) return true; 1716 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1717 Token xsp; 1718 while (true) { 1719 xsp = jj_scanpos; 1720 if (jj_3R_128()) { jj_scanpos = xsp; break; } 1721 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1722 } 1723 return false; 1724 } 1725 1726 final private boolean jj_3_8() { 1727 if (jj_scan_token(LBRACKET)) return true; 1728 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1729 if (jj_3R_25()) return true; 1730 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1731 if (jj_scan_token(RBRACKET)) return true; 1732 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1733 return false; 1734 } 1735 1736 final private boolean jj_3R_86() { 1737 Token xsp; 1738 if (jj_3_8()) return true; 1739 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1740 while (true) { 1741 xsp = jj_scanpos; 1742 if (jj_3_8()) { jj_scanpos = xsp; break; } 1743 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1744 } 1745 while (true) { 1746 xsp = jj_scanpos; 1747 if (jj_3_9()) { jj_scanpos = xsp; break; } 1748 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1749 } 1750 return false; 1751 } 1752 1753 final private boolean jj_3R_117() { 1754 if (jj_scan_token(LT)) return true; 1755 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1756 return false; 1757 } 1758 1759 final private boolean jj_3R_106() { 1760 if (jj_3R_108()) return true; 1761 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1762 Token xsp; 1763 while (true) { 1764 xsp = jj_scanpos; 1765 if (jj_3R_116()) { jj_scanpos = xsp; break; } 1766 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1767 } 1768 return false; 1769 } 1770 1771 final private boolean jj_3R_113() { 1772 Token xsp; 1773 xsp = jj_scanpos; 1774 if (jj_3R_117()) { 1775 jj_scanpos = xsp; 1776 if (jj_3R_118()) { 1777 jj_scanpos = xsp; 1778 if (jj_3R_119()) { 1779 jj_scanpos = xsp; 1780 if (jj_3R_120()) return true; 1781 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1782 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1783 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1784 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1785 if (jj_3R_106()) return true; 1786 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1787 return false; 1788 } 1789 1790 final private boolean jj_3R_111() { 1791 if (jj_scan_token(NE)) return true; 1792 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1793 return false; 1794 } 1795 1796 final private boolean jj_3R_109() { 1797 if (jj_scan_token(INSTANCEOF)) return true; 1798 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1799 if (jj_3R_114()) return true; 1800 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1801 return false; 1802 } 1803 1804 final private boolean jj_3R_104() { 1805 if (jj_3R_106()) return true; 1806 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1807 Token xsp; 1808 while (true) { 1809 xsp = jj_scanpos; 1810 if (jj_3R_113()) { jj_scanpos = xsp; break; } 1811 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1812 } 1813 return false; 1814 } 1815 1816 final private boolean jj_3R_81() { 1817 if (jj_scan_token(NEW)) return true; 1818 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1819 if (jj_3R_24()) return true; 1820 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1821 Token xsp; 1822 xsp = jj_scanpos; 1823 if (jj_3R_87()) { 1824 jj_scanpos = xsp; 1825 if (jj_3R_88()) return true; 1826 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1827 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1828 return false; 1829 } 1830 1831 final private boolean jj_3_7() { 1832 if (jj_scan_token(NEW)) return true; 1833 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1834 if (jj_3R_23()) return true; 1835 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1836 if (jj_3R_86()) return true; 1837 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1838 return false; 1839 } 1840 1841 final private boolean jj_3R_70() { 1842 Token xsp; 1843 xsp = jj_scanpos; 1844 if (jj_3_7()) { 1845 jj_scanpos = xsp; 1846 if (jj_3R_81()) return true; 1847 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1848 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1849 return false; 1850 } 1851 1852 final private boolean jj_3R_97() { 1853 if (jj_scan_token(COMMA)) return true; 1854 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1855 if (jj_3R_25()) return true; 1856 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1857 return false; 1858 } 1859 1860 final private boolean jj_3R_39() { 1861 if (jj_scan_token(ORASSIGN)) return true; 1862 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1863 return false; 1864 } 1865 1866 final private boolean jj_3R_110() { 1867 if (jj_scan_token(EQ)) return true; 1868 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1869 return false; 1870 } 1871 1872 final private boolean jj_3R_102() { 1873 if (jj_3R_104()) return true; 1874 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1875 Token xsp; 1876 xsp = jj_scanpos; 1877 if (jj_3R_109()) jj_scanpos = xsp; 1878 else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1879 return false; 1880 } 1881 1882 final private boolean jj_3R_107() { 1883 Token xsp; 1884 xsp = jj_scanpos; 1885 if (jj_3R_110()) { 1886 jj_scanpos = xsp; 1887 if (jj_3R_111()) return true; 1888 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1889 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1890 if (jj_3R_102()) return true; 1891 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1892 return false; 1893 } 1894 1895 final private boolean jj_3R_94() { 1896 if (jj_3R_25()) return true; 1897 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1898 Token xsp; 1899 while (true) { 1900 xsp = jj_scanpos; 1901 if (jj_3R_97()) { jj_scanpos = xsp; break; } 1902 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1903 } 1904 return false; 1905 } 1906 1907 final private boolean jj_3R_89() { 1908 if (jj_3R_94()) return true; 1909 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1910 return false; 1911 } 1912 1913 final private boolean jj_3R_38() { 1914 if (jj_scan_token(XORASSIGN)) return true; 1915 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1916 return false; 1917 } 1918 1919 final private boolean jj_3R_82() { 1920 if (jj_scan_token(LPAREN)) return true; 1921 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1922 Token xsp; 1923 xsp = jj_scanpos; 1924 if (jj_3R_89()) jj_scanpos = xsp; 1925 else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1926 if (jj_scan_token(RPAREN)) return true; 1927 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1928 return false; 1929 } 1930 1931 final private boolean jj_3R_105() { 1932 if (jj_scan_token(BIT_AND)) return true; 1933 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1934 if (jj_3R_100()) return true; 1935 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1936 return false; 1937 } 1938 1939 final private boolean jj_3R_100() { 1940 if (jj_3R_102()) return true; 1941 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1942 Token xsp; 1943 while (true) { 1944 xsp = jj_scanpos; 1945 if (jj_3R_107()) { jj_scanpos = xsp; break; } 1946 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1947 } 1948 return false; 1949 } 1950 1951 final private boolean jj_3R_37() { 1952 if (jj_scan_token(ANDASSIGN)) return true; 1953 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1954 return false; 1955 } 1956 1957 final private boolean jj_3R_85() { 1958 if (jj_scan_token(NULL)) return true; 1959 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1960 return false; 1961 } 1962 1963 final private boolean jj_3R_103() { 1964 if (jj_scan_token(XOR)) return true; 1965 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1966 if (jj_3R_98()) return true; 1967 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1968 return false; 1969 } 1970 1971 final private boolean jj_3R_98() { 1972 if (jj_3R_100()) return true; 1973 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1974 Token xsp; 1975 while (true) { 1976 xsp = jj_scanpos; 1977 if (jj_3R_105()) { jj_scanpos = xsp; break; } 1978 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1979 } 1980 return false; 1981 } 1982 1983 final private boolean jj_3R_92() { 1984 if (jj_scan_token(FALSE)) return true; 1985 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1986 return false; 1987 } 1988 1989 final private boolean jj_3R_36() { 1990 if (jj_scan_token(RUNSIGNEDSHIFTASSIGN)) return true; 1991 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1992 return false; 1993 } 1994 1995 final private boolean jj_3R_91() { 1996 if (jj_scan_token(TRUE)) return true; 1997 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 1998 return false; 1999 } 2000 2001 final private boolean jj_3R_84() { 2002 Token xsp; 2003 xsp = jj_scanpos; 2004 if (jj_3R_91()) { 2005 jj_scanpos = xsp; 2006 if (jj_3R_92()) return true; 2007 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2008 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2009 return false; 2010 } 2011 2012 final private boolean jj_3R_101() { 2013 if (jj_scan_token(BIT_OR)) return true; 2014 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2015 if (jj_3R_95()) return true; 2016 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2017 return false; 2018 } 2019 2020 final private boolean jj_3R_95() { 2021 if (jj_3R_98()) return true; 2022 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2023 Token xsp; 2024 while (true) { 2025 xsp = jj_scanpos; 2026 if (jj_3R_103()) { jj_scanpos = xsp; break; } 2027 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2028 } 2029 return false; 2030 } 2031 2032 final private boolean jj_3R_35() { 2033 if (jj_scan_token(RSIGNEDSHIFTASSIGN)) return true; 2034 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2035 return false; 2036 } 2037 2038 final private boolean jj_3R_80() { 2039 if (jj_3R_85()) return true; 2040 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2041 return false; 2042 } 2043 2044 final private boolean jj_3R_66() { 2045 if (jj_3R_69()) return true; 2046 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2047 return false; 2048 } 2049 2050 final private boolean jj_3R_79() { 2051 if (jj_3R_84()) return true; 2052 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2053 return false; 2054 } 2055 2056 final private boolean jj_3R_78() { 2057 if (jj_scan_token(STRING_LITERAL)) return true; 2058 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2059 return false; 2060 } 2061 2062 final private boolean jj_3R_99() { 2063 if (jj_scan_token(SC_AND)) return true; 2064 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2065 if (jj_3R_90()) return true; 2066 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2067 return false; 2068 } 2069 2070 final private boolean jj_3R_90() { 2071 if (jj_3R_95()) return true; 2072 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2073 Token xsp; 2074 while (true) { 2075 xsp = jj_scanpos; 2076 if (jj_3R_101()) { jj_scanpos = xsp; break; } 2077 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2078 } 2079 return false; 2080 } 2081 2082 final private boolean jj_3R_34() { 2083 if (jj_scan_token(LSHIFTASSIGN)) return true; 2084 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2085 return false; 2086 } 2087 2088 final private boolean jj_3R_65() { 2089 if (jj_scan_token(NEW)) return true; 2090 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2091 return false; 2092 } 2093 2094 final private boolean jj_3R_77() { 2095 if (jj_scan_token(CHARACTER_LITERAL)) return true; 2096 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2097 return false; 2098 } 2099 2100 final private boolean jj_3R_76() { 2101 if (jj_scan_token(FLOATING_POINT_LITERAL)) return true; 2102 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2103 return false; 2104 } 2105 2106 final private boolean jj_3R_33() { 2107 if (jj_scan_token(MINUSASSIGN)) return true; 2108 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2109 return false; 2110 } 2111 2112 final private boolean jj_3R_69() { 2113 Token xsp; 2114 xsp = jj_scanpos; 2115 if (jj_3R_75()) { 2116 jj_scanpos = xsp; 2117 if (jj_3R_76()) { 2118 jj_scanpos = xsp; 2119 if (jj_3R_77()) { 2120 jj_scanpos = xsp; 2121 if (jj_3R_78()) { 2122 jj_scanpos = xsp; 2123 if (jj_3R_79()) { 2124 jj_scanpos = xsp; 2125 if (jj_3R_80()) return true; 2126 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2127 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2128 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2129 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2130 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2131 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2132 return false; 2133 } 2134 2135 final private boolean jj_3R_75() { 2136 if (jj_scan_token(INTEGER_LITERAL)) return true; 2137 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2138 return false; 2139 } 2140 2141 final private boolean jj_3R_96() { 2142 if (jj_scan_token(SC_OR)) return true; 2143 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2144 if (jj_3R_83()) return true; 2145 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2146 return false; 2147 } 2148 2149 final private boolean jj_3R_83() { 2150 if (jj_3R_90()) return true; 2151 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2152 Token xsp; 2153 while (true) { 2154 xsp = jj_scanpos; 2155 if (jj_3R_99()) { jj_scanpos = xsp; break; } 2156 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2157 } 2158 return false; 2159 } 2160 2161 final private boolean jj_3R_64() { 2162 if (jj_scan_token(SUPER)) return true; 2163 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2164 return false; 2165 } 2166 2167 final private boolean jj_3R_32() { 2168 if (jj_scan_token(PLUSASSIGN)) return true; 2169 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2170 return false; 2171 } 2172 2173 final private boolean jj_3R_73() { 2174 if (jj_3R_82()) return true; 2175 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2176 return false; 2177 } 2178 2179 final private boolean jj_3R_72() { 2180 if (jj_scan_token(DOT)) return true; 2181 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2182 if (jj_scan_token(IDENTIFIER)) return true; 2183 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2184 return false; 2185 } 2186 2187 final private boolean jj_3R_74() { 2188 if (jj_3R_83()) return true; 2189 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2190 Token xsp; 2191 while (true) { 2192 xsp = jj_scanpos; 2193 if (jj_3R_96()) { jj_scanpos = xsp; break; } 2194 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2195 } 2196 return false; 2197 } 2198 2199 final private boolean jj_3R_63() { 2200 if (jj_scan_token(THIS)) return true; 2201 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2202 return false; 2203 } 2204 2205 final private boolean jj_3R_31() { 2206 if (jj_scan_token(REMASSIGN)) return true; 2207 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2208 return false; 2209 } 2210 2211 final private boolean jj_3R_58() { 2212 Token xsp; 2213 xsp = jj_scanpos; 2214 if (jj_3R_71()) { 2215 jj_scanpos = xsp; 2216 if (jj_3R_72()) { 2217 jj_scanpos = xsp; 2218 if (jj_3R_73()) return true; 2219 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2220 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2221 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2222 return false; 2223 } 2224 2225 final private boolean jj_3R_71() { 2226 if (jj_scan_token(LBRACKET)) return true; 2227 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2228 if (jj_3R_25()) return true; 2229 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2230 if (jj_scan_token(RBRACKET)) return true; 2231 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2232 return false; 2233 } 2234 2235 final private boolean jj_3R_93() { 2236 if (jj_scan_token(HOOK)) return true; 2237 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2238 if (jj_3R_25()) return true; 2239 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2240 if (jj_scan_token(COLON)) return true; 2241 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2242 if (jj_3R_68()) return true; 2243 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2244 return false; 2245 } 2246 2247 final private boolean jj_3R_57() { 2248 if (jj_3R_70()) return true; 2249 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2250 return false; 2251 } 2252 2253 final private boolean jj_3R_30() { 2254 if (jj_scan_token(SLASHASSIGN)) return true; 2255 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2256 return false; 2257 } 2258 2259 final private boolean jj_3R_27() { 2260 if (jj_3R_58()) return true; 2261 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2262 return false; 2263 } 2264 2265 final private boolean jj_3R_56() { 2266 if (jj_scan_token(LPAREN)) return true; 2267 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2268 if (jj_3R_25()) return true; 2269 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2270 if (jj_scan_token(RPAREN)) return true; 2271 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2272 return false; 2273 } 2274 2275 final private boolean jj_3R_152() { 2276 if (jj_scan_token(LBRACKET)) return true; 2277 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2278 if (jj_scan_token(RBRACKET)) return true; 2279 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2280 return false; 2281 } 2282 2283 final private boolean jj_3R_55() { 2284 if (jj_scan_token(SUPER)) return true; 2285 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2286 if (jj_scan_token(DOT)) return true; 2287 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2288 if (jj_scan_token(IDENTIFIER)) return true; 2289 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2290 return false; 2291 } 2292 2293 final private boolean jj_3R_29() { 2294 if (jj_scan_token(STARASSIGN)) return true; 2295 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2296 return false; 2297 } 2298 2299 final private boolean jj_3R_68() { 2300 if (jj_3R_74()) return true; 2301 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2302 Token xsp; 2303 xsp = jj_scanpos; 2304 if (jj_3R_93()) jj_scanpos = xsp; 2305 else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2306 return false; 2307 } 2308 2309 final private boolean jj_3R_54() { 2310 if (jj_scan_token(THIS)) return true; 2311 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2312 return false; 2313 } 2314 2315 final private boolean jj_3R_62() { 2316 if (jj_scan_token(IDENTIFIER)) return true; 2317 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2318 return false; 2319 } 2320 2321 final private boolean jj_3R_53() { 2322 if (jj_3R_24()) return true; 2323 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2324 return false; 2325 } 2326 2327 final private boolean jj_3R_153() { 2328 if (jj_scan_token(LBRACKET)) return true; 2329 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2330 if (jj_scan_token(RBRACKET)) return true; 2331 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2332 return false; 2333 } 2334 2335 final private boolean jj_3R_26() { 2336 Token xsp; 2337 xsp = jj_scanpos; 2338 if (jj_3R_52()) { 2339 jj_scanpos = xsp; 2340 if (jj_3R_53()) { 2341 jj_scanpos = xsp; 2342 if (jj_3R_54()) { 2343 jj_scanpos = xsp; 2344 if (jj_3R_55()) { 2345 jj_scanpos = xsp; 2346 if (jj_3R_56()) { 2347 jj_scanpos = xsp; 2348 if (jj_3R_57()) return true; 2349 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2350 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2351 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2352 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2353 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2354 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2355 return false; 2356 } 2357 2358 final private boolean jj_3R_52() { 2359 if (jj_3R_69()) return true; 2360 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2361 return false; 2362 } 2363 2364 final private boolean jj_3R_21() { 2365 Token xsp; 2366 xsp = jj_scanpos; 2367 if (jj_3R_28()) { 2368 jj_scanpos = xsp; 2369 if (jj_3R_29()) { 2370 jj_scanpos = xsp; 2371 if (jj_3R_30()) { 2372 jj_scanpos = xsp; 2373 if (jj_3R_31()) { 2374 jj_scanpos = xsp; 2375 if (jj_3R_32()) { 2376 jj_scanpos = xsp; 2377 if (jj_3R_33()) { 2378 jj_scanpos = xsp; 2379 if (jj_3R_34()) { 2380 jj_scanpos = xsp; 2381 if (jj_3R_35()) { 2382 jj_scanpos = xsp; 2383 if (jj_3R_36()) { 2384 jj_scanpos = xsp; 2385 if (jj_3R_37()) { 2386 jj_scanpos = xsp; 2387 if (jj_3R_38()) { 2388 jj_scanpos = xsp; 2389 if (jj_3R_39()) return true; 2390 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2391 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2392 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2393 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2394 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2395 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2396 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2397 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2398 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2399 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2400 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2401 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2402 return false; 2403 } 2404 2405 final private boolean jj_3R_28() { 2406 if (jj_scan_token(ASSIGN)) return true; 2407 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2408 return false; 2409 } 2410 2411 final private boolean jj_3R_61() { 2412 if (jj_scan_token(LPAREN)) return true; 2413 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2414 return false; 2415 } 2416 2417 final private boolean jj_3_2() { 2418 if (jj_3R_20()) return true; 2419 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2420 if (jj_3R_21()) return true; 2421 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2422 return false; 2423 } 2424 2425 final private boolean jj_3R_20() { 2426 if (jj_3R_26()) return true; 2427 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2428 Token xsp; 2429 while (true) { 2430 xsp = jj_scanpos; 2431 if (jj_3R_27()) { jj_scanpos = xsp; break; } 2432 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2433 } 2434 return false; 2435 } 2436 2437 final private boolean jj_3R_60() { 2438 if (jj_scan_token(BANG)) return true; 2439 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2440 return false; 2441 } 2442 2443 final private boolean jj_3R_155() { 2444 if (jj_scan_token(DECR)) return true; 2445 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2446 return false; 2447 } 2448 2449 final private boolean jj_3R_67() { 2450 if (jj_3R_20()) return true; 2451 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2452 if (jj_3R_21()) return true; 2453 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2454 if (jj_3R_25()) return true; 2455 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2456 return false; 2457 } 2458 2459 final private boolean jj_3R_150() { 2460 if (jj_scan_token(LPAREN)) return true; 2461 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2462 if (jj_3R_24()) return true; 2463 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2464 Token xsp; 2465 while (true) { 2466 xsp = jj_scanpos; 2467 if (jj_3R_153()) { jj_scanpos = xsp; break; } 2468 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2469 } 2470 if (jj_scan_token(RPAREN)) return true; 2471 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2472 if (jj_3R_136()) return true; 2473 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2474 return false; 2475 } 2476 2477 final private boolean jj_3R_59() { 2478 if (jj_scan_token(TILDE)) return true; 2479 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2480 return false; 2481 } 2482 2483 final private boolean jj_3R_51() { 2484 if (jj_3R_68()) return true; 2485 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; 2486 return false; 2487 } 2488 2489 public ExpressionParserTokenManager token_source; 2490 ASCII_UCodeESC_CharStream jj_input_stream; 2491 public Token token, jj_nt; 2492 private int jj_ntk; 2493 private Token jj_scanpos, jj_lastpos; 2494 private int jj_la; 2495 public boolean lookingAhead = false; 2496 private boolean jj_semLA; 2497 private int jj_gen; 2498 final private int[] jj_la1 = new int[44]; 2499 final private int[] jj_la1_0 = {0x8209400,0x0,0x8209400,0x0,0x1000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1000000,0x0,0x0,0x1000000,0x1000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1000000,0x0,0x1000000,0x1000000,0x1000000,0x0,0x0,0x0,}; 2500 final private int[] jj_la1_1 = {0x2014,0x0,0x2014,0x0,0x884480c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x884480c0,0x0,0x0,0x884480c0,0x884480c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x884480c0,0x0,0x88400080,0x400000,0x884480c0,0x0,0x0,0x40,}; 2501 final private int[] jj_la1_2 = {0x8,0x400,0x0,0x2000,0xf00c004e,0x8000,0x100000,0x4000000,0x8000000,0x0,0x0,0x0,0x2400000,0x2400000,0x0,0x1830000,0x1830000,0x0,0x0,0xc0000000,0xc0000000,0x0,0x0,0xc0000000,0xf00c004e,0xc0000,0xc0000,0x4e,0xc004e,0x40,0x30000000,0x30000000,0x400,0x400,0x40,0x4440,0x4e,0x4440,0x6,0x0,0xf00c004e,0x2000,0x440,0x0,}; 2502 final private int[] jj_la1_3 = {0x0,0x0,0x0,0x0,0x0,0xffe00,0x0,0x0,0x0,0x8,0x10,0x4,0x0,0x0,0x0,0x0,0x0,0x1c0,0x1c0,0x0,0x0,0x23,0x23,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,}; 2503 final private JJExpressionParserCalls[] jj_2_rtns = new JJExpressionParserCalls[9]; 2504 private boolean jj_rescan = false; 2505 private int jj_gc = 0; 2506 2507 public ExpressionParser(java.io.InputStream stream) { 2508 jj_input_stream = new ASCII_UCodeESC_CharStream(stream, 1, 1); 2509 token_source = new ExpressionParserTokenManager(jj_input_stream); 2510 token = new Token(); 2511 jj_ntk = -1; 2512 jj_gen = 0; 2513 for (int i = 0; i < 44; i++) jj_la1[i] = -1; 2514 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJExpressionParserCalls(); 2515 } 2516 2517 public void ReInit(java.io.InputStream stream) { 2518 jj_input_stream.ReInit(stream, 1, 1); 2519 token_source.ReInit(jj_input_stream); 2520 token = new Token(); 2521 jj_ntk = -1; 2522 jj_gen = 0; 2523 for (int i = 0; i < 44; i++) jj_la1[i] = -1; 2524 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJExpressionParserCalls(); 2525 } 2526 2527 public ExpressionParser(ExpressionParserTokenManager tm) { 2528 token_source = tm; 2529 token = new Token(); 2530 jj_ntk = -1; 2531 jj_gen = 0; 2532 for (int i = 0; i < 44; i++) jj_la1[i] = -1; 2533 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJExpressionParserCalls(); 2534 } 2535 2536 public void ReInit(ExpressionParserTokenManager tm) { 2537 token_source = tm; 2538 token = new Token(); 2539 jj_ntk = -1; 2540 jj_gen = 0; 2541 for (int i = 0; i < 44; i++) jj_la1[i] = -1; 2542 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJExpressionParserCalls(); 2543 } 2544 2545 final private Token jj_consume_token(int kind) throws ParseException { 2546 Token oldToken; 2547 if ((oldToken = token).next != null) token = token.next; 2548 else token = token.next = token_source.getNextToken(); 2549 jj_ntk = -1; 2550 if (token.kind == kind) { 2551 jj_gen++; 2552 if (++jj_gc > 100) { 2553 jj_gc = 0; 2554 for (int i = 0; i < jj_2_rtns.length; i++) { 2555 JJExpressionParserCalls c = jj_2_rtns[i]; 2556 while (c != null) { 2557 if (c.gen < jj_gen) c.first = null; 2558 c = c.next; 2559 } 2560 } 2561 } 2562 return token; 2563 } 2564 token = oldToken; 2565 jj_kind = kind; 2566 throw generateParseException(); 2567 } 2568 2569 final private boolean jj_scan_token(int kind) { 2570 if (jj_scanpos == jj_lastpos) { 2571 jj_la--; 2572 if (jj_scanpos.next == null) { 2573 jj_lastpos = jj_scanpos = jj_scanpos.next = token_source.getNextToken(); 2574 } else { 2575 jj_lastpos = jj_scanpos = jj_scanpos.next; 2576 } 2577 } else { 2578 jj_scanpos = jj_scanpos.next; 2579 } 2580 if (jj_rescan) { 2581 int i = 0; Token tok = token; 2582 while (tok != null && tok != jj_scanpos) { i++; tok = tok.next; } 2583 if (tok != null) jj_add_error_token(kind, i); 2584 } 2585 return (jj_scanpos.kind != kind); 2586 } 2587 2588 final public Token getNextToken() { 2589 if (token.next != null) token = token.next; 2590 else token = token.next = token_source.getNextToken(); 2591 jj_ntk = -1; 2592 jj_gen++; 2593 return token; 2594 } 2595 2596 final public Token getToken(int index) { 2597 Token t = lookingAhead ? jj_scanpos : token; 2598 for (int i = 0; i < index; i++) { 2599 if (t.next != null) t = t.next; 2600 else t = t.next = token_source.getNextToken(); 2601 } 2602 return t; 2603 } 2604 2605 final private int jj_ntk() { 2606 if ((jj_nt=token.next) == null) 2607 return (jj_ntk = (token.next=token_source.getNextToken()).kind); 2608 else 2609 return (jj_ntk = jj_nt.kind); 2610 } 2611 2612 private java.util.Vector jj_expentries = new java.util.Vector (); 2613 private int[] jj_expentry; 2614 private int jj_kind = -1; 2615 private int[] jj_lasttokens = new int[100]; 2616 private int jj_endpos; 2617 2618 private void jj_add_error_token(int kind, int pos) { 2619 if (pos >= 100) return; 2620 if (pos == jj_endpos + 1) { 2621 jj_lasttokens[jj_endpos++] = kind; 2622 } else if (jj_endpos != 0) { 2623 jj_expentry = new int[jj_endpos]; 2624 for (int i = 0; i < jj_endpos; i++) { 2625 jj_expentry[i] = jj_lasttokens[i]; 2626 } 2627 boolean exists = false; 2628 for (java.util.Enumeration enum_ = jj_expentries.elements(); enum_.hasMoreElements();) { 2629 int[] oldentry = (int[])(enum_.nextElement()); 2630 if (oldentry.length == jj_expentry.length) { 2631 exists = true; 2632 for (int i = 0; i < jj_expentry.length; i++) { 2633 if (oldentry[i] != jj_expentry[i]) { 2634 exists = false; 2635 break; 2636 } 2637 } 2638 if (exists) break; 2639 } 2640 } 2641 if (!exists) jj_expentries.addElement(jj_expentry); 2642 if (pos != 0) jj_lasttokens[(jj_endpos = pos) - 1] = kind; 2643 } 2644 } 2645 2646 final public ParseException generateParseException() { 2647 jj_expentries.removeAllElements(); 2648 boolean[] la1tokens = new boolean[116]; 2649 for (int i = 0; i < 116; i++) { 2650 la1tokens[i] = false; 2651 } 2652 if (jj_kind >= 0) { 2653 la1tokens[jj_kind] = true; 2654 jj_kind = -1; 2655 } 2656 for (int i = 0; i < 44; i++) { 2657 if (jj_la1[i] == jj_gen) { 2658 for (int j = 0; j < 32; j++) { 2659 if ((jj_la1_0[i] & (1<<j)) != 0) { 2660 la1tokens[j] = true; 2661 } 2662 if ((jj_la1_1[i] & (1<<j)) != 0) { 2663 la1tokens[32+j] = true; 2664 } 2665 if ((jj_la1_2[i] & (1<<j)) != 0) { 2666 la1tokens[64+j] = true; 2667 } 2668 if ((jj_la1_3[i] & (1<<j)) != 0) { 2669 la1tokens[96+j] = true; 2670 } 2671 } 2672 } 2673 } 2674 for (int i = 0; i < 116; i++) { 2675 if (la1tokens[i]) { 2676 jj_expentry = new int[1]; 2677 jj_expentry[0] = i; 2678 jj_expentries.addElement(jj_expentry); 2679 } 2680 } 2681 jj_endpos = 0; 2682 jj_rescan_token(); 2683 jj_add_error_token(0, 0); 2684 int[][] exptokseq = new int[jj_expentries.size()][]; 2685 for (int i = 0; i < jj_expentries.size(); i++) { 2686 exptokseq[i] = (int[])jj_expentries.elementAt(i); 2687 } 2688 return new ParseException(token, exptokseq, tokenImage); 2689 } 2690 2691 final public void enable_tracing() { 2692 } 2693 2694 final public void disable_tracing() { 2695 } 2696 2697 final private void jj_rescan_token() { 2698 jj_rescan = true; 2699 for (int i = 0; i < 9; i++) { 2700 JJExpressionParserCalls p = jj_2_rtns[i]; 2701 do { 2702 if (p.gen > jj_gen) { 2703 jj_la = p.arg; jj_lastpos = jj_scanpos = p.first; 2704 switch (i) { 2705 case 0: jj_3_1(); break; 2706 case 1: jj_3_2(); break; 2707 case 2: jj_3_3(); break; 2708 case 3: jj_3_4(); break; 2709 case 4: jj_3_5(); break; 2710 case 5: jj_3_6(); break; 2711 case 6: jj_3_7(); break; 2712 case 7: jj_3_8(); break; 2713 case 8: jj_3_9(); break; 2714 } 2715 } 2716 p = p.next; 2717 } while (p != null); 2718 } 2719 jj_rescan = false; 2720 } 2721 2722 final private void jj_save(int index, int xla) { 2723 JJExpressionParserCalls p = jj_2_rtns[index]; 2724 while (p.gen > jj_gen) { 2725 if (p.next == null) { p = p.next = new JJExpressionParserCalls(); break; } 2726 p = p.next; 2727 } 2728 p.gen = jj_gen + xla - jj_la; p.first = token; p.arg = xla; 2729 } 2730 2731} 2732 2733final class JJExpressionParserCalls { 2734 int gen; 2735 Token first; 2736 int arg; 2737 JJExpressionParserCalls next; 2738} 2739 | Popular Tags |