001// $ANTLR 2.7.7 (20060906): "java.g" -> "GeneratedJavaRecognizer.java"$ 002 003package com.puppycrawl.tools.checkstyle.grammars; 004 005import com.puppycrawl.tools.checkstyle.api.DetailAST; 006import java.text.MessageFormat; 007import antlr.CommonHiddenStreamToken; 008 009import antlr.TokenBuffer; 010import antlr.TokenStreamException; 011import antlr.TokenStreamIOException; 012import antlr.ANTLRException; 013import antlr.LLkParser; 014import antlr.Token; 015import antlr.TokenStream; 016import antlr.RecognitionException; 017import antlr.NoViableAltException; 018import antlr.MismatchedTokenException; 019import antlr.SemanticException; 020import antlr.ParserSharedInputState; 021import antlr.collections.impl.BitSet; 022import antlr.collections.AST; 023import java.util.Hashtable; 024import antlr.ASTFactory; 025import antlr.ASTPair; 026import antlr.collections.impl.ASTArray; 027 028/** Java 1.5 Recognizer 029 * 030 * This grammar is in the PUBLIC DOMAIN 031 */ 032public class GeneratedJavaRecognizer extends antlr.LLkParser implements GeneratedJavaTokenTypes 033 { 034 035 /** 036 * Counts the number of LT seen in the typeArguments production. 037 * It is used in semantic predicates to ensure we have seen 038 * enough closing '>' characters; which actually may have been 039 * either GT, SR or BSR tokens. 040 */ 041 private int ltCounter = 0; 042 043 /** 044 * Counts the number of '>' characters that have been seen but 045 * have not yet been associated with the end of a typeParameters or 046 * typeArguments production. This is necessary because SR and BSR 047 * tokens have significance (the extra '>' characters) not only for the production 048 * that sees them but also productions higher in the stack (possibly right up to an outer-most 049 * typeParameters production). As the stack of the typeArguments/typeParameters productions 050 * unwind, any '>' characters seen prematurely through SRs or BSRs are reconciled. 051 */ 052 private int gtToReconcile = 0; 053 054 /** 055 * The most recently seen gt sequence (GT, SR or BSR) 056 * encountered in any type argument or type parameter production. 057 * We retain this so we can keep manage the synthetic GT tokens/ 058 * AST nodes we emit to have '<' & '>' balanced trees when encountering 059 * SR and BSR tokens. 060 */ 061 private DetailAST currentGtSequence = null; 062 063 /** 064 * Consume a sequence of '>' characters (GT, SR or BSR) 065 * and match these against the '<' characters seen. 066 */ 067 private void consumeCurrentGtSequence(DetailAST gtSequence) 068 { 069 currentGtSequence = gtSequence; 070 gtToReconcile += currentGtSequence.getText().length(); 071 ltCounter -= currentGtSequence.getText().length(); 072 } 073 074 /** 075 * Emits a single GT AST node with the line and column correctly 076 * set to its position in the source file. This must only 077 * ever be called when a typeParameters or typeArguments production 078 * is ending and there is at least one GT character to be emitted. 079 * 080 * @see #areThereGtsToEmit 081 */ 082 private DetailAST emitSingleGt() 083 { 084 gtToReconcile -= 1; 085 CommonHiddenStreamToken gtToken = new CommonHiddenStreamToken(GENERIC_END, ">"); 086 gtToken.setLine(currentGtSequence.getLineNo()); 087 gtToken.setColumn(currentGtSequence.getColumnNo() 088 + (currentGtSequence.getText().length() - gtToReconcile)); 089 return (DetailAST)astFactory.create(gtToken); 090 } 091 092 /** 093 * @return true if there is at least one '>' seen but 094 * not reconciled with the end of a typeParameters or 095 * typeArguments production; returns false otherwise 096 */ 097 private boolean areThereGtsToEmit() 098 { 099 return (gtToReconcile > 0); 100 } 101 102 /** 103 * @return true if there is exactly one '>' seen but 104 * not reconciled with the end of a typeParameters 105 * production; returns false otherwise 106 */ 107 private boolean isThereASingleGtToEmit() 108 { 109 return (gtToReconcile == 1); 110 } 111 112 /** 113 * @return true if the '<' and '>' are evenly matched 114 * at the current typeParameters/typeArguments nested depth 115 */ 116 private boolean areLtsAndGtsBalanced(int currentLtLevel) 117 { 118 return ((currentLtLevel != 0) || ltCounter == currentLtLevel); 119 } 120 121protected GeneratedJavaRecognizer(TokenBuffer tokenBuf, int k) { 122 super(tokenBuf,k); 123 tokenNames = _tokenNames; 124 buildTokenTypeASTClassMap(); 125 astFactory = new ASTFactory(getTokenTypeToASTClassMap()); 126} 127 128public GeneratedJavaRecognizer(TokenBuffer tokenBuf) { 129 this(tokenBuf,2); 130} 131 132protected GeneratedJavaRecognizer(TokenStream lexer, int k) { 133 super(lexer,k); 134 tokenNames = _tokenNames; 135 buildTokenTypeASTClassMap(); 136 astFactory = new ASTFactory(getTokenTypeToASTClassMap()); 137} 138 139public GeneratedJavaRecognizer(TokenStream lexer) { 140 this(lexer,2); 141} 142 143public GeneratedJavaRecognizer(ParserSharedInputState state) { 144 super(state,2); 145 tokenNames = _tokenNames; 146 buildTokenTypeASTClassMap(); 147 astFactory = new ASTFactory(getTokenTypeToASTClassMap()); 148} 149 150 public final void compilationUnit() throws RecognitionException, TokenStreamException { 151 152 returnAST = null; 153 ASTPair currentAST = new ASTPair(); 154 AST compilationUnit_AST = null; 155 156 { 157 boolean synPredMatched4 = false; 158 if (((LA(1)==LITERAL_package||LA(1)==AT) && (LA(2)==IDENT))) { 159 int _m4 = mark(); 160 synPredMatched4 = true; 161 inputState.guessing++; 162 try { 163 { 164 annotations(); 165 match(LITERAL_package); 166 } 167 } 168 catch (RecognitionException pe) { 169 synPredMatched4 = false; 170 } 171 rewind(_m4); 172inputState.guessing--; 173 } 174 if ( synPredMatched4 ) { 175 packageDefinition(); 176 astFactory.addASTChild(currentAST, returnAST); 177 } 178 else if ((_tokenSet_0.member(LA(1))) && (_tokenSet_1.member(LA(2)))) { 179 } 180 else { 181 throw new NoViableAltException(LT(1), getFilename()); 182 } 183 184 } 185 { 186 _loop6: 187 do { 188 if ((LA(1)==SEMI||LA(1)==LITERAL_import) && (_tokenSet_1.member(LA(2)))) { 189 importDefinition(); 190 astFactory.addASTChild(currentAST, returnAST); 191 } 192 else { 193 break _loop6; 194 } 195 196 } while (true); 197 } 198 { 199 _loop8: 200 do { 201 if ((_tokenSet_2.member(LA(1)))) { 202 typeDefinition(); 203 astFactory.addASTChild(currentAST, returnAST); 204 } 205 else { 206 break _loop8; 207 } 208 209 } while (true); 210 } 211 match(Token.EOF_TYPE); 212 compilationUnit_AST = (AST)currentAST.root; 213 returnAST = compilationUnit_AST; 214 } 215 216 public final void annotations() throws RecognitionException, TokenStreamException { 217 218 returnAST = null; 219 ASTPair currentAST = new ASTPair(); 220 AST annotations_AST = null; 221 222 { 223 _loop68: 224 do { 225 if ((LA(1)==AT) && (LA(2)==IDENT)) { 226 annotation(); 227 astFactory.addASTChild(currentAST, returnAST); 228 } 229 else { 230 break _loop68; 231 } 232 233 } while (true); 234 } 235 if ( inputState.guessing==0 ) { 236 annotations_AST = (AST)currentAST.root; 237 annotations_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(ANNOTATIONS,"ANNOTATIONS")).add(annotations_AST)); 238 currentAST.root = annotations_AST; 239 currentAST.child = annotations_AST!=null &&annotations_AST.getFirstChild()!=null ? 240 annotations_AST.getFirstChild() : annotations_AST; 241 currentAST.advanceChildToEnd(); 242 } 243 annotations_AST = (AST)currentAST.root; 244 returnAST = annotations_AST; 245 } 246 247 public final void packageDefinition() throws RecognitionException, TokenStreamException { 248 249 returnAST = null; 250 ASTPair currentAST = new ASTPair(); 251 AST packageDefinition_AST = null; 252 Token p = null; 253 AST p_AST = null; 254 255 try { // for error handling 256 annotations(); 257 astFactory.addASTChild(currentAST, returnAST); 258 p = LT(1); 259 p_AST = astFactory.create(p); 260 astFactory.makeASTRoot(currentAST, p_AST); 261 match(LITERAL_package); 262 if ( inputState.guessing==0 ) { 263 p_AST.setType(PACKAGE_DEF); 264 } 265 identifier(); 266 astFactory.addASTChild(currentAST, returnAST); 267 AST tmp2_AST = null; 268 tmp2_AST = astFactory.create(LT(1)); 269 astFactory.addASTChild(currentAST, tmp2_AST); 270 match(SEMI); 271 packageDefinition_AST = (AST)currentAST.root; 272 } 273 catch (RecognitionException ex) { 274 if (inputState.guessing==0) { 275 reportError(ex); 276 recover(ex,_tokenSet_0); 277 } else { 278 throw ex; 279 } 280 } 281 returnAST = packageDefinition_AST; 282 } 283 284 public final void importDefinition() throws RecognitionException, TokenStreamException { 285 286 returnAST = null; 287 ASTPair currentAST = new ASTPair(); 288 AST importDefinition_AST = null; 289 Token i = null; 290 AST i_AST = null; 291 292 try { // for error handling 293 switch ( LA(1)) { 294 case LITERAL_import: 295 { 296 i = LT(1); 297 i_AST = astFactory.create(i); 298 astFactory.makeASTRoot(currentAST, i_AST); 299 match(LITERAL_import); 300 if ( inputState.guessing==0 ) { 301 i_AST.setType(IMPORT); 302 } 303 { 304 switch ( LA(1)) { 305 case LITERAL_static: 306 { 307 AST tmp3_AST = null; 308 tmp3_AST = astFactory.create(LT(1)); 309 astFactory.addASTChild(currentAST, tmp3_AST); 310 match(LITERAL_static); 311 if ( inputState.guessing==0 ) { 312 i_AST.setType(STATIC_IMPORT); 313 } 314 break; 315 } 316 case IDENT: 317 { 318 break; 319 } 320 default: 321 { 322 throw new NoViableAltException(LT(1), getFilename()); 323 } 324 } 325 } 326 identifierStar(); 327 astFactory.addASTChild(currentAST, returnAST); 328 AST tmp4_AST = null; 329 tmp4_AST = astFactory.create(LT(1)); 330 astFactory.addASTChild(currentAST, tmp4_AST); 331 match(SEMI); 332 importDefinition_AST = (AST)currentAST.root; 333 break; 334 } 335 case SEMI: 336 { 337 AST tmp5_AST = null; 338 tmp5_AST = astFactory.create(LT(1)); 339 astFactory.addASTChild(currentAST, tmp5_AST); 340 match(SEMI); 341 importDefinition_AST = (AST)currentAST.root; 342 break; 343 } 344 default: 345 { 346 throw new NoViableAltException(LT(1), getFilename()); 347 } 348 } 349 } 350 catch (RecognitionException ex) { 351 if (inputState.guessing==0) { 352 reportError(ex); 353 recover(ex,_tokenSet_0); 354 } else { 355 throw ex; 356 } 357 } 358 returnAST = importDefinition_AST; 359 } 360 361 public final void typeDefinition() throws RecognitionException, TokenStreamException { 362 363 returnAST = null; 364 ASTPair currentAST = new ASTPair(); 365 AST typeDefinition_AST = null; 366 AST m_AST = null; 367 368 try { // for error handling 369 switch ( LA(1)) { 370 case FINAL: 371 case ABSTRACT: 372 case STRICTFP: 373 case LITERAL_private: 374 case LITERAL_public: 375 case LITERAL_protected: 376 case LITERAL_static: 377 case LITERAL_transient: 378 case LITERAL_native: 379 case LITERAL_synchronized: 380 case LITERAL_volatile: 381 case LITERAL_class: 382 case LITERAL_interface: 383 case LITERAL_default: 384 case ENUM: 385 case AT: 386 { 387 modifiers(); 388 m_AST = (AST)returnAST; 389 typeDefinitionInternal(m_AST); 390 astFactory.addASTChild(currentAST, returnAST); 391 typeDefinition_AST = (AST)currentAST.root; 392 break; 393 } 394 case SEMI: 395 { 396 AST tmp6_AST = null; 397 tmp6_AST = astFactory.create(LT(1)); 398 astFactory.addASTChild(currentAST, tmp6_AST); 399 match(SEMI); 400 typeDefinition_AST = (AST)currentAST.root; 401 break; 402 } 403 default: 404 { 405 throw new NoViableAltException(LT(1), getFilename()); 406 } 407 } 408 } 409 catch (RecognitionException ex) { 410 if (inputState.guessing==0) { 411 reportError(ex); 412 recover(ex,_tokenSet_3); 413 } else { 414 throw ex; 415 } 416 } 417 returnAST = typeDefinition_AST; 418 } 419 420 public final void identifier() throws RecognitionException, TokenStreamException { 421 422 returnAST = null; 423 ASTPair currentAST = new ASTPair(); 424 AST identifier_AST = null; 425 426 AST tmp7_AST = null; 427 tmp7_AST = astFactory.create(LT(1)); 428 astFactory.addASTChild(currentAST, tmp7_AST); 429 match(IDENT); 430 { 431 _loop54: 432 do { 433 if ((LA(1)==DOT) && (LA(2)==IDENT)) { 434 AST tmp8_AST = null; 435 tmp8_AST = astFactory.create(LT(1)); 436 astFactory.makeASTRoot(currentAST, tmp8_AST); 437 match(DOT); 438 AST tmp9_AST = null; 439 tmp9_AST = astFactory.create(LT(1)); 440 astFactory.addASTChild(currentAST, tmp9_AST); 441 match(IDENT); 442 } 443 else { 444 break _loop54; 445 } 446 447 } while (true); 448 } 449 identifier_AST = (AST)currentAST.root; 450 returnAST = identifier_AST; 451 } 452 453 public final void identifierStar() throws RecognitionException, TokenStreamException { 454 455 returnAST = null; 456 ASTPair currentAST = new ASTPair(); 457 AST identifierStar_AST = null; 458 459 AST tmp10_AST = null; 460 tmp10_AST = astFactory.create(LT(1)); 461 astFactory.addASTChild(currentAST, tmp10_AST); 462 match(IDENT); 463 { 464 _loop57: 465 do { 466 if ((LA(1)==DOT) && (LA(2)==IDENT)) { 467 AST tmp11_AST = null; 468 tmp11_AST = astFactory.create(LT(1)); 469 astFactory.makeASTRoot(currentAST, tmp11_AST); 470 match(DOT); 471 AST tmp12_AST = null; 472 tmp12_AST = astFactory.create(LT(1)); 473 astFactory.addASTChild(currentAST, tmp12_AST); 474 match(IDENT); 475 } 476 else { 477 break _loop57; 478 } 479 480 } while (true); 481 } 482 { 483 switch ( LA(1)) { 484 case DOT: 485 { 486 AST tmp13_AST = null; 487 tmp13_AST = astFactory.create(LT(1)); 488 astFactory.makeASTRoot(currentAST, tmp13_AST); 489 match(DOT); 490 AST tmp14_AST = null; 491 tmp14_AST = astFactory.create(LT(1)); 492 astFactory.addASTChild(currentAST, tmp14_AST); 493 match(STAR); 494 break; 495 } 496 case SEMI: 497 { 498 break; 499 } 500 default: 501 { 502 throw new NoViableAltException(LT(1), getFilename()); 503 } 504 } 505 } 506 identifierStar_AST = (AST)currentAST.root; 507 returnAST = identifierStar_AST; 508 } 509 510 public final void modifiers() throws RecognitionException, TokenStreamException { 511 512 returnAST = null; 513 ASTPair currentAST = new ASTPair(); 514 AST modifiers_AST = null; 515 516 { 517 _loop61: 518 do { 519 if ((_tokenSet_4.member(LA(1)))) { 520 modifier(); 521 astFactory.addASTChild(currentAST, returnAST); 522 } 523 else if (((LA(1)==AT) && (LA(2)==IDENT))&&(LA(1)==AT && !LT(2).getText().equals("interface"))) { 524 annotation(); 525 astFactory.addASTChild(currentAST, returnAST); 526 } 527 else { 528 break _loop61; 529 } 530 531 } while (true); 532 } 533 if ( inputState.guessing==0 ) { 534 modifiers_AST = (AST)currentAST.root; 535 modifiers_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(MODIFIERS,"MODIFIERS")).add(modifiers_AST)); 536 currentAST.root = modifiers_AST; 537 currentAST.child = modifiers_AST!=null &&modifiers_AST.getFirstChild()!=null ? 538 modifiers_AST.getFirstChild() : modifiers_AST; 539 currentAST.advanceChildToEnd(); 540 } 541 modifiers_AST = (AST)currentAST.root; 542 returnAST = modifiers_AST; 543 } 544 545 protected final void typeDefinitionInternal( 546 AST modifiers 547 ) throws RecognitionException, TokenStreamException { 548 549 returnAST = null; 550 ASTPair currentAST = new ASTPair(); 551 AST typeDefinitionInternal_AST = null; 552 553 switch ( LA(1)) { 554 case LITERAL_class: 555 { 556 classDefinition(modifiers); 557 astFactory.addASTChild(currentAST, returnAST); 558 typeDefinitionInternal_AST = (AST)currentAST.root; 559 break; 560 } 561 case LITERAL_interface: 562 { 563 interfaceDefinition(modifiers); 564 astFactory.addASTChild(currentAST, returnAST); 565 typeDefinitionInternal_AST = (AST)currentAST.root; 566 break; 567 } 568 case ENUM: 569 { 570 enumDefinition(modifiers); 571 astFactory.addASTChild(currentAST, returnAST); 572 typeDefinitionInternal_AST = (AST)currentAST.root; 573 break; 574 } 575 case AT: 576 { 577 annotationDefinition(modifiers); 578 astFactory.addASTChild(currentAST, returnAST); 579 typeDefinitionInternal_AST = (AST)currentAST.root; 580 break; 581 } 582 default: 583 { 584 throw new NoViableAltException(LT(1), getFilename()); 585 } 586 } 587 returnAST = typeDefinitionInternal_AST; 588 } 589 590 public final void classDefinition( 591 AST modifiers 592 ) throws RecognitionException, TokenStreamException { 593 594 returnAST = null; 595 ASTPair currentAST = new ASTPair(); 596 AST classDefinition_AST = null; 597 Token c = null; 598 AST c_AST = null; 599 AST tp_AST = null; 600 AST sc_AST = null; 601 AST ic_AST = null; 602 AST cb_AST = null; 603 604 c = LT(1); 605 c_AST = astFactory.create(c); 606 match(LITERAL_class); 607 AST tmp15_AST = null; 608 tmp15_AST = astFactory.create(LT(1)); 609 match(IDENT); 610 { 611 switch ( LA(1)) { 612 case LT: 613 { 614 typeParameters(); 615 tp_AST = (AST)returnAST; 616 break; 617 } 618 case LITERAL_extends: 619 case LCURLY: 620 case LITERAL_implements: 621 { 622 break; 623 } 624 default: 625 { 626 throw new NoViableAltException(LT(1), getFilename()); 627 } 628 } 629 } 630 superClassClause(); 631 sc_AST = (AST)returnAST; 632 implementsClause(); 633 ic_AST = (AST)returnAST; 634 classBlock(); 635 cb_AST = (AST)returnAST; 636 if ( inputState.guessing==0 ) { 637 classDefinition_AST = (AST)currentAST.root; 638 classDefinition_AST = (AST)astFactory.make( (new ASTArray(8)).add(astFactory.create(CLASS_DEF,"CLASS_DEF")).add(modifiers).add(c_AST).add(tmp15_AST).add(tp_AST).add(sc_AST).add(ic_AST).add(cb_AST)); 639 currentAST.root = classDefinition_AST; 640 currentAST.child = classDefinition_AST!=null &&classDefinition_AST.getFirstChild()!=null ? 641 classDefinition_AST.getFirstChild() : classDefinition_AST; 642 currentAST.advanceChildToEnd(); 643 } 644 returnAST = classDefinition_AST; 645 } 646 647 public final void interfaceDefinition( 648 AST modifiers 649 ) throws RecognitionException, TokenStreamException { 650 651 returnAST = null; 652 ASTPair currentAST = new ASTPair(); 653 AST interfaceDefinition_AST = null; 654 Token i = null; 655 AST i_AST = null; 656 AST tp_AST = null; 657 AST ie_AST = null; 658 AST cb_AST = null; 659 660 i = LT(1); 661 i_AST = astFactory.create(i); 662 match(LITERAL_interface); 663 AST tmp16_AST = null; 664 tmp16_AST = astFactory.create(LT(1)); 665 match(IDENT); 666 { 667 switch ( LA(1)) { 668 case LT: 669 { 670 typeParameters(); 671 tp_AST = (AST)returnAST; 672 break; 673 } 674 case LITERAL_extends: 675 case LCURLY: 676 { 677 break; 678 } 679 default: 680 { 681 throw new NoViableAltException(LT(1), getFilename()); 682 } 683 } 684 } 685 interfaceExtends(); 686 ie_AST = (AST)returnAST; 687 classBlock(); 688 cb_AST = (AST)returnAST; 689 if ( inputState.guessing==0 ) { 690 interfaceDefinition_AST = (AST)currentAST.root; 691 interfaceDefinition_AST = (AST)astFactory.make( (new ASTArray(7)).add(astFactory.create(INTERFACE_DEF,"INTERFACE_DEF")).add(modifiers).add(i_AST).add(tmp16_AST).add(tp_AST).add(ie_AST).add(cb_AST)); 692 currentAST.root = interfaceDefinition_AST; 693 currentAST.child = interfaceDefinition_AST!=null &&interfaceDefinition_AST.getFirstChild()!=null ? 694 interfaceDefinition_AST.getFirstChild() : interfaceDefinition_AST; 695 currentAST.advanceChildToEnd(); 696 } 697 returnAST = interfaceDefinition_AST; 698 } 699 700 public final void enumDefinition( 701 AST modifiers 702 ) throws RecognitionException, TokenStreamException { 703 704 returnAST = null; 705 ASTPair currentAST = new ASTPair(); 706 AST enumDefinition_AST = null; 707 Token e = null; 708 AST e_AST = null; 709 AST ic_AST = null; 710 AST eb_AST = null; 711 712 e = LT(1); 713 e_AST = astFactory.create(e); 714 match(ENUM); 715 AST tmp17_AST = null; 716 tmp17_AST = astFactory.create(LT(1)); 717 match(IDENT); 718 implementsClause(); 719 ic_AST = (AST)returnAST; 720 enumBlock(); 721 eb_AST = (AST)returnAST; 722 if ( inputState.guessing==0 ) { 723 enumDefinition_AST = (AST)currentAST.root; 724 enumDefinition_AST = (AST)astFactory.make( (new ASTArray(6)).add(astFactory.create(ENUM_DEF,"ENUM_DEF")).add(modifiers).add(e_AST).add(tmp17_AST).add(ic_AST).add(eb_AST)); 725 currentAST.root = enumDefinition_AST; 726 currentAST.child = enumDefinition_AST!=null &&enumDefinition_AST.getFirstChild()!=null ? 727 enumDefinition_AST.getFirstChild() : enumDefinition_AST; 728 currentAST.advanceChildToEnd(); 729 } 730 returnAST = enumDefinition_AST; 731 } 732 733 public final void annotationDefinition( 734 AST modifiers 735 ) throws RecognitionException, TokenStreamException { 736 737 returnAST = null; 738 ASTPair currentAST = new ASTPair(); 739 AST annotationDefinition_AST = null; 740 Token a = null; 741 AST a_AST = null; 742 Token i = null; 743 AST i_AST = null; 744 AST ab_AST = null; 745 746 a = LT(1); 747 a_AST = astFactory.create(a); 748 match(AT); 749 i = LT(1); 750 i_AST = astFactory.create(i); 751 match(LITERAL_interface); 752 AST tmp18_AST = null; 753 tmp18_AST = astFactory.create(LT(1)); 754 match(IDENT); 755 annotationBlock(); 756 ab_AST = (AST)returnAST; 757 if ( inputState.guessing==0 ) { 758 annotationDefinition_AST = (AST)currentAST.root; 759 annotationDefinition_AST = (AST)astFactory.make( (new ASTArray(6)).add(astFactory.create(ANNOTATION_DEF,"ANNOTATION_DEF")).add(modifiers).add(a_AST).add(i_AST).add(tmp18_AST).add(ab_AST)); 760 currentAST.root = annotationDefinition_AST; 761 currentAST.child = annotationDefinition_AST!=null &&annotationDefinition_AST.getFirstChild()!=null ? 762 annotationDefinition_AST.getFirstChild() : annotationDefinition_AST; 763 currentAST.advanceChildToEnd(); 764 } 765 returnAST = annotationDefinition_AST; 766 } 767 768 public final void typeSpec( 769 boolean addImagNode 770 ) throws RecognitionException, TokenStreamException { 771 772 returnAST = null; 773 ASTPair currentAST = new ASTPair(); 774 AST typeSpec_AST = null; 775 776 switch ( LA(1)) { 777 case IDENT: 778 case AT: 779 { 780 classTypeSpec(addImagNode); 781 astFactory.addASTChild(currentAST, returnAST); 782 typeSpec_AST = (AST)currentAST.root; 783 break; 784 } 785 case LITERAL_void: 786 case LITERAL_boolean: 787 case LITERAL_byte: 788 case LITERAL_char: 789 case LITERAL_short: 790 case LITERAL_int: 791 case LITERAL_float: 792 case LITERAL_long: 793 case LITERAL_double: 794 { 795 builtInTypeSpec(addImagNode); 796 astFactory.addASTChild(currentAST, returnAST); 797 typeSpec_AST = (AST)currentAST.root; 798 break; 799 } 800 default: 801 { 802 throw new NoViableAltException(LT(1), getFilename()); 803 } 804 } 805 returnAST = typeSpec_AST; 806 } 807 808 public final void classTypeSpec( 809 boolean addImagNode 810 ) throws RecognitionException, TokenStreamException { 811 812 returnAST = null; 813 ASTPair currentAST = new ASTPair(); 814 AST classTypeSpec_AST = null; 815 Token lb = null; 816 AST lb_AST = null; 817 818 classOrInterfaceType(addImagNode); 819 astFactory.addASTChild(currentAST, returnAST); 820 { 821 _loop18: 822 do { 823 if ((LA(1)==LBRACK||LA(1)==AT) && (LA(2)==RBRACK||LA(2)==IDENT)) { 824 { 825 if (((LA(1)==LBRACK||LA(1)==AT) && (LA(2)==RBRACK||LA(2)==IDENT))&&(LA(1) == AT)) { 826 annotations(); 827 astFactory.addASTChild(currentAST, returnAST); 828 } 829 else if ((LA(1)==LBRACK) && (LA(2)==RBRACK)) { 830 } 831 else { 832 throw new NoViableAltException(LT(1), getFilename()); 833 } 834 835 } 836 lb = LT(1); 837 lb_AST = astFactory.create(lb); 838 astFactory.makeASTRoot(currentAST, lb_AST); 839 match(LBRACK); 840 if ( inputState.guessing==0 ) { 841 lb_AST.setType(ARRAY_DECLARATOR); 842 } 843 AST tmp19_AST = null; 844 tmp19_AST = astFactory.create(LT(1)); 845 astFactory.addASTChild(currentAST, tmp19_AST); 846 match(RBRACK); 847 } 848 else { 849 break _loop18; 850 } 851 852 } while (true); 853 } 854 if ( inputState.guessing==0 ) { 855 classTypeSpec_AST = (AST)currentAST.root; 856 857 if ( addImagNode ) { 858 classTypeSpec_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(TYPE,"TYPE")).add(classTypeSpec_AST)); 859 } 860 861 currentAST.root = classTypeSpec_AST; 862 currentAST.child = classTypeSpec_AST!=null &&classTypeSpec_AST.getFirstChild()!=null ? 863 classTypeSpec_AST.getFirstChild() : classTypeSpec_AST; 864 currentAST.advanceChildToEnd(); 865 } 866 classTypeSpec_AST = (AST)currentAST.root; 867 returnAST = classTypeSpec_AST; 868 } 869 870 public final void builtInTypeSpec( 871 boolean addImagNode 872 ) throws RecognitionException, TokenStreamException { 873 874 returnAST = null; 875 ASTPair currentAST = new ASTPair(); 876 AST builtInTypeSpec_AST = null; 877 Token lb = null; 878 AST lb_AST = null; 879 880 builtInType(); 881 astFactory.addASTChild(currentAST, returnAST); 882 { 883 _loop48: 884 do { 885 if ((LA(1)==LBRACK||LA(1)==AT) && (LA(2)==RBRACK||LA(2)==IDENT)) { 886 { 887 if (((LA(1)==LBRACK||LA(1)==AT) && (LA(2)==RBRACK||LA(2)==IDENT))&&(LA(1) == AT)) { 888 annotations(); 889 astFactory.addASTChild(currentAST, returnAST); 890 } 891 else if ((LA(1)==LBRACK) && (LA(2)==RBRACK)) { 892 } 893 else { 894 throw new NoViableAltException(LT(1), getFilename()); 895 } 896 897 } 898 lb = LT(1); 899 lb_AST = astFactory.create(lb); 900 astFactory.makeASTRoot(currentAST, lb_AST); 901 match(LBRACK); 902 if ( inputState.guessing==0 ) { 903 lb_AST.setType(ARRAY_DECLARATOR); 904 } 905 AST tmp20_AST = null; 906 tmp20_AST = astFactory.create(LT(1)); 907 astFactory.addASTChild(currentAST, tmp20_AST); 908 match(RBRACK); 909 } 910 else { 911 break _loop48; 912 } 913 914 } while (true); 915 } 916 if ( inputState.guessing==0 ) { 917 builtInTypeSpec_AST = (AST)currentAST.root; 918 919 if ( addImagNode ) { 920 builtInTypeSpec_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(TYPE,"TYPE")).add(builtInTypeSpec_AST)); 921 } 922 923 currentAST.root = builtInTypeSpec_AST; 924 currentAST.child = builtInTypeSpec_AST!=null &&builtInTypeSpec_AST.getFirstChild()!=null ? 925 builtInTypeSpec_AST.getFirstChild() : builtInTypeSpec_AST; 926 currentAST.advanceChildToEnd(); 927 } 928 builtInTypeSpec_AST = (AST)currentAST.root; 929 returnAST = builtInTypeSpec_AST; 930 } 931 932 public final void classOrInterfaceType( 933 boolean addImagNode 934 ) throws RecognitionException, TokenStreamException { 935 936 returnAST = null; 937 ASTPair currentAST = new ASTPair(); 938 AST classOrInterfaceType_AST = null; 939 940 { 941 if (((LA(1)==IDENT||LA(1)==AT) && (_tokenSet_5.member(LA(2))))&&(LA(1) == AT)) { 942 annotations(); 943 astFactory.addASTChild(currentAST, returnAST); 944 } 945 else if ((LA(1)==IDENT) && (_tokenSet_5.member(LA(2)))) { 946 } 947 else { 948 throw new NoViableAltException(LT(1), getFilename()); 949 } 950 951 } 952 AST tmp21_AST = null; 953 tmp21_AST = astFactory.create(LT(1)); 954 astFactory.addASTChild(currentAST, tmp21_AST); 955 match(IDENT); 956 { 957 if ((LA(1)==LT) && (_tokenSet_5.member(LA(2)))) { 958 typeArguments(addImagNode); 959 astFactory.addASTChild(currentAST, returnAST); 960 } 961 else if ((_tokenSet_5.member(LA(1))) && (_tokenSet_6.member(LA(2)))) { 962 } 963 else { 964 throw new NoViableAltException(LT(1), getFilename()); 965 } 966 967 } 968 { 969 _loop25: 970 do { 971 if ((LA(1)==DOT) && (LA(2)==IDENT||LA(2)==AT)) { 972 AST tmp22_AST = null; 973 tmp22_AST = astFactory.create(LT(1)); 974 astFactory.makeASTRoot(currentAST, tmp22_AST); 975 match(DOT); 976 { 977 if (((LA(1)==IDENT||LA(1)==AT) && (_tokenSet_5.member(LA(2))))&&(LA(1) == AT)) { 978 annotations(); 979 astFactory.addASTChild(currentAST, returnAST); 980 } 981 else if ((LA(1)==IDENT) && (_tokenSet_5.member(LA(2)))) { 982 } 983 else { 984 throw new NoViableAltException(LT(1), getFilename()); 985 } 986 987 } 988 AST tmp23_AST = null; 989 tmp23_AST = astFactory.create(LT(1)); 990 astFactory.addASTChild(currentAST, tmp23_AST); 991 match(IDENT); 992 { 993 if ((LA(1)==LT) && (_tokenSet_5.member(LA(2)))) { 994 typeArguments(addImagNode); 995 astFactory.addASTChild(currentAST, returnAST); 996 } 997 else if ((_tokenSet_5.member(LA(1))) && (_tokenSet_6.member(LA(2)))) { 998 } 999 else { 1000 throw new NoViableAltException(LT(1), getFilename()); 1001 } 1002 1003 } 1004 } 1005 else { 1006 break _loop25; 1007 } 1008 1009 } while (true); 1010 } 1011 classOrInterfaceType_AST = (AST)currentAST.root; 1012 returnAST = classOrInterfaceType_AST; 1013 } 1014 1015 public final void typeArguments( 1016 boolean addImagNode 1017 ) throws RecognitionException, TokenStreamException { 1018 1019 returnAST = null; 1020 ASTPair currentAST = new ASTPair(); 1021 AST typeArguments_AST = null; 1022 Token lt = null; 1023 AST lt_AST = null; 1024 int currentLtLevel = 0; 1025 1026 if ( inputState.guessing==0 ) { 1027 currentLtLevel = ltCounter; 1028 } 1029 lt = LT(1); 1030 lt_AST = astFactory.create(lt); 1031 astFactory.addASTChild(currentAST, lt_AST); 1032 match(LT); 1033 if ( inputState.guessing==0 ) { 1034 lt_AST.setType(GENERIC_START); ;ltCounter++; 1035 } 1036 { 1037 if ((_tokenSet_7.member(LA(1))) && (_tokenSet_5.member(LA(2)))) { 1038 typeArgument(addImagNode); 1039 astFactory.addASTChild(currentAST, returnAST); 1040 { 1041 _loop37: 1042 do { 1043 if (((LA(1)==COMMA) && (_tokenSet_7.member(LA(2))))&&(gtToReconcile == 0)) { 1044 AST tmp24_AST = null; 1045 tmp24_AST = astFactory.create(LT(1)); 1046 astFactory.addASTChild(currentAST, tmp24_AST); 1047 match(COMMA); 1048 typeArgument(addImagNode); 1049 astFactory.addASTChild(currentAST, returnAST); 1050 } 1051 else { 1052 break _loop37; 1053 } 1054 1055 } while (true); 1056 } 1057 } 1058 else if ((_tokenSet_5.member(LA(1))) && (_tokenSet_6.member(LA(2)))) { 1059 } 1060 else { 1061 throw new NoViableAltException(LT(1), getFilename()); 1062 } 1063 1064 } 1065 { 1066 if ((_tokenSet_8.member(LA(1))) && (_tokenSet_5.member(LA(2)))) { 1067 typeArgumentsOrParametersEnd(); 1068 astFactory.addASTChild(currentAST, returnAST); 1069 } 1070 else if ((_tokenSet_5.member(LA(1))) && (_tokenSet_6.member(LA(2)))) { 1071 } 1072 else { 1073 throw new NoViableAltException(LT(1), getFilename()); 1074 } 1075 1076 } 1077 if ( inputState.guessing==0 ) { 1078 1079 if (areThereGtsToEmit()) 1080 { 1081 astFactory.addASTChild(currentAST, emitSingleGt()); 1082 } 1083 1084 } 1085 if (!(areLtsAndGtsBalanced(currentLtLevel))) 1086 throw new SemanticException("areLtsAndGtsBalanced(currentLtLevel)"); 1087 if ( inputState.guessing==0 ) { 1088 typeArguments_AST = (AST)currentAST.root; 1089 typeArguments_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(TYPE_ARGUMENTS,"TYPE_ARGUMENTS")).add(typeArguments_AST)); 1090 currentAST.root = typeArguments_AST; 1091 currentAST.child = typeArguments_AST!=null &&typeArguments_AST.getFirstChild()!=null ? 1092 typeArguments_AST.getFirstChild() : typeArguments_AST; 1093 currentAST.advanceChildToEnd(); 1094 } 1095 typeArguments_AST = (AST)currentAST.root; 1096 returnAST = typeArguments_AST; 1097 } 1098 1099 public final void typeArgument( 1100 boolean addImagNode 1101 ) throws RecognitionException, TokenStreamException { 1102 1103 returnAST = null; 1104 ASTPair currentAST = new ASTPair(); 1105 AST typeArgument_AST = null; 1106 1107 { 1108 { 1109 if (((_tokenSet_7.member(LA(1))) && (_tokenSet_5.member(LA(2))))&&(LA(1) == AT)) { 1110 annotations(); 1111 astFactory.addASTChild(currentAST, returnAST); 1112 } 1113 else if ((_tokenSet_7.member(LA(1))) && (_tokenSet_5.member(LA(2)))) { 1114 } 1115 else { 1116 throw new NoViableAltException(LT(1), getFilename()); 1117 } 1118 1119 } 1120 { 1121 switch ( LA(1)) { 1122 case IDENT: 1123 case AT: 1124 { 1125 classTypeSpec(addImagNode); 1126 astFactory.addASTChild(currentAST, returnAST); 1127 break; 1128 } 1129 case LITERAL_void: 1130 case LITERAL_boolean: 1131 case LITERAL_byte: 1132 case LITERAL_char: 1133 case LITERAL_short: 1134 case LITERAL_int: 1135 case LITERAL_float: 1136 case LITERAL_long: 1137 case LITERAL_double: 1138 { 1139 builtInTypeSpec(addImagNode); 1140 astFactory.addASTChild(currentAST, returnAST); 1141 break; 1142 } 1143 case QUESTION: 1144 { 1145 wildcardType(addImagNode); 1146 astFactory.addASTChild(currentAST, returnAST); 1147 break; 1148 } 1149 default: 1150 { 1151 throw new NoViableAltException(LT(1), getFilename()); 1152 } 1153 } 1154 } 1155 } 1156 if ( inputState.guessing==0 ) { 1157 typeArgument_AST = (AST)currentAST.root; 1158 typeArgument_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(TYPE_ARGUMENT,"TYPE_ARGUMENT")).add(typeArgument_AST)); 1159 currentAST.root = typeArgument_AST; 1160 currentAST.child = typeArgument_AST!=null &&typeArgument_AST.getFirstChild()!=null ? 1161 typeArgument_AST.getFirstChild() : typeArgument_AST; 1162 currentAST.advanceChildToEnd(); 1163 } 1164 typeArgument_AST = (AST)currentAST.root; 1165 returnAST = typeArgument_AST; 1166 } 1167 1168 public final void wildcardType( 1169 boolean addImagNode 1170 ) throws RecognitionException, TokenStreamException { 1171 1172 returnAST = null; 1173 ASTPair currentAST = new ASTPair(); 1174 AST wildcardType_AST = null; 1175 Token q = null; 1176 AST q_AST = null; 1177 1178 q = LT(1); 1179 q_AST = astFactory.create(q); 1180 astFactory.addASTChild(currentAST, q_AST); 1181 match(QUESTION); 1182 if ( inputState.guessing==0 ) { 1183 q_AST.setType(WILDCARD_TYPE); 1184 } 1185 { 1186 boolean synPredMatched33 = false; 1187 if (((LA(1)==LITERAL_extends||LA(1)==LITERAL_super) && (_tokenSet_9.member(LA(2))))) { 1188 int _m33 = mark(); 1189 synPredMatched33 = true; 1190 inputState.guessing++; 1191 try { 1192 { 1193 switch ( LA(1)) { 1194 case LITERAL_extends: 1195 { 1196 match(LITERAL_extends); 1197 break; 1198 } 1199 case LITERAL_super: 1200 { 1201 match(LITERAL_super); 1202 break; 1203 } 1204 default: 1205 { 1206 throw new NoViableAltException(LT(1), getFilename()); 1207 } 1208 } 1209 } 1210 } 1211 catch (RecognitionException pe) { 1212 synPredMatched33 = false; 1213 } 1214 rewind(_m33); 1215inputState.guessing--; 1216 } 1217 if ( synPredMatched33 ) { 1218 typeArgumentBounds(addImagNode); 1219 astFactory.addASTChild(currentAST, returnAST); 1220 } 1221 else if ((_tokenSet_5.member(LA(1))) && (_tokenSet_6.member(LA(2)))) { 1222 } 1223 else { 1224 throw new NoViableAltException(LT(1), getFilename()); 1225 } 1226 1227 } 1228 wildcardType_AST = (AST)currentAST.root; 1229 returnAST = wildcardType_AST; 1230 } 1231 1232 public final void typeArgumentBounds( 1233 boolean addImagNode 1234 ) throws RecognitionException, TokenStreamException { 1235 1236 returnAST = null; 1237 ASTPair currentAST = new ASTPair(); 1238 AST typeArgumentBounds_AST = null; 1239 Token e = null; 1240 AST e_AST = null; 1241 Token s = null; 1242 AST s_AST = null; 1243 Token lb = null; 1244 AST lb_AST = null; 1245 1246 { 1247 switch ( LA(1)) { 1248 case LITERAL_extends: 1249 { 1250 e = LT(1); 1251 e_AST = astFactory.create(e); 1252 astFactory.makeASTRoot(currentAST, e_AST); 1253 match(LITERAL_extends); 1254 if ( inputState.guessing==0 ) { 1255 e_AST.setType(TYPE_UPPER_BOUNDS); 1256 } 1257 break; 1258 } 1259 case LITERAL_super: 1260 { 1261 s = LT(1); 1262 s_AST = astFactory.create(s); 1263 astFactory.makeASTRoot(currentAST, s_AST); 1264 match(LITERAL_super); 1265 if ( inputState.guessing==0 ) { 1266 s_AST.setType(TYPE_LOWER_BOUNDS); 1267 } 1268 break; 1269 } 1270 default: 1271 { 1272 throw new NoViableAltException(LT(1), getFilename()); 1273 } 1274 } 1275 } 1276 { 1277 switch ( LA(1)) { 1278 case IDENT: 1279 case AT: 1280 { 1281 classOrInterfaceType(addImagNode); 1282 astFactory.addASTChild(currentAST, returnAST); 1283 break; 1284 } 1285 case LITERAL_void: 1286 case LITERAL_boolean: 1287 case LITERAL_byte: 1288 case LITERAL_char: 1289 case LITERAL_short: 1290 case LITERAL_int: 1291 case LITERAL_float: 1292 case LITERAL_long: 1293 case LITERAL_double: 1294 { 1295 builtInType(); 1296 astFactory.addASTChild(currentAST, returnAST); 1297 break; 1298 } 1299 default: 1300 { 1301 throw new NoViableAltException(LT(1), getFilename()); 1302 } 1303 } 1304 } 1305 { 1306 _loop44: 1307 do { 1308 if ((LA(1)==LBRACK) && (LA(2)==RBRACK)) { 1309 lb = LT(1); 1310 lb_AST = astFactory.create(lb); 1311 astFactory.makeASTRoot(currentAST, lb_AST); 1312 match(LBRACK); 1313 if ( inputState.guessing==0 ) { 1314 lb_AST.setType(ARRAY_DECLARATOR); 1315 } 1316 AST tmp25_AST = null; 1317 tmp25_AST = astFactory.create(LT(1)); 1318 astFactory.addASTChild(currentAST, tmp25_AST); 1319 match(RBRACK); 1320 } 1321 else { 1322 break _loop44; 1323 } 1324 1325 } while (true); 1326 } 1327 typeArgumentBounds_AST = (AST)currentAST.root; 1328 returnAST = typeArgumentBounds_AST; 1329 } 1330 1331 protected final void typeArgumentsOrParametersEnd() throws RecognitionException, TokenStreamException { 1332 1333 returnAST = null; 1334 ASTPair currentAST = new ASTPair(); 1335 AST typeArgumentsOrParametersEnd_AST = null; 1336 Token g = null; 1337 AST g_AST = null; 1338 Token sr = null; 1339 AST sr_AST = null; 1340 Token bsr = null; 1341 AST bsr_AST = null; 1342 1343 switch ( LA(1)) { 1344 case GT: 1345 { 1346 g = LT(1); 1347 g_AST = astFactory.create(g); 1348 match(GT); 1349 if ( inputState.guessing==0 ) { 1350 consumeCurrentGtSequence((DetailAST)g_AST); 1351 } 1352 break; 1353 } 1354 case SR: 1355 { 1356 sr = LT(1); 1357 sr_AST = astFactory.create(sr); 1358 match(SR); 1359 if ( inputState.guessing==0 ) { 1360 consumeCurrentGtSequence((DetailAST)sr_AST); 1361 } 1362 break; 1363 } 1364 case BSR: 1365 { 1366 bsr = LT(1); 1367 bsr_AST = astFactory.create(bsr); 1368 match(BSR); 1369 if ( inputState.guessing==0 ) { 1370 consumeCurrentGtSequence((DetailAST)bsr_AST); 1371 } 1372 break; 1373 } 1374 default: 1375 { 1376 throw new NoViableAltException(LT(1), getFilename()); 1377 } 1378 } 1379 returnAST = typeArgumentsOrParametersEnd_AST; 1380 } 1381 1382 public final void builtInType() throws RecognitionException, TokenStreamException { 1383 1384 returnAST = null; 1385 ASTPair currentAST = new ASTPair(); 1386 AST builtInType_AST = null; 1387 1388 switch ( LA(1)) { 1389 case LITERAL_void: 1390 { 1391 AST tmp26_AST = null; 1392 tmp26_AST = astFactory.create(LT(1)); 1393 astFactory.addASTChild(currentAST, tmp26_AST); 1394 match(LITERAL_void); 1395 builtInType_AST = (AST)currentAST.root; 1396 break; 1397 } 1398 case LITERAL_boolean: 1399 { 1400 AST tmp27_AST = null; 1401 tmp27_AST = astFactory.create(LT(1)); 1402 astFactory.addASTChild(currentAST, tmp27_AST); 1403 match(LITERAL_boolean); 1404 builtInType_AST = (AST)currentAST.root; 1405 break; 1406 } 1407 case LITERAL_byte: 1408 { 1409 AST tmp28_AST = null; 1410 tmp28_AST = astFactory.create(LT(1)); 1411 astFactory.addASTChild(currentAST, tmp28_AST); 1412 match(LITERAL_byte); 1413 builtInType_AST = (AST)currentAST.root; 1414 break; 1415 } 1416 case LITERAL_char: 1417 { 1418 AST tmp29_AST = null; 1419 tmp29_AST = astFactory.create(LT(1)); 1420 astFactory.addASTChild(currentAST, tmp29_AST); 1421 match(LITERAL_char); 1422 builtInType_AST = (AST)currentAST.root; 1423 break; 1424 } 1425 case LITERAL_short: 1426 { 1427 AST tmp30_AST = null; 1428 tmp30_AST = astFactory.create(LT(1)); 1429 astFactory.addASTChild(currentAST, tmp30_AST); 1430 match(LITERAL_short); 1431 builtInType_AST = (AST)currentAST.root; 1432 break; 1433 } 1434 case LITERAL_int: 1435 { 1436 AST tmp31_AST = null; 1437 tmp31_AST = astFactory.create(LT(1)); 1438 astFactory.addASTChild(currentAST, tmp31_AST); 1439 match(LITERAL_int); 1440 builtInType_AST = (AST)currentAST.root; 1441 break; 1442 } 1443 case LITERAL_float: 1444 { 1445 AST tmp32_AST = null; 1446 tmp32_AST = astFactory.create(LT(1)); 1447 astFactory.addASTChild(currentAST, tmp32_AST); 1448 match(LITERAL_float); 1449 builtInType_AST = (AST)currentAST.root; 1450 break; 1451 } 1452 case LITERAL_long: 1453 { 1454 AST tmp33_AST = null; 1455 tmp33_AST = astFactory.create(LT(1)); 1456 astFactory.addASTChild(currentAST, tmp33_AST); 1457 match(LITERAL_long); 1458 builtInType_AST = (AST)currentAST.root; 1459 break; 1460 } 1461 case LITERAL_double: 1462 { 1463 AST tmp34_AST = null; 1464 tmp34_AST = astFactory.create(LT(1)); 1465 astFactory.addASTChild(currentAST, tmp34_AST); 1466 match(LITERAL_double); 1467 builtInType_AST = (AST)currentAST.root; 1468 break; 1469 } 1470 default: 1471 { 1472 throw new NoViableAltException(LT(1), getFilename()); 1473 } 1474 } 1475 returnAST = builtInType_AST; 1476 } 1477 1478 public final void type() throws RecognitionException, TokenStreamException { 1479 1480 returnAST = null; 1481 ASTPair currentAST = new ASTPair(); 1482 AST type_AST = null; 1483 1484 switch ( LA(1)) { 1485 case IDENT: 1486 case AT: 1487 { 1488 classOrInterfaceType(false); 1489 astFactory.addASTChild(currentAST, returnAST); 1490 type_AST = (AST)currentAST.root; 1491 break; 1492 } 1493 case LITERAL_void: 1494 case LITERAL_boolean: 1495 case LITERAL_byte: 1496 case LITERAL_char: 1497 case LITERAL_short: 1498 case LITERAL_int: 1499 case LITERAL_float: 1500 case LITERAL_long: 1501 case LITERAL_double: 1502 { 1503 builtInType(); 1504 astFactory.addASTChild(currentAST, returnAST); 1505 type_AST = (AST)currentAST.root; 1506 break; 1507 } 1508 default: 1509 { 1510 throw new NoViableAltException(LT(1), getFilename()); 1511 } 1512 } 1513 returnAST = type_AST; 1514 } 1515 1516/** A declaration is the creation of a reference or primitive-type variable 1517 * Create a separate Type/Var tree for each var in the var list. 1518 @throws RecognitionException if recognition problem occurs. 1519 @throws TokenStreamException if problem occurs while generating a stream of tokens. 1520 */ 1521 public final void declaration() throws RecognitionException, TokenStreamException { 1522 1523 returnAST = null; 1524 ASTPair currentAST = new ASTPair(); 1525 AST declaration_AST = null; 1526 AST m_AST = null; 1527 AST t_AST = null; 1528 AST v_AST = null; 1529 1530 modifiers(); 1531 m_AST = (AST)returnAST; 1532 typeSpec(false); 1533 t_AST = (AST)returnAST; 1534 variableDefinitions(m_AST,t_AST); 1535 v_AST = (AST)returnAST; 1536 if ( inputState.guessing==0 ) { 1537 declaration_AST = (AST)currentAST.root; 1538 declaration_AST = v_AST; 1539 currentAST.root = declaration_AST; 1540 currentAST.child = declaration_AST!=null &&declaration_AST.getFirstChild()!=null ? 1541 declaration_AST.getFirstChild() : declaration_AST; 1542 currentAST.advanceChildToEnd(); 1543 } 1544 returnAST = declaration_AST; 1545 } 1546 1547 public final void variableDefinitions( 1548 AST mods, AST t 1549 ) throws RecognitionException, TokenStreamException { 1550 1551 returnAST = null; 1552 ASTPair currentAST = new ASTPair(); 1553 AST variableDefinitions_AST = null; 1554 1555 variableDeclarator((AST) getASTFactory().dupTree(mods), 1556 //dupList as this also copies siblings (like TYPE_ARGUMENTS) 1557 (AST) getASTFactory().dupList(t)); 1558 astFactory.addASTChild(currentAST, returnAST); 1559 { 1560 _loop160: 1561 do { 1562 if ((LA(1)==COMMA)) { 1563 AST tmp35_AST = null; 1564 tmp35_AST = astFactory.create(LT(1)); 1565 astFactory.addASTChild(currentAST, tmp35_AST); 1566 match(COMMA); 1567 variableDeclarator((AST) getASTFactory().dupTree(mods), 1568 //dupList as this also copies siblings (like TYPE_ARGUMENTS) 1569 (AST) getASTFactory().dupList(t)); 1570 astFactory.addASTChild(currentAST, returnAST); 1571 } 1572 else { 1573 break _loop160; 1574 } 1575 1576 } while (true); 1577 } 1578 variableDefinitions_AST = (AST)currentAST.root; 1579 returnAST = variableDefinitions_AST; 1580 } 1581 1582 public final void modifier() throws RecognitionException, TokenStreamException { 1583 1584 returnAST = null; 1585 ASTPair currentAST = new ASTPair(); 1586 AST modifier_AST = null; 1587 1588 switch ( LA(1)) { 1589 case LITERAL_private: 1590 { 1591 AST tmp36_AST = null; 1592 tmp36_AST = astFactory.create(LT(1)); 1593 astFactory.addASTChild(currentAST, tmp36_AST); 1594 match(LITERAL_private); 1595 modifier_AST = (AST)currentAST.root; 1596 break; 1597 } 1598 case LITERAL_public: 1599 { 1600 AST tmp37_AST = null; 1601 tmp37_AST = astFactory.create(LT(1)); 1602 astFactory.addASTChild(currentAST, tmp37_AST); 1603 match(LITERAL_public); 1604 modifier_AST = (AST)currentAST.root; 1605 break; 1606 } 1607 case LITERAL_protected: 1608 { 1609 AST tmp38_AST = null; 1610 tmp38_AST = astFactory.create(LT(1)); 1611 astFactory.addASTChild(currentAST, tmp38_AST); 1612 match(LITERAL_protected); 1613 modifier_AST = (AST)currentAST.root; 1614 break; 1615 } 1616 case LITERAL_static: 1617 { 1618 AST tmp39_AST = null; 1619 tmp39_AST = astFactory.create(LT(1)); 1620 astFactory.addASTChild(currentAST, tmp39_AST); 1621 match(LITERAL_static); 1622 modifier_AST = (AST)currentAST.root; 1623 break; 1624 } 1625 case LITERAL_transient: 1626 { 1627 AST tmp40_AST = null; 1628 tmp40_AST = astFactory.create(LT(1)); 1629 astFactory.addASTChild(currentAST, tmp40_AST); 1630 match(LITERAL_transient); 1631 modifier_AST = (AST)currentAST.root; 1632 break; 1633 } 1634 case FINAL: 1635 { 1636 AST tmp41_AST = null; 1637 tmp41_AST = astFactory.create(LT(1)); 1638 astFactory.addASTChild(currentAST, tmp41_AST); 1639 match(FINAL); 1640 modifier_AST = (AST)currentAST.root; 1641 break; 1642 } 1643 case ABSTRACT: 1644 { 1645 AST tmp42_AST = null; 1646 tmp42_AST = astFactory.create(LT(1)); 1647 astFactory.addASTChild(currentAST, tmp42_AST); 1648 match(ABSTRACT); 1649 modifier_AST = (AST)currentAST.root; 1650 break; 1651 } 1652 case LITERAL_native: 1653 { 1654 AST tmp43_AST = null; 1655 tmp43_AST = astFactory.create(LT(1)); 1656 astFactory.addASTChild(currentAST, tmp43_AST); 1657 match(LITERAL_native); 1658 modifier_AST = (AST)currentAST.root; 1659 break; 1660 } 1661 case LITERAL_synchronized: 1662 { 1663 AST tmp44_AST = null; 1664 tmp44_AST = astFactory.create(LT(1)); 1665 astFactory.addASTChild(currentAST, tmp44_AST); 1666 match(LITERAL_synchronized); 1667 modifier_AST = (AST)currentAST.root; 1668 break; 1669 } 1670 case LITERAL_volatile: 1671 { 1672 AST tmp45_AST = null; 1673 tmp45_AST = astFactory.create(LT(1)); 1674 astFactory.addASTChild(currentAST, tmp45_AST); 1675 match(LITERAL_volatile); 1676 modifier_AST = (AST)currentAST.root; 1677 break; 1678 } 1679 case STRICTFP: 1680 { 1681 AST tmp46_AST = null; 1682 tmp46_AST = astFactory.create(LT(1)); 1683 astFactory.addASTChild(currentAST, tmp46_AST); 1684 match(STRICTFP); 1685 modifier_AST = (AST)currentAST.root; 1686 break; 1687 } 1688 case LITERAL_default: 1689 { 1690 AST tmp47_AST = null; 1691 tmp47_AST = astFactory.create(LT(1)); 1692 astFactory.addASTChild(currentAST, tmp47_AST); 1693 match(LITERAL_default); 1694 modifier_AST = (AST)currentAST.root; 1695 break; 1696 } 1697 default: 1698 { 1699 throw new NoViableAltException(LT(1), getFilename()); 1700 } 1701 } 1702 returnAST = modifier_AST; 1703 } 1704 1705 public final void annotation() throws RecognitionException, TokenStreamException { 1706 1707 returnAST = null; 1708 ASTPair currentAST = new ASTPair(); 1709 AST annotation_AST = null; 1710 AST i_AST = null; 1711 Token l = null; 1712 AST l_AST = null; 1713 AST args_AST = null; 1714 Token r = null; 1715 AST r_AST = null; 1716 1717 AST tmp48_AST = null; 1718 tmp48_AST = astFactory.create(LT(1)); 1719 match(AT); 1720 identifier(); 1721 i_AST = (AST)returnAST; 1722 { 1723 if ((LA(1)==LPAREN) && (_tokenSet_10.member(LA(2)))) { 1724 l = LT(1); 1725 l_AST = astFactory.create(l); 1726 match(LPAREN); 1727 { 1728 switch ( LA(1)) { 1729 case LITERAL_void: 1730 case LITERAL_boolean: 1731 case LITERAL_byte: 1732 case LITERAL_char: 1733 case LITERAL_short: 1734 case LITERAL_int: 1735 case LITERAL_float: 1736 case LITERAL_long: 1737 case LITERAL_double: 1738 case IDENT: 1739 case LCURLY: 1740 case LPAREN: 1741 case LITERAL_this: 1742 case LITERAL_super: 1743 case PLUS: 1744 case MINUS: 1745 case INC: 1746 case DEC: 1747 case BNOT: 1748 case LNOT: 1749 case LITERAL_true: 1750 case LITERAL_false: 1751 case LITERAL_null: 1752 case LITERAL_new: 1753 case NUM_INT: 1754 case CHAR_LITERAL: 1755 case STRING_LITERAL: 1756 case NUM_FLOAT: 1757 case NUM_LONG: 1758 case NUM_DOUBLE: 1759 case AT: 1760 { 1761 annotationArguments(); 1762 args_AST = (AST)returnAST; 1763 break; 1764 } 1765 case RPAREN: 1766 { 1767 break; 1768 } 1769 default: 1770 { 1771 throw new NoViableAltException(LT(1), getFilename()); 1772 } 1773 } 1774 } 1775 r = LT(1); 1776 r_AST = astFactory.create(r); 1777 match(RPAREN); 1778 } 1779 else if ((_tokenSet_11.member(LA(1))) && (_tokenSet_6.member(LA(2)))) { 1780 } 1781 else { 1782 throw new NoViableAltException(LT(1), getFilename()); 1783 } 1784 1785 } 1786 if ( inputState.guessing==0 ) { 1787 annotation_AST = (AST)currentAST.root; 1788 annotation_AST = (AST)astFactory.make( (new ASTArray(6)).add(astFactory.create(ANNOTATION,"ANNOTATION")).add(tmp48_AST).add(i_AST).add(l_AST).add(args_AST).add(r_AST)); 1789 currentAST.root = annotation_AST; 1790 currentAST.child = annotation_AST!=null &&annotation_AST.getFirstChild()!=null ? 1791 annotation_AST.getFirstChild() : annotation_AST; 1792 currentAST.advanceChildToEnd(); 1793 } 1794 returnAST = annotation_AST; 1795 } 1796 1797 public final void annotationArguments() throws RecognitionException, TokenStreamException { 1798 1799 returnAST = null; 1800 ASTPair currentAST = new ASTPair(); 1801 AST annotationArguments_AST = null; 1802 1803 if ((_tokenSet_12.member(LA(1))) && (_tokenSet_13.member(LA(2)))) { 1804 annotationMemberValueInitializer(); 1805 astFactory.addASTChild(currentAST, returnAST); 1806 annotationArguments_AST = (AST)currentAST.root; 1807 } 1808 else if ((LA(1)==IDENT) && (LA(2)==ASSIGN)) { 1809 annotationMemberValuePairs(); 1810 astFactory.addASTChild(currentAST, returnAST); 1811 annotationArguments_AST = (AST)currentAST.root; 1812 } 1813 else { 1814 throw new NoViableAltException(LT(1), getFilename()); 1815 } 1816 1817 returnAST = annotationArguments_AST; 1818 } 1819 1820 public final void annotationMemberValueInitializer() throws RecognitionException, TokenStreamException { 1821 1822 returnAST = null; 1823 ASTPair currentAST = new ASTPair(); 1824 AST annotationMemberValueInitializer_AST = null; 1825 1826 switch ( LA(1)) { 1827 case LITERAL_void: 1828 case LITERAL_boolean: 1829 case LITERAL_byte: 1830 case LITERAL_char: 1831 case LITERAL_short: 1832 case LITERAL_int: 1833 case LITERAL_float: 1834 case LITERAL_long: 1835 case LITERAL_double: 1836 case IDENT: 1837 case LPAREN: 1838 case LITERAL_this: 1839 case LITERAL_super: 1840 case PLUS: 1841 case MINUS: 1842 case INC: 1843 case DEC: 1844 case BNOT: 1845 case LNOT: 1846 case LITERAL_true: 1847 case LITERAL_false: 1848 case LITERAL_null: 1849 case LITERAL_new: 1850 case NUM_INT: 1851 case CHAR_LITERAL: 1852 case STRING_LITERAL: 1853 case NUM_FLOAT: 1854 case NUM_LONG: 1855 case NUM_DOUBLE: 1856 { 1857 annotationExpression(); 1858 astFactory.addASTChild(currentAST, returnAST); 1859 annotationMemberValueInitializer_AST = (AST)currentAST.root; 1860 break; 1861 } 1862 case AT: 1863 { 1864 annotation(); 1865 astFactory.addASTChild(currentAST, returnAST); 1866 annotationMemberValueInitializer_AST = (AST)currentAST.root; 1867 break; 1868 } 1869 case LCURLY: 1870 { 1871 annotationMemberArrayInitializer(); 1872 astFactory.addASTChild(currentAST, returnAST); 1873 annotationMemberValueInitializer_AST = (AST)currentAST.root; 1874 break; 1875 } 1876 default: 1877 { 1878 throw new NoViableAltException(LT(1), getFilename()); 1879 } 1880 } 1881 returnAST = annotationMemberValueInitializer_AST; 1882 } 1883 1884 public final void annotationMemberValuePairs() throws RecognitionException, TokenStreamException { 1885 1886 returnAST = null; 1887 ASTPair currentAST = new ASTPair(); 1888 AST annotationMemberValuePairs_AST = null; 1889 1890 annotationMemberValuePair(); 1891 astFactory.addASTChild(currentAST, returnAST); 1892 { 1893 _loop72: 1894 do { 1895 if ((LA(1)==COMMA)) { 1896 AST tmp49_AST = null; 1897 tmp49_AST = astFactory.create(LT(1)); 1898 astFactory.addASTChild(currentAST, tmp49_AST); 1899 match(COMMA); 1900 annotationMemberValuePair(); 1901 astFactory.addASTChild(currentAST, returnAST); 1902 } 1903 else { 1904 break _loop72; 1905 } 1906 1907 } while (true); 1908 } 1909 annotationMemberValuePairs_AST = (AST)currentAST.root; 1910 returnAST = annotationMemberValuePairs_AST; 1911 } 1912 1913 public final void annotationMemberValuePair() throws RecognitionException, TokenStreamException { 1914 1915 returnAST = null; 1916 ASTPair currentAST = new ASTPair(); 1917 AST annotationMemberValuePair_AST = null; 1918 Token i = null; 1919 AST i_AST = null; 1920 Token a = null; 1921 AST a_AST = null; 1922 AST v_AST = null; 1923 1924 i = LT(1); 1925 i_AST = astFactory.create(i); 1926 match(IDENT); 1927 a = LT(1); 1928 a_AST = astFactory.create(a); 1929 match(ASSIGN); 1930 annotationMemberValueInitializer(); 1931 v_AST = (AST)returnAST; 1932 if ( inputState.guessing==0 ) { 1933 annotationMemberValuePair_AST = (AST)currentAST.root; 1934 annotationMemberValuePair_AST = 1935 (AST)astFactory.make( (new ASTArray(4)).add(astFactory.create(ANNOTATION_MEMBER_VALUE_PAIR,"ANNOTATION_MEMBER_VALUE_PAIR")).add(i_AST).add(a_AST).add(v_AST)); 1936 currentAST.root = annotationMemberValuePair_AST; 1937 currentAST.child = annotationMemberValuePair_AST!=null &&annotationMemberValuePair_AST.getFirstChild()!=null ? 1938 annotationMemberValuePair_AST.getFirstChild() : annotationMemberValuePair_AST; 1939 currentAST.advanceChildToEnd(); 1940 } 1941 returnAST = annotationMemberValuePair_AST; 1942 } 1943 1944 public final void annotationExpression() throws RecognitionException, TokenStreamException { 1945 1946 returnAST = null; 1947 ASTPair currentAST = new ASTPair(); 1948 AST annotationExpression_AST = null; 1949 1950 conditionalExpression(); 1951 astFactory.addASTChild(currentAST, returnAST); 1952 if ( inputState.guessing==0 ) { 1953 annotationExpression_AST = (AST)currentAST.root; 1954 annotationExpression_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(EXPR,"EXPR")).add(annotationExpression_AST)); 1955 currentAST.root = annotationExpression_AST; 1956 currentAST.child = annotationExpression_AST!=null &&annotationExpression_AST.getFirstChild()!=null ? 1957 annotationExpression_AST.getFirstChild() : annotationExpression_AST; 1958 currentAST.advanceChildToEnd(); 1959 } 1960 annotationExpression_AST = (AST)currentAST.root; 1961 returnAST = annotationExpression_AST; 1962 } 1963 1964 public final void annotationMemberArrayInitializer() throws RecognitionException, TokenStreamException { 1965 1966 returnAST = null; 1967 ASTPair currentAST = new ASTPair(); 1968 AST annotationMemberArrayInitializer_AST = null; 1969 Token lc = null; 1970 AST lc_AST = null; 1971 1972 lc = LT(1); 1973 lc_AST = astFactory.create(lc); 1974 astFactory.makeASTRoot(currentAST, lc_AST); 1975 match(LCURLY); 1976 if ( inputState.guessing==0 ) { 1977 lc_AST.setType(ANNOTATION_ARRAY_INIT); 1978 } 1979 { 1980 switch ( LA(1)) { 1981 case LITERAL_void: 1982 case LITERAL_boolean: 1983 case LITERAL_byte: 1984 case LITERAL_char: 1985 case LITERAL_short: 1986 case LITERAL_int: 1987 case LITERAL_float: 1988 case LITERAL_long: 1989 case LITERAL_double: 1990 case IDENT: 1991 case LPAREN: 1992 case LITERAL_this: 1993 case LITERAL_super: 1994 case PLUS: 1995 case MINUS: 1996 case INC: 1997 case DEC: 1998 case BNOT: 1999 case LNOT: 2000 case LITERAL_true: 2001 case LITERAL_false: 2002 case LITERAL_null: 2003 case LITERAL_new: 2004 case NUM_INT: 2005 case CHAR_LITERAL: 2006 case STRING_LITERAL: 2007 case NUM_FLOAT: 2008 case NUM_LONG: 2009 case NUM_DOUBLE: 2010 case AT: 2011 { 2012 annotationMemberArrayValueInitializer(); 2013 astFactory.addASTChild(currentAST, returnAST); 2014 { 2015 _loop78: 2016 do { 2017 if ((LA(1)==COMMA) && (_tokenSet_14.member(LA(2)))) { 2018 AST tmp50_AST = null; 2019 tmp50_AST = astFactory.create(LT(1)); 2020 astFactory.addASTChild(currentAST, tmp50_AST); 2021 match(COMMA); 2022 annotationMemberArrayValueInitializer(); 2023 astFactory.addASTChild(currentAST, returnAST); 2024 } 2025 else { 2026 break _loop78; 2027 } 2028 2029 } while (true); 2030 } 2031 { 2032 switch ( LA(1)) { 2033 case COMMA: 2034 { 2035 AST tmp51_AST = null; 2036 tmp51_AST = astFactory.create(LT(1)); 2037 astFactory.addASTChild(currentAST, tmp51_AST); 2038 match(COMMA); 2039 break; 2040 } 2041 case RCURLY: 2042 { 2043 break; 2044 } 2045 default: 2046 { 2047 throw new NoViableAltException(LT(1), getFilename()); 2048 } 2049 } 2050 } 2051 break; 2052 } 2053 case RCURLY: 2054 { 2055 break; 2056 } 2057 default: 2058 { 2059 throw new NoViableAltException(LT(1), getFilename()); 2060 } 2061 } 2062 } 2063 AST tmp52_AST = null; 2064 tmp52_AST = astFactory.create(LT(1)); 2065 astFactory.addASTChild(currentAST, tmp52_AST); 2066 match(RCURLY); 2067 annotationMemberArrayInitializer_AST = (AST)currentAST.root; 2068 returnAST = annotationMemberArrayInitializer_AST; 2069 } 2070 2071 public final void annotationMemberArrayValueInitializer() throws RecognitionException, TokenStreamException { 2072 2073 returnAST = null; 2074 ASTPair currentAST = new ASTPair(); 2075 AST annotationMemberArrayValueInitializer_AST = null; 2076 2077 switch ( LA(1)) { 2078 case LITERAL_void: 2079 case LITERAL_boolean: 2080 case LITERAL_byte: 2081 case LITERAL_char: 2082 case LITERAL_short: 2083 case LITERAL_int: 2084 case LITERAL_float: 2085 case LITERAL_long: 2086 case LITERAL_double: 2087 case IDENT: 2088 case LPAREN: 2089 case LITERAL_this: 2090 case LITERAL_super: 2091 case PLUS: 2092 case MINUS: 2093 case INC: 2094 case DEC: 2095 case BNOT: 2096 case LNOT: 2097 case LITERAL_true: 2098 case LITERAL_false: 2099 case LITERAL_null: 2100 case LITERAL_new: 2101 case NUM_INT: 2102 case CHAR_LITERAL: 2103 case STRING_LITERAL: 2104 case NUM_FLOAT: 2105 case NUM_LONG: 2106 case NUM_DOUBLE: 2107 { 2108 annotationExpression(); 2109 astFactory.addASTChild(currentAST, returnAST); 2110 annotationMemberArrayValueInitializer_AST = (AST)currentAST.root; 2111 break; 2112 } 2113 case AT: 2114 { 2115 annotation(); 2116 astFactory.addASTChild(currentAST, returnAST); 2117 annotationMemberArrayValueInitializer_AST = (AST)currentAST.root; 2118 break; 2119 } 2120 default: 2121 { 2122 throw new NoViableAltException(LT(1), getFilename()); 2123 } 2124 } 2125 returnAST = annotationMemberArrayValueInitializer_AST; 2126 } 2127 2128 public final void conditionalExpression() throws RecognitionException, TokenStreamException { 2129 2130 returnAST = null; 2131 ASTPair currentAST = new ASTPair(); 2132 AST conditionalExpression_AST = null; 2133 2134 logicalOrExpression(); 2135 astFactory.addASTChild(currentAST, returnAST); 2136 { 2137 switch ( LA(1)) { 2138 case QUESTION: 2139 { 2140 AST tmp53_AST = null; 2141 tmp53_AST = astFactory.create(LT(1)); 2142 astFactory.makeASTRoot(currentAST, tmp53_AST); 2143 match(QUESTION); 2144 { 2145 boolean synPredMatched272 = false; 2146 if (((LA(1)==IDENT||LA(1)==LPAREN) && (_tokenSet_15.member(LA(2))))) { 2147 int _m272 = mark(); 2148 synPredMatched272 = true; 2149 inputState.guessing++; 2150 try { 2151 { 2152 lambdaExpression(); 2153 } 2154 } 2155 catch (RecognitionException pe) { 2156 synPredMatched272 = false; 2157 } 2158 rewind(_m272); 2159inputState.guessing--; 2160 } 2161 if ( synPredMatched272 ) { 2162 lambdaExpression(); 2163 astFactory.addASTChild(currentAST, returnAST); 2164 } 2165 else if ((_tokenSet_16.member(LA(1))) && (_tokenSet_17.member(LA(2)))) { 2166 assignmentExpression(); 2167 astFactory.addASTChild(currentAST, returnAST); 2168 } 2169 else { 2170 throw new NoViableAltException(LT(1), getFilename()); 2171 } 2172 2173 } 2174 AST tmp54_AST = null; 2175 tmp54_AST = astFactory.create(LT(1)); 2176 astFactory.addASTChild(currentAST, tmp54_AST); 2177 match(COLON); 2178 { 2179 boolean synPredMatched275 = false; 2180 if (((LA(1)==IDENT||LA(1)==LPAREN) && (_tokenSet_15.member(LA(2))))) { 2181 int _m275 = mark(); 2182 synPredMatched275 = true; 2183 inputState.guessing++; 2184 try { 2185 { 2186 lambdaExpression(); 2187 } 2188 } 2189 catch (RecognitionException pe) { 2190 synPredMatched275 = false; 2191 } 2192 rewind(_m275); 2193inputState.guessing--; 2194 } 2195 if ( synPredMatched275 ) { 2196 lambdaExpression(); 2197 astFactory.addASTChild(currentAST, returnAST); 2198 } 2199 else if ((_tokenSet_16.member(LA(1))) && (_tokenSet_18.member(LA(2)))) { 2200 conditionalExpression(); 2201 astFactory.addASTChild(currentAST, returnAST); 2202 } 2203 else { 2204 throw new NoViableAltException(LT(1), getFilename()); 2205 } 2206 2207 } 2208 break; 2209 } 2210 case FINAL: 2211 case ABSTRACT: 2212 case STRICTFP: 2213 case SEMI: 2214 case RBRACK: 2215 case LITERAL_void: 2216 case LITERAL_boolean: 2217 case LITERAL_byte: 2218 case LITERAL_char: 2219 case LITERAL_short: 2220 case LITERAL_int: 2221 case LITERAL_float: 2222 case LITERAL_long: 2223 case LITERAL_double: 2224 case IDENT: 2225 case LITERAL_private: 2226 case LITERAL_public: 2227 case LITERAL_protected: 2228 case LITERAL_static: 2229 case LITERAL_transient: 2230 case LITERAL_native: 2231 case LITERAL_synchronized: 2232 case LITERAL_volatile: 2233 case LITERAL_class: 2234 case LITERAL_interface: 2235 case LCURLY: 2236 case RCURLY: 2237 case COMMA: 2238 case LPAREN: 2239 case RPAREN: 2240 case LITERAL_this: 2241 case LITERAL_super: 2242 case ASSIGN: 2243 case COLON: 2244 case LITERAL_if: 2245 case LITERAL_while: 2246 case LITERAL_do: 2247 case LITERAL_break: 2248 case LITERAL_continue: 2249 case LITERAL_return: 2250 case LITERAL_switch: 2251 case LITERAL_throw: 2252 case LITERAL_for: 2253 case LITERAL_else: 2254 case LITERAL_case: 2255 case LITERAL_default: 2256 case LITERAL_try: 2257 case PLUS_ASSIGN: 2258 case MINUS_ASSIGN: 2259 case STAR_ASSIGN: 2260 case DIV_ASSIGN: 2261 case MOD_ASSIGN: 2262 case SR_ASSIGN: 2263 case BSR_ASSIGN: 2264 case SL_ASSIGN: 2265 case BAND_ASSIGN: 2266 case BXOR_ASSIGN: 2267 case BOR_ASSIGN: 2268 case LT: 2269 case PLUS: 2270 case MINUS: 2271 case INC: 2272 case DEC: 2273 case BNOT: 2274 case LNOT: 2275 case LITERAL_true: 2276 case LITERAL_false: 2277 case LITERAL_null: 2278 case LITERAL_new: 2279 case NUM_INT: 2280 case CHAR_LITERAL: 2281 case STRING_LITERAL: 2282 case NUM_FLOAT: 2283 case NUM_LONG: 2284 case NUM_DOUBLE: 2285 case ASSERT: 2286 case ENUM: 2287 case AT: 2288 { 2289 break; 2290 } 2291 default: 2292 { 2293 throw new NoViableAltException(LT(1), getFilename()); 2294 } 2295 } 2296 } 2297 conditionalExpression_AST = (AST)currentAST.root; 2298 returnAST = conditionalExpression_AST; 2299 } 2300 2301 public final void typeParameters() throws RecognitionException, TokenStreamException { 2302 2303 returnAST = null; 2304 ASTPair currentAST = new ASTPair(); 2305 AST typeParameters_AST = null; 2306 Token lt = null; 2307 AST lt_AST = null; 2308 int currentLtLevel = 0; 2309 2310 if ( inputState.guessing==0 ) { 2311 currentLtLevel = ltCounter; 2312 } 2313 lt = LT(1); 2314 lt_AST = astFactory.create(lt); 2315 astFactory.addASTChild(currentAST, lt_AST); 2316 match(LT); 2317 if ( inputState.guessing==0 ) { 2318 lt_AST.setType(GENERIC_START); ltCounter++; 2319 } 2320 typeParameter(); 2321 astFactory.addASTChild(currentAST, returnAST); 2322 { 2323 _loop92: 2324 do { 2325 if ((LA(1)==COMMA)) { 2326 AST tmp55_AST = null; 2327 tmp55_AST = astFactory.create(LT(1)); 2328 astFactory.addASTChild(currentAST, tmp55_AST); 2329 match(COMMA); 2330 typeParameter(); 2331 astFactory.addASTChild(currentAST, returnAST); 2332 } 2333 else { 2334 break _loop92; 2335 } 2336 2337 } while (true); 2338 } 2339 { 2340 switch ( LA(1)) { 2341 case GT: 2342 case SR: 2343 case BSR: 2344 { 2345 typeArgumentsOrParametersEnd(); 2346 astFactory.addASTChild(currentAST, returnAST); 2347 break; 2348 } 2349 case LITERAL_void: 2350 case LITERAL_boolean: 2351 case LITERAL_byte: 2352 case LITERAL_char: 2353 case LITERAL_short: 2354 case LITERAL_int: 2355 case LITERAL_float: 2356 case LITERAL_long: 2357 case LITERAL_double: 2358 case IDENT: 2359 case LITERAL_extends: 2360 case LCURLY: 2361 case LITERAL_implements: 2362 case AT: 2363 { 2364 break; 2365 } 2366 default: 2367 { 2368 throw new NoViableAltException(LT(1), getFilename()); 2369 } 2370 } 2371 } 2372 if ( inputState.guessing==0 ) { 2373 2374 if (isThereASingleGtToEmit()) { 2375 astFactory.addASTChild(currentAST, emitSingleGt()); 2376 } 2377 2378 } 2379 if (!(areLtsAndGtsBalanced(currentLtLevel))) 2380 throw new SemanticException("areLtsAndGtsBalanced(currentLtLevel)"); 2381 if ( inputState.guessing==0 ) { 2382 typeParameters_AST = (AST)currentAST.root; 2383 typeParameters_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(TYPE_PARAMETERS,"TYPE_PARAMETERS")).add(typeParameters_AST)); 2384 currentAST.root = typeParameters_AST; 2385 currentAST.child = typeParameters_AST!=null &&typeParameters_AST.getFirstChild()!=null ? 2386 typeParameters_AST.getFirstChild() : typeParameters_AST; 2387 currentAST.advanceChildToEnd(); 2388 } 2389 typeParameters_AST = (AST)currentAST.root; 2390 returnAST = typeParameters_AST; 2391 } 2392 2393 public final void superClassClause() throws RecognitionException, TokenStreamException { 2394 2395 returnAST = null; 2396 ASTPair currentAST = new ASTPair(); 2397 AST superClassClause_AST = null; 2398 Token e = null; 2399 AST e_AST = null; 2400 AST c_AST = null; 2401 2402 { 2403 switch ( LA(1)) { 2404 case LITERAL_extends: 2405 { 2406 e = LT(1); 2407 e_AST = astFactory.create(e); 2408 astFactory.makeASTRoot(currentAST, e_AST); 2409 match(LITERAL_extends); 2410 if ( inputState.guessing==0 ) { 2411 e_AST.setType(EXTENDS_CLAUSE); 2412 } 2413 classOrInterfaceType(false); 2414 c_AST = (AST)returnAST; 2415 astFactory.addASTChild(currentAST, returnAST); 2416 break; 2417 } 2418 case LCURLY: 2419 case LITERAL_implements: 2420 { 2421 break; 2422 } 2423 default: 2424 { 2425 throw new NoViableAltException(LT(1), getFilename()); 2426 } 2427 } 2428 } 2429 superClassClause_AST = (AST)currentAST.root; 2430 returnAST = superClassClause_AST; 2431 } 2432 2433 public final void implementsClause() throws RecognitionException, TokenStreamException { 2434 2435 returnAST = null; 2436 ASTPair currentAST = new ASTPair(); 2437 AST implementsClause_AST = null; 2438 Token i = null; 2439 AST i_AST = null; 2440 2441 { 2442 switch ( LA(1)) { 2443 case LITERAL_implements: 2444 { 2445 i = LT(1); 2446 i_AST = astFactory.create(i); 2447 astFactory.makeASTRoot(currentAST, i_AST); 2448 match(LITERAL_implements); 2449 if ( inputState.guessing==0 ) { 2450 i_AST.setType(IMPLEMENTS_CLAUSE); 2451 } 2452 classOrInterfaceType(false); 2453 astFactory.addASTChild(currentAST, returnAST); 2454 { 2455 _loop138: 2456 do { 2457 if ((LA(1)==COMMA)) { 2458 AST tmp56_AST = null; 2459 tmp56_AST = astFactory.create(LT(1)); 2460 astFactory.addASTChild(currentAST, tmp56_AST); 2461 match(COMMA); 2462 classOrInterfaceType(false); 2463 astFactory.addASTChild(currentAST, returnAST); 2464 } 2465 else { 2466 break _loop138; 2467 } 2468 2469 } while (true); 2470 } 2471 break; 2472 } 2473 case LCURLY: 2474 { 2475 break; 2476 } 2477 default: 2478 { 2479 throw new NoViableAltException(LT(1), getFilename()); 2480 } 2481 } 2482 } 2483 implementsClause_AST = (AST)currentAST.root; 2484 returnAST = implementsClause_AST; 2485 } 2486 2487 public final void classBlock() throws RecognitionException, TokenStreamException { 2488 2489 returnAST = null; 2490 ASTPair currentAST = new ASTPair(); 2491 AST classBlock_AST = null; 2492 2493 AST tmp57_AST = null; 2494 tmp57_AST = astFactory.create(LT(1)); 2495 astFactory.addASTChild(currentAST, tmp57_AST); 2496 match(LCURLY); 2497 { 2498 _loop130: 2499 do { 2500 switch ( LA(1)) { 2501 case FINAL: 2502 case ABSTRACT: 2503 case STRICTFP: 2504 case LITERAL_void: 2505 case LITERAL_boolean: 2506 case LITERAL_byte: 2507 case LITERAL_char: 2508 case LITERAL_short: 2509 case LITERAL_int: 2510 case LITERAL_float: 2511 case LITERAL_long: 2512 case LITERAL_double: 2513 case IDENT: 2514 case LITERAL_private: 2515 case LITERAL_public: 2516 case LITERAL_protected: 2517 case LITERAL_static: 2518 case LITERAL_transient: 2519 case LITERAL_native: 2520 case LITERAL_synchronized: 2521 case LITERAL_volatile: 2522 case LITERAL_class: 2523 case LITERAL_interface: 2524 case LCURLY: 2525 case LITERAL_default: 2526 case LT: 2527 case ENUM: 2528 case AT: 2529 { 2530 field(); 2531 astFactory.addASTChild(currentAST, returnAST); 2532 break; 2533 } 2534 case SEMI: 2535 { 2536 AST tmp58_AST = null; 2537 tmp58_AST = astFactory.create(LT(1)); 2538 astFactory.addASTChild(currentAST, tmp58_AST); 2539 match(SEMI); 2540 break; 2541 } 2542 default: 2543 { 2544 break _loop130; 2545 } 2546 } 2547 } while (true); 2548 } 2549 AST tmp59_AST = null; 2550 tmp59_AST = astFactory.create(LT(1)); 2551 astFactory.addASTChild(currentAST, tmp59_AST); 2552 match(RCURLY); 2553 if ( inputState.guessing==0 ) { 2554 classBlock_AST = (AST)currentAST.root; 2555 classBlock_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(OBJBLOCK,"OBJBLOCK")).add(classBlock_AST)); 2556 currentAST.root = classBlock_AST; 2557 currentAST.child = classBlock_AST!=null &&classBlock_AST.getFirstChild()!=null ? 2558 classBlock_AST.getFirstChild() : classBlock_AST; 2559 currentAST.advanceChildToEnd(); 2560 } 2561 classBlock_AST = (AST)currentAST.root; 2562 returnAST = classBlock_AST; 2563 } 2564 2565 public final void interfaceExtends() throws RecognitionException, TokenStreamException { 2566 2567 returnAST = null; 2568 ASTPair currentAST = new ASTPair(); 2569 AST interfaceExtends_AST = null; 2570 Token e = null; 2571 AST e_AST = null; 2572 2573 { 2574 switch ( LA(1)) { 2575 case LITERAL_extends: 2576 { 2577 e = LT(1); 2578 e_AST = astFactory.create(e); 2579 astFactory.makeASTRoot(currentAST, e_AST); 2580 match(LITERAL_extends); 2581 if ( inputState.guessing==0 ) { 2582 e_AST.setType(EXTENDS_CLAUSE); 2583 } 2584 classOrInterfaceType(false); 2585 astFactory.addASTChild(currentAST, returnAST); 2586 { 2587 _loop134: 2588 do { 2589 if ((LA(1)==COMMA)) { 2590 AST tmp60_AST = null; 2591 tmp60_AST = astFactory.create(LT(1)); 2592 astFactory.addASTChild(currentAST, tmp60_AST); 2593 match(COMMA); 2594 classOrInterfaceType(false); 2595 astFactory.addASTChild(currentAST, returnAST); 2596 } 2597 else { 2598 break _loop134; 2599 } 2600 2601 } while (true); 2602 } 2603 break; 2604 } 2605 case LCURLY: 2606 { 2607 break; 2608 } 2609 default: 2610 { 2611 throw new NoViableAltException(LT(1), getFilename()); 2612 } 2613 } 2614 } 2615 interfaceExtends_AST = (AST)currentAST.root; 2616 returnAST = interfaceExtends_AST; 2617 } 2618 2619 public final void enumBlock() throws RecognitionException, TokenStreamException { 2620 2621 returnAST = null; 2622 ASTPair currentAST = new ASTPair(); 2623 AST enumBlock_AST = null; 2624 2625 AST tmp61_AST = null; 2626 tmp61_AST = astFactory.create(LT(1)); 2627 astFactory.addASTChild(currentAST, tmp61_AST); 2628 match(LCURLY); 2629 { 2630 switch ( LA(1)) { 2631 case IDENT: 2632 case AT: 2633 { 2634 enumConstant(); 2635 astFactory.addASTChild(currentAST, returnAST); 2636 { 2637 _loop111: 2638 do { 2639 if ((LA(1)==COMMA) && (LA(2)==IDENT||LA(2)==AT)) { 2640 AST tmp62_AST = null; 2641 tmp62_AST = astFactory.create(LT(1)); 2642 astFactory.addASTChild(currentAST, tmp62_AST); 2643 match(COMMA); 2644 enumConstant(); 2645 astFactory.addASTChild(currentAST, returnAST); 2646 } 2647 else { 2648 break _loop111; 2649 } 2650 2651 } while (true); 2652 } 2653 { 2654 switch ( LA(1)) { 2655 case COMMA: 2656 { 2657 AST tmp63_AST = null; 2658 tmp63_AST = astFactory.create(LT(1)); 2659 astFactory.addASTChild(currentAST, tmp63_AST); 2660 match(COMMA); 2661 break; 2662 } 2663 case SEMI: 2664 case RCURLY: 2665 { 2666 break; 2667 } 2668 default: 2669 { 2670 throw new NoViableAltException(LT(1), getFilename()); 2671 } 2672 } 2673 } 2674 break; 2675 } 2676 case SEMI: 2677 case RCURLY: 2678 { 2679 break; 2680 } 2681 default: 2682 { 2683 throw new NoViableAltException(LT(1), getFilename()); 2684 } 2685 } 2686 } 2687 { 2688 switch ( LA(1)) { 2689 case SEMI: 2690 { 2691 AST tmp64_AST = null; 2692 tmp64_AST = astFactory.create(LT(1)); 2693 astFactory.addASTChild(currentAST, tmp64_AST); 2694 match(SEMI); 2695 { 2696 _loop115: 2697 do { 2698 switch ( LA(1)) { 2699 case FINAL: 2700 case ABSTRACT: 2701 case STRICTFP: 2702 case LITERAL_void: 2703 case LITERAL_boolean: 2704 case LITERAL_byte: 2705 case LITERAL_char: 2706 case LITERAL_short: 2707 case LITERAL_int: 2708 case LITERAL_float: 2709 case LITERAL_long: 2710 case LITERAL_double: 2711 case IDENT: 2712 case LITERAL_private: 2713 case LITERAL_public: 2714 case LITERAL_protected: 2715 case LITERAL_static: 2716 case LITERAL_transient: 2717 case LITERAL_native: 2718 case LITERAL_synchronized: 2719 case LITERAL_volatile: 2720 case LITERAL_class: 2721 case LITERAL_interface: 2722 case LCURLY: 2723 case LITERAL_default: 2724 case LT: 2725 case ENUM: 2726 case AT: 2727 { 2728 field(); 2729 astFactory.addASTChild(currentAST, returnAST); 2730 break; 2731 } 2732 case SEMI: 2733 { 2734 AST tmp65_AST = null; 2735 tmp65_AST = astFactory.create(LT(1)); 2736 astFactory.addASTChild(currentAST, tmp65_AST); 2737 match(SEMI); 2738 break; 2739 } 2740 default: 2741 { 2742 break _loop115; 2743 } 2744 } 2745 } while (true); 2746 } 2747 break; 2748 } 2749 case RCURLY: 2750 { 2751 break; 2752 } 2753 default: 2754 { 2755 throw new NoViableAltException(LT(1), getFilename()); 2756 } 2757 } 2758 } 2759 AST tmp66_AST = null; 2760 tmp66_AST = astFactory.create(LT(1)); 2761 astFactory.addASTChild(currentAST, tmp66_AST); 2762 match(RCURLY); 2763 if ( inputState.guessing==0 ) { 2764 enumBlock_AST = (AST)currentAST.root; 2765 enumBlock_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(OBJBLOCK,"OBJBLOCK")).add(enumBlock_AST)); 2766 currentAST.root = enumBlock_AST; 2767 currentAST.child = enumBlock_AST!=null &&enumBlock_AST.getFirstChild()!=null ? 2768 enumBlock_AST.getFirstChild() : enumBlock_AST; 2769 currentAST.advanceChildToEnd(); 2770 } 2771 enumBlock_AST = (AST)currentAST.root; 2772 returnAST = enumBlock_AST; 2773 } 2774 2775 public final void annotationBlock() throws RecognitionException, TokenStreamException { 2776 2777 returnAST = null; 2778 ASTPair currentAST = new ASTPair(); 2779 AST annotationBlock_AST = null; 2780 2781 AST tmp67_AST = null; 2782 tmp67_AST = astFactory.create(LT(1)); 2783 astFactory.addASTChild(currentAST, tmp67_AST); 2784 match(LCURLY); 2785 { 2786 _loop102: 2787 do { 2788 switch ( LA(1)) { 2789 case FINAL: 2790 case ABSTRACT: 2791 case STRICTFP: 2792 case LITERAL_void: 2793 case LITERAL_boolean: 2794 case LITERAL_byte: 2795 case LITERAL_char: 2796 case LITERAL_short: 2797 case LITERAL_int: 2798 case LITERAL_float: 2799 case LITERAL_long: 2800 case LITERAL_double: 2801 case IDENT: 2802 case LITERAL_private: 2803 case LITERAL_public: 2804 case LITERAL_protected: 2805 case LITERAL_static: 2806 case LITERAL_transient: 2807 case LITERAL_native: 2808 case LITERAL_synchronized: 2809 case LITERAL_volatile: 2810 case LITERAL_class: 2811 case LITERAL_interface: 2812 case LITERAL_default: 2813 case ENUM: 2814 case AT: 2815 { 2816 annotationField(); 2817 astFactory.addASTChild(currentAST, returnAST); 2818 break; 2819 } 2820 case SEMI: 2821 { 2822 AST tmp68_AST = null; 2823 tmp68_AST = astFactory.create(LT(1)); 2824 astFactory.addASTChild(currentAST, tmp68_AST); 2825 match(SEMI); 2826 break; 2827 } 2828 default: 2829 { 2830 break _loop102; 2831 } 2832 } 2833 } while (true); 2834 } 2835 AST tmp69_AST = null; 2836 tmp69_AST = astFactory.create(LT(1)); 2837 astFactory.addASTChild(currentAST, tmp69_AST); 2838 match(RCURLY); 2839 if ( inputState.guessing==0 ) { 2840 annotationBlock_AST = (AST)currentAST.root; 2841 annotationBlock_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(OBJBLOCK,"OBJBLOCK")).add(annotationBlock_AST)); 2842 currentAST.root = annotationBlock_AST; 2843 currentAST.child = annotationBlock_AST!=null &&annotationBlock_AST.getFirstChild()!=null ? 2844 annotationBlock_AST.getFirstChild() : annotationBlock_AST; 2845 currentAST.advanceChildToEnd(); 2846 } 2847 annotationBlock_AST = (AST)currentAST.root; 2848 returnAST = annotationBlock_AST; 2849 } 2850 2851 public final void typeParameter() throws RecognitionException, TokenStreamException { 2852 2853 returnAST = null; 2854 ASTPair currentAST = new ASTPair(); 2855 AST typeParameter_AST = null; 2856 Token id = null; 2857 AST id_AST = null; 2858 2859 { 2860 id = LT(1); 2861 id_AST = astFactory.create(id); 2862 astFactory.addASTChild(currentAST, id_AST); 2863 match(IDENT); 2864 } 2865 { 2866 if ((LA(1)==LITERAL_extends) && (LA(2)==IDENT||LA(2)==AT)) { 2867 typeParameterBounds(); 2868 astFactory.addASTChild(currentAST, returnAST); 2869 } 2870 else if ((_tokenSet_19.member(LA(1))) && (_tokenSet_20.member(LA(2)))) { 2871 } 2872 else { 2873 throw new NoViableAltException(LT(1), getFilename()); 2874 } 2875 2876 } 2877 if ( inputState.guessing==0 ) { 2878 typeParameter_AST = (AST)currentAST.root; 2879 typeParameter_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(TYPE_PARAMETER,"TYPE_PARAMETER")).add(typeParameter_AST)); 2880 currentAST.root = typeParameter_AST; 2881 currentAST.child = typeParameter_AST!=null &&typeParameter_AST.getFirstChild()!=null ? 2882 typeParameter_AST.getFirstChild() : typeParameter_AST; 2883 currentAST.advanceChildToEnd(); 2884 } 2885 typeParameter_AST = (AST)currentAST.root; 2886 returnAST = typeParameter_AST; 2887 } 2888 2889 public final void typeParameterBounds() throws RecognitionException, TokenStreamException { 2890 2891 returnAST = null; 2892 ASTPair currentAST = new ASTPair(); 2893 AST typeParameterBounds_AST = null; 2894 Token e = null; 2895 AST e_AST = null; 2896 Token b = null; 2897 AST b_AST = null; 2898 2899 e = LT(1); 2900 e_AST = astFactory.create(e); 2901 astFactory.makeASTRoot(currentAST, e_AST); 2902 match(LITERAL_extends); 2903 classOrInterfaceType(true); 2904 astFactory.addASTChild(currentAST, returnAST); 2905 { 2906 _loop99: 2907 do { 2908 if ((LA(1)==BAND)) { 2909 b = LT(1); 2910 b_AST = astFactory.create(b); 2911 astFactory.addASTChild(currentAST, b_AST); 2912 match(BAND); 2913 if ( inputState.guessing==0 ) { 2914 b_AST.setType(TYPE_EXTENSION_AND); 2915 } 2916 classOrInterfaceType(true); 2917 astFactory.addASTChild(currentAST, returnAST); 2918 } 2919 else { 2920 break _loop99; 2921 } 2922 2923 } while (true); 2924 } 2925 if ( inputState.guessing==0 ) { 2926 e_AST.setType(TYPE_UPPER_BOUNDS); 2927 } 2928 typeParameterBounds_AST = (AST)currentAST.root; 2929 returnAST = typeParameterBounds_AST; 2930 } 2931 2932 public final void annotationField() throws RecognitionException, TokenStreamException { 2933 2934 returnAST = null; 2935 ASTPair currentAST = new ASTPair(); 2936 AST annotationField_AST = null; 2937 AST mods_AST = null; 2938 AST td_AST = null; 2939 AST t_AST = null; 2940 Token i = null; 2941 AST i_AST = null; 2942 AST rt_AST = null; 2943 AST d_AST = null; 2944 Token s = null; 2945 AST s_AST = null; 2946 AST v_AST = null; 2947 Token s6 = null; 2948 AST s6_AST = null; 2949 2950 modifiers(); 2951 mods_AST = (AST)returnAST; 2952 { 2953 if ((_tokenSet_21.member(LA(1))) && (LA(2)==IDENT||LA(2)==LITERAL_interface)) { 2954 typeDefinitionInternal(mods_AST); 2955 td_AST = (AST)returnAST; 2956 if ( inputState.guessing==0 ) { 2957 annotationField_AST = (AST)currentAST.root; 2958 annotationField_AST = td_AST; 2959 currentAST.root = annotationField_AST; 2960 currentAST.child = annotationField_AST!=null &&annotationField_AST.getFirstChild()!=null ? 2961 annotationField_AST.getFirstChild() : annotationField_AST; 2962 currentAST.advanceChildToEnd(); 2963 } 2964 } 2965 else if ((_tokenSet_9.member(LA(1))) && (_tokenSet_22.member(LA(2)))) { 2966 typeSpec(false); 2967 t_AST = (AST)returnAST; 2968 { 2969 if ((LA(1)==IDENT) && (LA(2)==LPAREN)) { 2970 i = LT(1); 2971 i_AST = astFactory.create(i); 2972 match(IDENT); 2973 AST tmp70_AST = null; 2974 tmp70_AST = astFactory.create(LT(1)); 2975 match(LPAREN); 2976 AST tmp71_AST = null; 2977 tmp71_AST = astFactory.create(LT(1)); 2978 match(RPAREN); 2979 declaratorBrackets(t_AST); 2980 rt_AST = (AST)returnAST; 2981 { 2982 switch ( LA(1)) { 2983 case LITERAL_default: 2984 { 2985 annotationDefault(); 2986 d_AST = (AST)returnAST; 2987 break; 2988 } 2989 case SEMI: 2990 { 2991 break; 2992 } 2993 default: 2994 { 2995 throw new NoViableAltException(LT(1), getFilename()); 2996 } 2997 } 2998 } 2999 s = LT(1); 3000 s_AST = astFactory.create(s); 3001 match(SEMI); 3002 if ( inputState.guessing==0 ) { 3003 annotationField_AST = (AST)currentAST.root; 3004 annotationField_AST = 3005 (AST)astFactory.make( (new ASTArray(8)).add(astFactory.create(ANNOTATION_FIELD_DEF,"ANNOTATION_FIELD_DEF")).add(mods_AST).add((AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(TYPE,"TYPE")).add(rt_AST))).add(i_AST).add(tmp70_AST).add(tmp71_AST).add(d_AST).add(s_AST)); 3006 currentAST.root = annotationField_AST; 3007 currentAST.child = annotationField_AST!=null &&annotationField_AST.getFirstChild()!=null ? 3008 annotationField_AST.getFirstChild() : annotationField_AST; 3009 currentAST.advanceChildToEnd(); 3010 } 3011 } 3012 else if ((LA(1)==IDENT) && (_tokenSet_23.member(LA(2)))) { 3013 variableDefinitions(mods_AST,t_AST); 3014 v_AST = (AST)returnAST; 3015 s6 = LT(1); 3016 s6_AST = astFactory.create(s6); 3017 match(SEMI); 3018 if ( inputState.guessing==0 ) { 3019 annotationField_AST = (AST)currentAST.root; 3020 3021 annotationField_AST = v_AST; 3022 v_AST.addChild(s6_AST); 3023 3024 currentAST.root = annotationField_AST; 3025 currentAST.child = annotationField_AST!=null &&annotationField_AST.getFirstChild()!=null ? 3026 annotationField_AST.getFirstChild() : annotationField_AST; 3027 currentAST.advanceChildToEnd(); 3028 } 3029 } 3030 else { 3031 throw new NoViableAltException(LT(1), getFilename()); 3032 } 3033 3034 } 3035 } 3036 else { 3037 throw new NoViableAltException(LT(1), getFilename()); 3038 } 3039 3040 } 3041 returnAST = annotationField_AST; 3042 } 3043 3044 public final void declaratorBrackets( 3045 AST typ 3046 ) throws RecognitionException, TokenStreamException { 3047 3048 returnAST = null; 3049 ASTPair currentAST = new ASTPair(); 3050 AST declaratorBrackets_AST = null; 3051 Token lb = null; 3052 AST lb_AST = null; 3053 3054 if ( inputState.guessing==0 ) { 3055 declaratorBrackets_AST = (AST)currentAST.root; 3056 declaratorBrackets_AST=typ; 3057 currentAST.root = declaratorBrackets_AST; 3058 currentAST.child = declaratorBrackets_AST!=null &&declaratorBrackets_AST.getFirstChild()!=null ? 3059 declaratorBrackets_AST.getFirstChild() : declaratorBrackets_AST; 3060 currentAST.advanceChildToEnd(); 3061 } 3062 { 3063 _loop164: 3064 do { 3065 if ((LA(1)==LBRACK)) { 3066 lb = LT(1); 3067 lb_AST = astFactory.create(lb); 3068 astFactory.makeASTRoot(currentAST, lb_AST); 3069 match(LBRACK); 3070 if ( inputState.guessing==0 ) { 3071 lb_AST.setType(ARRAY_DECLARATOR); 3072 } 3073 AST tmp72_AST = null; 3074 tmp72_AST = astFactory.create(LT(1)); 3075 astFactory.addASTChild(currentAST, tmp72_AST); 3076 match(RBRACK); 3077 } 3078 else { 3079 break _loop164; 3080 } 3081 3082 } while (true); 3083 } 3084 declaratorBrackets_AST = (AST)currentAST.root; 3085 returnAST = declaratorBrackets_AST; 3086 } 3087 3088 public final void annotationDefault() throws RecognitionException, TokenStreamException { 3089 3090 returnAST = null; 3091 ASTPair currentAST = new ASTPair(); 3092 AST annotationDefault_AST = null; 3093 3094 AST tmp73_AST = null; 3095 tmp73_AST = astFactory.create(LT(1)); 3096 astFactory.makeASTRoot(currentAST, tmp73_AST); 3097 match(LITERAL_default); 3098 annotationMemberValueInitializer(); 3099 astFactory.addASTChild(currentAST, returnAST); 3100 annotationDefault_AST = (AST)currentAST.root; 3101 returnAST = annotationDefault_AST; 3102 } 3103 3104 public final void enumConstant() throws RecognitionException, TokenStreamException { 3105 3106 returnAST = null; 3107 ASTPair currentAST = new ASTPair(); 3108 AST enumConstant_AST = null; 3109 AST an_AST = null; 3110 Token i = null; 3111 AST i_AST = null; 3112 Token l = null; 3113 AST l_AST = null; 3114 AST args_AST = null; 3115 Token r = null; 3116 AST r_AST = null; 3117 AST b_AST = null; 3118 3119 annotations(); 3120 an_AST = (AST)returnAST; 3121 i = LT(1); 3122 i_AST = astFactory.create(i); 3123 match(IDENT); 3124 { 3125 switch ( LA(1)) { 3126 case LPAREN: 3127 { 3128 l = LT(1); 3129 l_AST = astFactory.create(l); 3130 match(LPAREN); 3131 argList(); 3132 args_AST = (AST)returnAST; 3133 r = LT(1); 3134 r_AST = astFactory.create(r); 3135 match(RPAREN); 3136 break; 3137 } 3138 case SEMI: 3139 case LCURLY: 3140 case RCURLY: 3141 case COMMA: 3142 { 3143 break; 3144 } 3145 default: 3146 { 3147 throw new NoViableAltException(LT(1), getFilename()); 3148 } 3149 } 3150 } 3151 { 3152 switch ( LA(1)) { 3153 case LCURLY: 3154 { 3155 enumConstantBlock(); 3156 b_AST = (AST)returnAST; 3157 break; 3158 } 3159 case SEMI: 3160 case RCURLY: 3161 case COMMA: 3162 { 3163 break; 3164 } 3165 default: 3166 { 3167 throw new NoViableAltException(LT(1), getFilename()); 3168 } 3169 } 3170 } 3171 if ( inputState.guessing==0 ) { 3172 enumConstant_AST = (AST)currentAST.root; 3173 enumConstant_AST = (AST)astFactory.make( (new ASTArray(7)).add(astFactory.create(ENUM_CONSTANT_DEF,"ENUM_CONSTANT_DEF")).add(an_AST).add(i_AST).add(l_AST).add(args_AST).add(r_AST).add(b_AST)); 3174 currentAST.root = enumConstant_AST; 3175 currentAST.child = enumConstant_AST!=null &&enumConstant_AST.getFirstChild()!=null ? 3176 enumConstant_AST.getFirstChild() : enumConstant_AST; 3177 currentAST.advanceChildToEnd(); 3178 } 3179 returnAST = enumConstant_AST; 3180 } 3181 3182 public final void field() throws RecognitionException, TokenStreamException { 3183 3184 returnAST = null; 3185 ASTPair currentAST = new ASTPair(); 3186 AST field_AST = null; 3187 AST mods_AST = null; 3188 AST td_AST = null; 3189 AST tp_AST = null; 3190 AST h_AST = null; 3191 AST s_AST = null; 3192 AST t_AST = null; 3193 AST param_AST = null; 3194 AST rt_AST = null; 3195 AST tc_AST = null; 3196 AST s2_AST = null; 3197 Token s5 = null; 3198 AST s5_AST = null; 3199 AST v_AST = null; 3200 Token s6 = null; 3201 AST s6_AST = null; 3202 Token si = null; 3203 AST si_AST = null; 3204 AST s3_AST = null; 3205 AST s4_AST = null; 3206 3207 if ((_tokenSet_24.member(LA(1))) && (_tokenSet_25.member(LA(2)))) { 3208 modifiers(); 3209 mods_AST = (AST)returnAST; 3210 { 3211 if ((_tokenSet_21.member(LA(1))) && (LA(2)==IDENT||LA(2)==LITERAL_interface)) { 3212 typeDefinitionInternal(mods_AST); 3213 td_AST = (AST)returnAST; 3214 if ( inputState.guessing==0 ) { 3215 field_AST = (AST)currentAST.root; 3216 field_AST = td_AST; 3217 currentAST.root = field_AST; 3218 currentAST.child = field_AST!=null &&field_AST.getFirstChild()!=null ? 3219 field_AST.getFirstChild() : field_AST; 3220 currentAST.advanceChildToEnd(); 3221 } 3222 } 3223 else if ((_tokenSet_26.member(LA(1))) && (_tokenSet_27.member(LA(2)))) { 3224 { 3225 switch ( LA(1)) { 3226 case LT: 3227 { 3228 typeParameters(); 3229 tp_AST = (AST)returnAST; 3230 break; 3231 } 3232 case LITERAL_void: 3233 case LITERAL_boolean: 3234 case LITERAL_byte: 3235 case LITERAL_char: 3236 case LITERAL_short: 3237 case LITERAL_int: 3238 case LITERAL_float: 3239 case LITERAL_long: 3240 case LITERAL_double: 3241 case IDENT: 3242 case AT: 3243 { 3244 break; 3245 } 3246 default: 3247 { 3248 throw new NoViableAltException(LT(1), getFilename()); 3249 } 3250 } 3251 } 3252 { 3253 if ((LA(1)==IDENT) && (LA(2)==LPAREN)) { 3254 ctorHead(); 3255 h_AST = (AST)returnAST; 3256 constructorBody(); 3257 s_AST = (AST)returnAST; 3258 if ( inputState.guessing==0 ) { 3259 field_AST = (AST)currentAST.root; 3260 field_AST = (AST)astFactory.make( (new ASTArray(5)).add(astFactory.create(CTOR_DEF,"CTOR_DEF")).add(mods_AST).add(tp_AST).add(h_AST).add(s_AST)); 3261 currentAST.root = field_AST; 3262 currentAST.child = field_AST!=null &&field_AST.getFirstChild()!=null ? 3263 field_AST.getFirstChild() : field_AST; 3264 currentAST.advanceChildToEnd(); 3265 } 3266 } 3267 else if ((_tokenSet_9.member(LA(1))) && (_tokenSet_22.member(LA(2)))) { 3268 typeSpec(false); 3269 t_AST = (AST)returnAST; 3270 { 3271 if ((LA(1)==IDENT) && (LA(2)==LPAREN)) { 3272 AST tmp74_AST = null; 3273 tmp74_AST = astFactory.create(LT(1)); 3274 match(IDENT); 3275 AST tmp75_AST = null; 3276 tmp75_AST = astFactory.create(LT(1)); 3277 match(LPAREN); 3278 parameterDeclarationList(); 3279 param_AST = (AST)returnAST; 3280 AST tmp76_AST = null; 3281 tmp76_AST = astFactory.create(LT(1)); 3282 match(RPAREN); 3283 declaratorBrackets(t_AST); 3284 rt_AST = (AST)returnAST; 3285 { 3286 switch ( LA(1)) { 3287 case LITERAL_throws: 3288 { 3289 throwsClause(); 3290 tc_AST = (AST)returnAST; 3291 break; 3292 } 3293 case SEMI: 3294 case LCURLY: 3295 { 3296 break; 3297 } 3298 default: 3299 { 3300 throw new NoViableAltException(LT(1), getFilename()); 3301 } 3302 } 3303 } 3304 { 3305 switch ( LA(1)) { 3306 case LCURLY: 3307 { 3308 compoundStatement(); 3309 s2_AST = (AST)returnAST; 3310 break; 3311 } 3312 case SEMI: 3313 { 3314 s5 = LT(1); 3315 s5_AST = astFactory.create(s5); 3316 match(SEMI); 3317 break; 3318 } 3319 default: 3320 { 3321 throw new NoViableAltException(LT(1), getFilename()); 3322 } 3323 } 3324 } 3325 if ( inputState.guessing==0 ) { 3326 field_AST = (AST)currentAST.root; 3327 field_AST = (AST)astFactory.make( (new ASTArray(11)).add(astFactory.create(METHOD_DEF,"METHOD_DEF")).add(mods_AST).add(tp_AST).add((AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(TYPE,"TYPE")).add(rt_AST))).add(tmp74_AST).add(tmp75_AST).add(param_AST).add(tmp76_AST).add(tc_AST).add(s2_AST).add(s5_AST)); 3328 currentAST.root = field_AST; 3329 currentAST.child = field_AST!=null &&field_AST.getFirstChild()!=null ? 3330 field_AST.getFirstChild() : field_AST; 3331 currentAST.advanceChildToEnd(); 3332 } 3333 } 3334 else if ((LA(1)==IDENT) && (_tokenSet_28.member(LA(2)))) { 3335 variableDefinitions(mods_AST,t_AST); 3336 v_AST = (AST)returnAST; 3337 { 3338 if ((LA(1)==SEMI) && (_tokenSet_29.member(LA(2)))) { 3339 s6 = LT(1); 3340 s6_AST = astFactory.create(s6); 3341 match(SEMI); 3342 } 3343 else if ((_tokenSet_29.member(LA(1))) && (_tokenSet_30.member(LA(2)))) { 3344 } 3345 else { 3346 throw new NoViableAltException(LT(1), getFilename()); 3347 } 3348 3349 } 3350 if ( inputState.guessing==0 ) { 3351 field_AST = (AST)currentAST.root; 3352 3353 field_AST = v_AST; 3354 v_AST.addChild(s6_AST); 3355 3356 currentAST.root = field_AST; 3357 currentAST.child = field_AST!=null &&field_AST.getFirstChild()!=null ? 3358 field_AST.getFirstChild() : field_AST; 3359 currentAST.advanceChildToEnd(); 3360 } 3361 } 3362 else { 3363 throw new NoViableAltException(LT(1), getFilename()); 3364 } 3365 3366 } 3367 } 3368 else { 3369 throw new NoViableAltException(LT(1), getFilename()); 3370 } 3371 3372 } 3373 } 3374 else { 3375 throw new NoViableAltException(LT(1), getFilename()); 3376 } 3377 3378 } 3379 } 3380 else if ((LA(1)==LITERAL_static) && (LA(2)==LCURLY)) { 3381 si = LT(1); 3382 si_AST = astFactory.create(si); 3383 match(LITERAL_static); 3384 compoundStatement(); 3385 s3_AST = (AST)returnAST; 3386 if ( inputState.guessing==0 ) { 3387 field_AST = (AST)currentAST.root; 3388 si_AST.setType(STATIC_INIT); 3389 si_AST.setText("STATIC_INIT"); 3390 field_AST = (AST)astFactory.make( (new ASTArray(2)).add(si_AST).add(s3_AST)); 3391 currentAST.root = field_AST; 3392 currentAST.child = field_AST!=null &&field_AST.getFirstChild()!=null ? 3393 field_AST.getFirstChild() : field_AST; 3394 currentAST.advanceChildToEnd(); 3395 } 3396 } 3397 else if ((LA(1)==LCURLY)) { 3398 compoundStatement(); 3399 s4_AST = (AST)returnAST; 3400 if ( inputState.guessing==0 ) { 3401 field_AST = (AST)currentAST.root; 3402 field_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(INSTANCE_INIT,"INSTANCE_INIT")).add(s4_AST)); 3403 currentAST.root = field_AST; 3404 currentAST.child = field_AST!=null &&field_AST.getFirstChild()!=null ? 3405 field_AST.getFirstChild() : field_AST; 3406 currentAST.advanceChildToEnd(); 3407 } 3408 } 3409 else { 3410 throw new NoViableAltException(LT(1), getFilename()); 3411 } 3412 3413 returnAST = field_AST; 3414 } 3415 3416 public final void argList() throws RecognitionException, TokenStreamException { 3417 3418 returnAST = null; 3419 ASTPair currentAST = new ASTPair(); 3420 AST argList_AST = null; 3421 3422 { 3423 if (((_tokenSet_16.member(LA(1))))&&(LA(1)!=RPAREN)) { 3424 expressionList(); 3425 astFactory.addASTChild(currentAST, returnAST); 3426 } 3427 else if ((LA(1)==RPAREN)) { 3428 if ( inputState.guessing==0 ) { 3429 argList_AST = (AST)currentAST.root; 3430 argList_AST = astFactory.create(ELIST,"ELIST"); 3431 currentAST.root = argList_AST; 3432 currentAST.child = argList_AST!=null &&argList_AST.getFirstChild()!=null ? 3433 argList_AST.getFirstChild() : argList_AST; 3434 currentAST.advanceChildToEnd(); 3435 } 3436 } 3437 else { 3438 throw new NoViableAltException(LT(1), getFilename()); 3439 } 3440 3441 } 3442 argList_AST = (AST)currentAST.root; 3443 returnAST = argList_AST; 3444 } 3445 3446 public final void enumConstantBlock() throws RecognitionException, TokenStreamException { 3447 3448 returnAST = null; 3449 ASTPair currentAST = new ASTPair(); 3450 AST enumConstantBlock_AST = null; 3451 3452 AST tmp77_AST = null; 3453 tmp77_AST = astFactory.create(LT(1)); 3454 astFactory.addASTChild(currentAST, tmp77_AST); 3455 match(LCURLY); 3456 { 3457 _loop121: 3458 do { 3459 switch ( LA(1)) { 3460 case FINAL: 3461 case ABSTRACT: 3462 case STRICTFP: 3463 case LITERAL_void: 3464 case LITERAL_boolean: 3465 case LITERAL_byte: 3466 case LITERAL_char: 3467 case LITERAL_short: 3468 case LITERAL_int: 3469 case LITERAL_float: 3470 case LITERAL_long: 3471 case LITERAL_double: 3472 case IDENT: 3473 case LITERAL_private: 3474 case LITERAL_public: 3475 case LITERAL_protected: 3476 case LITERAL_static: 3477 case LITERAL_transient: 3478 case LITERAL_native: 3479 case LITERAL_synchronized: 3480 case LITERAL_volatile: 3481 case LITERAL_class: 3482 case LITERAL_interface: 3483 case LCURLY: 3484 case LITERAL_default: 3485 case LT: 3486 case ENUM: 3487 case AT: 3488 { 3489 enumConstantField(); 3490 astFactory.addASTChild(currentAST, returnAST); 3491 break; 3492 } 3493 case SEMI: 3494 { 3495 AST tmp78_AST = null; 3496 tmp78_AST = astFactory.create(LT(1)); 3497 astFactory.addASTChild(currentAST, tmp78_AST); 3498 match(SEMI); 3499 break; 3500 } 3501 default: 3502 { 3503 break _loop121; 3504 } 3505 } 3506 } while (true); 3507 } 3508 AST tmp79_AST = null; 3509 tmp79_AST = astFactory.create(LT(1)); 3510 astFactory.addASTChild(currentAST, tmp79_AST); 3511 match(RCURLY); 3512 if ( inputState.guessing==0 ) { 3513 enumConstantBlock_AST = (AST)currentAST.root; 3514 enumConstantBlock_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(OBJBLOCK,"OBJBLOCK")).add(enumConstantBlock_AST)); 3515 currentAST.root = enumConstantBlock_AST; 3516 currentAST.child = enumConstantBlock_AST!=null &&enumConstantBlock_AST.getFirstChild()!=null ? 3517 enumConstantBlock_AST.getFirstChild() : enumConstantBlock_AST; 3518 currentAST.advanceChildToEnd(); 3519 } 3520 enumConstantBlock_AST = (AST)currentAST.root; 3521 returnAST = enumConstantBlock_AST; 3522 } 3523 3524 public final void enumConstantField() throws RecognitionException, TokenStreamException { 3525 3526 returnAST = null; 3527 ASTPair currentAST = new ASTPair(); 3528 AST enumConstantField_AST = null; 3529 AST mods_AST = null; 3530 AST td_AST = null; 3531 AST tp_AST = null; 3532 AST t_AST = null; 3533 AST param_AST = null; 3534 AST rt_AST = null; 3535 AST tc_AST = null; 3536 AST s2_AST = null; 3537 Token s3 = null; 3538 AST s3_AST = null; 3539 AST v_AST = null; 3540 Token s6 = null; 3541 AST s6_AST = null; 3542 AST s4_AST = null; 3543 3544 switch ( LA(1)) { 3545 case FINAL: 3546 case ABSTRACT: 3547 case STRICTFP: 3548 case LITERAL_void: 3549 case LITERAL_boolean: 3550 case LITERAL_byte: 3551 case LITERAL_char: 3552 case LITERAL_short: 3553 case LITERAL_int: 3554 case LITERAL_float: 3555 case LITERAL_long: 3556 case LITERAL_double: 3557 case IDENT: 3558 case LITERAL_private: 3559 case LITERAL_public: 3560 case LITERAL_protected: 3561 case LITERAL_static: 3562 case LITERAL_transient: 3563 case LITERAL_native: 3564 case LITERAL_synchronized: 3565 case LITERAL_volatile: 3566 case LITERAL_class: 3567 case LITERAL_interface: 3568 case LITERAL_default: 3569 case LT: 3570 case ENUM: 3571 case AT: 3572 { 3573 modifiers(); 3574 mods_AST = (AST)returnAST; 3575 { 3576 if ((_tokenSet_21.member(LA(1))) && (LA(2)==IDENT||LA(2)==LITERAL_interface)) { 3577 typeDefinitionInternal(mods_AST); 3578 td_AST = (AST)returnAST; 3579 if ( inputState.guessing==0 ) { 3580 enumConstantField_AST = (AST)currentAST.root; 3581 enumConstantField_AST = td_AST; 3582 currentAST.root = enumConstantField_AST; 3583 currentAST.child = enumConstantField_AST!=null &&enumConstantField_AST.getFirstChild()!=null ? 3584 enumConstantField_AST.getFirstChild() : enumConstantField_AST; 3585 currentAST.advanceChildToEnd(); 3586 } 3587 } 3588 else if ((_tokenSet_26.member(LA(1))) && (_tokenSet_22.member(LA(2)))) { 3589 { 3590 switch ( LA(1)) { 3591 case LT: 3592 { 3593 typeParameters(); 3594 tp_AST = (AST)returnAST; 3595 break; 3596 } 3597 case LITERAL_void: 3598 case LITERAL_boolean: 3599 case LITERAL_byte: 3600 case LITERAL_char: 3601 case LITERAL_short: 3602 case LITERAL_int: 3603 case LITERAL_float: 3604 case LITERAL_long: 3605 case LITERAL_double: 3606 case IDENT: 3607 case AT: 3608 { 3609 break; 3610 } 3611 default: 3612 { 3613 throw new NoViableAltException(LT(1), getFilename()); 3614 } 3615 } 3616 } 3617 typeSpec(false); 3618 t_AST = (AST)returnAST; 3619 { 3620 if ((LA(1)==IDENT) && (LA(2)==LPAREN)) { 3621 AST tmp80_AST = null; 3622 tmp80_AST = astFactory.create(LT(1)); 3623 match(IDENT); 3624 AST tmp81_AST = null; 3625 tmp81_AST = astFactory.create(LT(1)); 3626 match(LPAREN); 3627 parameterDeclarationList(); 3628 param_AST = (AST)returnAST; 3629 AST tmp82_AST = null; 3630 tmp82_AST = astFactory.create(LT(1)); 3631 match(RPAREN); 3632 declaratorBrackets(t_AST); 3633 rt_AST = (AST)returnAST; 3634 { 3635 switch ( LA(1)) { 3636 case LITERAL_throws: 3637 { 3638 throwsClause(); 3639 tc_AST = (AST)returnAST; 3640 break; 3641 } 3642 case SEMI: 3643 case LCURLY: 3644 { 3645 break; 3646 } 3647 default: 3648 { 3649 throw new NoViableAltException(LT(1), getFilename()); 3650 } 3651 } 3652 } 3653 { 3654 switch ( LA(1)) { 3655 case LCURLY: 3656 { 3657 compoundStatement(); 3658 s2_AST = (AST)returnAST; 3659 break; 3660 } 3661 case SEMI: 3662 { 3663 s3 = LT(1); 3664 s3_AST = astFactory.create(s3); 3665 match(SEMI); 3666 break; 3667 } 3668 default: 3669 { 3670 throw new NoViableAltException(LT(1), getFilename()); 3671 } 3672 } 3673 } 3674 if ( inputState.guessing==0 ) { 3675 enumConstantField_AST = (AST)currentAST.root; 3676 enumConstantField_AST = (AST)astFactory.make( (new ASTArray(11)).add(astFactory.create(METHOD_DEF,"METHOD_DEF")).add(mods_AST).add(tp_AST).add((AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(TYPE,"TYPE")).add(rt_AST))).add(tmp80_AST).add(tmp81_AST).add(param_AST).add(tmp82_AST).add(tc_AST).add(s2_AST).add(s3_AST)); 3677 currentAST.root = enumConstantField_AST; 3678 currentAST.child = enumConstantField_AST!=null &&enumConstantField_AST.getFirstChild()!=null ? 3679 enumConstantField_AST.getFirstChild() : enumConstantField_AST; 3680 currentAST.advanceChildToEnd(); 3681 } 3682 } 3683 else if ((LA(1)==IDENT) && (_tokenSet_23.member(LA(2)))) { 3684 variableDefinitions(mods_AST,t_AST); 3685 v_AST = (AST)returnAST; 3686 s6 = LT(1); 3687 s6_AST = astFactory.create(s6); 3688 match(SEMI); 3689 if ( inputState.guessing==0 ) { 3690 enumConstantField_AST = (AST)currentAST.root; 3691 3692 enumConstantField_AST = v_AST; 3693 v_AST.addChild(s6_AST); 3694 3695 currentAST.root = enumConstantField_AST; 3696 currentAST.child = enumConstantField_AST!=null &&enumConstantField_AST.getFirstChild()!=null ? 3697 enumConstantField_AST.getFirstChild() : enumConstantField_AST; 3698 currentAST.advanceChildToEnd(); 3699 } 3700 } 3701 else { 3702 throw new NoViableAltException(LT(1), getFilename()); 3703 } 3704 3705 } 3706 } 3707 else { 3708 throw new NoViableAltException(LT(1), getFilename()); 3709 } 3710 3711 } 3712 break; 3713 } 3714 case LCURLY: 3715 { 3716 compoundStatement(); 3717 s4_AST = (AST)returnAST; 3718 if ( inputState.guessing==0 ) { 3719 enumConstantField_AST = (AST)currentAST.root; 3720 enumConstantField_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(INSTANCE_INIT,"INSTANCE_INIT")).add(s4_AST)); 3721 currentAST.root = enumConstantField_AST; 3722 currentAST.child = enumConstantField_AST!=null &&enumConstantField_AST.getFirstChild()!=null ? 3723 enumConstantField_AST.getFirstChild() : enumConstantField_AST; 3724 currentAST.advanceChildToEnd(); 3725 } 3726 break; 3727 } 3728 default: 3729 { 3730 throw new NoViableAltException(LT(1), getFilename()); 3731 } 3732 } 3733 returnAST = enumConstantField_AST; 3734 } 3735 3736 public final void parameterDeclarationList() throws RecognitionException, TokenStreamException { 3737 3738 returnAST = null; 3739 ASTPair currentAST = new ASTPair(); 3740 AST parameterDeclarationList_AST = null; 3741 3742 { 3743 boolean synPredMatched182 = false; 3744 if (((_tokenSet_31.member(LA(1))) && (_tokenSet_32.member(LA(2))))) { 3745 int _m182 = mark(); 3746 synPredMatched182 = true; 3747 inputState.guessing++; 3748 try { 3749 { 3750 parameterDeclaration(); 3751 } 3752 } 3753 catch (RecognitionException pe) { 3754 synPredMatched182 = false; 3755 } 3756 rewind(_m182); 3757inputState.guessing--; 3758 } 3759 if ( synPredMatched182 ) { 3760 parameterDeclaration(); 3761 astFactory.addASTChild(currentAST, returnAST); 3762 { 3763 _loop186: 3764 do { 3765 boolean synPredMatched185 = false; 3766 if (((LA(1)==COMMA) && (_tokenSet_31.member(LA(2))))) { 3767 int _m185 = mark(); 3768 synPredMatched185 = true; 3769 inputState.guessing++; 3770 try { 3771 { 3772 match(COMMA); 3773 parameterDeclaration(); 3774 } 3775 } 3776 catch (RecognitionException pe) { 3777 synPredMatched185 = false; 3778 } 3779 rewind(_m185); 3780inputState.guessing--; 3781 } 3782 if ( synPredMatched185 ) { 3783 AST tmp83_AST = null; 3784 tmp83_AST = astFactory.create(LT(1)); 3785 astFactory.addASTChild(currentAST, tmp83_AST); 3786 match(COMMA); 3787 parameterDeclaration(); 3788 astFactory.addASTChild(currentAST, returnAST); 3789 } 3790 else { 3791 break _loop186; 3792 } 3793 3794 } while (true); 3795 } 3796 { 3797 switch ( LA(1)) { 3798 case COMMA: 3799 { 3800 AST tmp84_AST = null; 3801 tmp84_AST = astFactory.create(LT(1)); 3802 astFactory.addASTChild(currentAST, tmp84_AST); 3803 match(COMMA); 3804 variableLengthParameterDeclaration(); 3805 astFactory.addASTChild(currentAST, returnAST); 3806 break; 3807 } 3808 case RPAREN: 3809 { 3810 break; 3811 } 3812 default: 3813 { 3814 throw new NoViableAltException(LT(1), getFilename()); 3815 } 3816 } 3817 } 3818 } 3819 else if ((_tokenSet_31.member(LA(1))) && (_tokenSet_33.member(LA(2)))) { 3820 variableLengthParameterDeclaration(); 3821 astFactory.addASTChild(currentAST, returnAST); 3822 } 3823 else if ((LA(1)==RPAREN)) { 3824 } 3825 else { 3826 throw new NoViableAltException(LT(1), getFilename()); 3827 } 3828 3829 } 3830 if ( inputState.guessing==0 ) { 3831 parameterDeclarationList_AST = (AST)currentAST.root; 3832 parameterDeclarationList_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(PARAMETERS,"PARAMETERS")).add(parameterDeclarationList_AST)); 3833 currentAST.root = parameterDeclarationList_AST; 3834 currentAST.child = parameterDeclarationList_AST!=null &¶meterDeclarationList_AST.getFirstChild()!=null ? 3835 parameterDeclarationList_AST.getFirstChild() : parameterDeclarationList_AST; 3836 currentAST.advanceChildToEnd(); 3837 } 3838 parameterDeclarationList_AST = (AST)currentAST.root; 3839 returnAST = parameterDeclarationList_AST; 3840 } 3841 3842 public final void throwsClause() throws RecognitionException, TokenStreamException { 3843 3844 returnAST = null; 3845 ASTPair currentAST = new ASTPair(); 3846 AST throwsClause_AST = null; 3847 3848 AST tmp85_AST = null; 3849 tmp85_AST = astFactory.create(LT(1)); 3850 astFactory.makeASTRoot(currentAST, tmp85_AST); 3851 match(LITERAL_throws); 3852 { 3853 if (((LA(1)==IDENT||LA(1)==AT) && (_tokenSet_34.member(LA(2))))&&(LA(1) == AT)) { 3854 annotations(); 3855 astFactory.addASTChild(currentAST, returnAST); 3856 } 3857 else if ((LA(1)==IDENT) && (_tokenSet_35.member(LA(2)))) { 3858 } 3859 else { 3860 throw new NoViableAltException(LT(1), getFilename()); 3861 } 3862 3863 } 3864 identifier(); 3865 astFactory.addASTChild(currentAST, returnAST); 3866 { 3867 _loop178: 3868 do { 3869 if ((LA(1)==COMMA)) { 3870 AST tmp86_AST = null; 3871 tmp86_AST = astFactory.create(LT(1)); 3872 astFactory.addASTChild(currentAST, tmp86_AST); 3873 match(COMMA); 3874 identifier(); 3875 astFactory.addASTChild(currentAST, returnAST); 3876 } 3877 else { 3878 break _loop178; 3879 } 3880 3881 } while (true); 3882 } 3883 throwsClause_AST = (AST)currentAST.root; 3884 returnAST = throwsClause_AST; 3885 } 3886 3887 public final void compoundStatement() throws RecognitionException, TokenStreamException { 3888 3889 returnAST = null; 3890 ASTPair currentAST = new ASTPair(); 3891 AST compoundStatement_AST = null; 3892 Token lc = null; 3893 AST lc_AST = null; 3894 3895 lc = LT(1); 3896 lc_AST = astFactory.create(lc); 3897 astFactory.makeASTRoot(currentAST, lc_AST); 3898 match(LCURLY); 3899 if ( inputState.guessing==0 ) { 3900 lc_AST.setType(SLIST); 3901 } 3902 { 3903 _loop203: 3904 do { 3905 if ((_tokenSet_36.member(LA(1)))) { 3906 statement(); 3907 astFactory.addASTChild(currentAST, returnAST); 3908 } 3909 else { 3910 break _loop203; 3911 } 3912 3913 } while (true); 3914 } 3915 AST tmp87_AST = null; 3916 tmp87_AST = astFactory.create(LT(1)); 3917 astFactory.addASTChild(currentAST, tmp87_AST); 3918 match(RCURLY); 3919 compoundStatement_AST = (AST)currentAST.root; 3920 returnAST = compoundStatement_AST; 3921 } 3922 3923 public final void ctorHead() throws RecognitionException, TokenStreamException { 3924 3925 returnAST = null; 3926 ASTPair currentAST = new ASTPair(); 3927 AST ctorHead_AST = null; 3928 3929 AST tmp88_AST = null; 3930 tmp88_AST = astFactory.create(LT(1)); 3931 astFactory.addASTChild(currentAST, tmp88_AST); 3932 match(IDENT); 3933 AST tmp89_AST = null; 3934 tmp89_AST = astFactory.create(LT(1)); 3935 astFactory.addASTChild(currentAST, tmp89_AST); 3936 match(LPAREN); 3937 parameterDeclarationList(); 3938 astFactory.addASTChild(currentAST, returnAST); 3939 AST tmp90_AST = null; 3940 tmp90_AST = astFactory.create(LT(1)); 3941 astFactory.addASTChild(currentAST, tmp90_AST); 3942 match(RPAREN); 3943 { 3944 switch ( LA(1)) { 3945 case LITERAL_throws: 3946 { 3947 throwsClause(); 3948 astFactory.addASTChild(currentAST, returnAST); 3949 break; 3950 } 3951 case LCURLY: 3952 { 3953 break; 3954 } 3955 default: 3956 { 3957 throw new NoViableAltException(LT(1), getFilename()); 3958 } 3959 } 3960 } 3961 ctorHead_AST = (AST)currentAST.root; 3962 returnAST = ctorHead_AST; 3963 } 3964 3965 public final void constructorBody() throws RecognitionException, TokenStreamException { 3966 3967 returnAST = null; 3968 ASTPair currentAST = new ASTPair(); 3969 AST constructorBody_AST = null; 3970 Token lc = null; 3971 AST lc_AST = null; 3972 3973 lc = LT(1); 3974 lc_AST = astFactory.create(lc); 3975 astFactory.makeASTRoot(currentAST, lc_AST); 3976 match(LCURLY); 3977 if ( inputState.guessing==0 ) { 3978 lc_AST.setType(SLIST); 3979 } 3980 { 3981 boolean synPredMatched150 = false; 3982 if (((_tokenSet_37.member(LA(1))) && (_tokenSet_38.member(LA(2))))) { 3983 int _m150 = mark(); 3984 synPredMatched150 = true; 3985 inputState.guessing++; 3986 try { 3987 { 3988 explicitConstructorInvocation(); 3989 } 3990 } 3991 catch (RecognitionException pe) { 3992 synPredMatched150 = false; 3993 } 3994 rewind(_m150); 3995inputState.guessing--; 3996 } 3997 if ( synPredMatched150 ) { 3998 explicitConstructorInvocation(); 3999 astFactory.addASTChild(currentAST, returnAST); 4000 } 4001 else if ((_tokenSet_39.member(LA(1))) && (_tokenSet_40.member(LA(2)))) { 4002 } 4003 else { 4004 throw new NoViableAltException(LT(1), getFilename()); 4005 } 4006 4007 } 4008 { 4009 _loop152: 4010 do { 4011 if ((_tokenSet_36.member(LA(1)))) { 4012 statement(); 4013 astFactory.addASTChild(currentAST, returnAST); 4014 } 4015 else { 4016 break _loop152; 4017 } 4018 4019 } while (true); 4020 } 4021 AST tmp91_AST = null; 4022 tmp91_AST = astFactory.create(LT(1)); 4023 astFactory.addASTChild(currentAST, tmp91_AST); 4024 match(RCURLY); 4025 constructorBody_AST = (AST)currentAST.root; 4026 returnAST = constructorBody_AST; 4027 } 4028 4029 public final void explicitConstructorInvocation() throws RecognitionException, TokenStreamException { 4030 4031 returnAST = null; 4032 ASTPair currentAST = new ASTPair(); 4033 AST explicitConstructorInvocation_AST = null; 4034 Token t = null; 4035 AST t_AST = null; 4036 Token s = null; 4037 AST s_AST = null; 4038 Token s1 = null; 4039 AST s1_AST = null; 4040 4041 { 4042 if ((_tokenSet_41.member(LA(1))) && (_tokenSet_42.member(LA(2)))) { 4043 { 4044 switch ( LA(1)) { 4045 case LT: 4046 { 4047 typeArguments(false); 4048 astFactory.addASTChild(currentAST, returnAST); 4049 break; 4050 } 4051 case LITERAL_this: 4052 case LITERAL_super: 4053 { 4054 break; 4055 } 4056 default: 4057 { 4058 throw new NoViableAltException(LT(1), getFilename()); 4059 } 4060 } 4061 } 4062 { 4063 switch ( LA(1)) { 4064 case LITERAL_this: 4065 { 4066 t = LT(1); 4067 t_AST = astFactory.create(t); 4068 astFactory.makeASTRoot(currentAST, t_AST); 4069 match(LITERAL_this); 4070 AST tmp92_AST = null; 4071 tmp92_AST = astFactory.create(LT(1)); 4072 astFactory.addASTChild(currentAST, tmp92_AST); 4073 match(LPAREN); 4074 argList(); 4075 astFactory.addASTChild(currentAST, returnAST); 4076 AST tmp93_AST = null; 4077 tmp93_AST = astFactory.create(LT(1)); 4078 astFactory.addASTChild(currentAST, tmp93_AST); 4079 match(RPAREN); 4080 AST tmp94_AST = null; 4081 tmp94_AST = astFactory.create(LT(1)); 4082 astFactory.addASTChild(currentAST, tmp94_AST); 4083 match(SEMI); 4084 if ( inputState.guessing==0 ) { 4085 t_AST.setType(CTOR_CALL); 4086 } 4087 break; 4088 } 4089 case LITERAL_super: 4090 { 4091 s = LT(1); 4092 s_AST = astFactory.create(s); 4093 astFactory.makeASTRoot(currentAST, s_AST); 4094 match(LITERAL_super); 4095 AST tmp95_AST = null; 4096 tmp95_AST = astFactory.create(LT(1)); 4097 astFactory.addASTChild(currentAST, tmp95_AST); 4098 match(LPAREN); 4099 argList(); 4100 astFactory.addASTChild(currentAST, returnAST); 4101 AST tmp96_AST = null; 4102 tmp96_AST = astFactory.create(LT(1)); 4103 astFactory.addASTChild(currentAST, tmp96_AST); 4104 match(RPAREN); 4105 AST tmp97_AST = null; 4106 tmp97_AST = astFactory.create(LT(1)); 4107 astFactory.addASTChild(currentAST, tmp97_AST); 4108 match(SEMI); 4109 if ( inputState.guessing==0 ) { 4110 s_AST.setType(SUPER_CTOR_CALL); 4111 } 4112 break; 4113 } 4114 default: 4115 { 4116 throw new NoViableAltException(LT(1), getFilename()); 4117 } 4118 } 4119 } 4120 } 4121 else if ((_tokenSet_43.member(LA(1))) && (_tokenSet_44.member(LA(2)))) { 4122 primaryExpression(); 4123 astFactory.addASTChild(currentAST, returnAST); 4124 AST tmp98_AST = null; 4125 tmp98_AST = astFactory.create(LT(1)); 4126 astFactory.addASTChild(currentAST, tmp98_AST); 4127 match(DOT); 4128 { 4129 switch ( LA(1)) { 4130 case LT: 4131 { 4132 typeArguments(false); 4133 astFactory.addASTChild(currentAST, returnAST); 4134 break; 4135 } 4136 case LITERAL_super: 4137 { 4138 break; 4139 } 4140 default: 4141 { 4142 throw new NoViableAltException(LT(1), getFilename()); 4143 } 4144 } 4145 } 4146 s1 = LT(1); 4147 s1_AST = astFactory.create(s1); 4148 astFactory.makeASTRoot(currentAST, s1_AST); 4149 match(LITERAL_super); 4150 AST tmp99_AST = null; 4151 tmp99_AST = astFactory.create(LT(1)); 4152 astFactory.addASTChild(currentAST, tmp99_AST); 4153 match(LPAREN); 4154 argList(); 4155 astFactory.addASTChild(currentAST, returnAST); 4156 AST tmp100_AST = null; 4157 tmp100_AST = astFactory.create(LT(1)); 4158 astFactory.addASTChild(currentAST, tmp100_AST); 4159 match(RPAREN); 4160 AST tmp101_AST = null; 4161 tmp101_AST = astFactory.create(LT(1)); 4162 astFactory.addASTChild(currentAST, tmp101_AST); 4163 match(SEMI); 4164 if ( inputState.guessing==0 ) { 4165 s1_AST.setType(SUPER_CTOR_CALL); 4166 } 4167 } 4168 else { 4169 throw new NoViableAltException(LT(1), getFilename()); 4170 } 4171 4172 } 4173 explicitConstructorInvocation_AST = (AST)currentAST.root; 4174 returnAST = explicitConstructorInvocation_AST; 4175 } 4176 4177 public final void statement() throws RecognitionException, TokenStreamException { 4178 4179 returnAST = null; 4180 ASTPair currentAST = new ASTPair(); 4181 AST statement_AST = null; 4182 4183 switch ( LA(1)) { 4184 case FINAL: 4185 case ABSTRACT: 4186 case STRICTFP: 4187 case SEMI: 4188 case LITERAL_void: 4189 case LITERAL_boolean: 4190 case LITERAL_byte: 4191 case LITERAL_char: 4192 case LITERAL_short: 4193 case LITERAL_int: 4194 case LITERAL_float: 4195 case LITERAL_long: 4196 case LITERAL_double: 4197 case IDENT: 4198 case LITERAL_private: 4199 case LITERAL_public: 4200 case LITERAL_protected: 4201 case LITERAL_static: 4202 case LITERAL_transient: 4203 case LITERAL_native: 4204 case LITERAL_synchronized: 4205 case LITERAL_volatile: 4206 case LITERAL_class: 4207 case LCURLY: 4208 case LPAREN: 4209 case LITERAL_this: 4210 case LITERAL_super: 4211 case LITERAL_if: 4212 case LITERAL_while: 4213 case LITERAL_do: 4214 case LITERAL_break: 4215 case LITERAL_continue: 4216 case LITERAL_return: 4217 case LITERAL_switch: 4218 case LITERAL_throw: 4219 case LITERAL_for: 4220 case LITERAL_default: 4221 case LITERAL_try: 4222 case PLUS: 4223 case MINUS: 4224 case INC: 4225 case DEC: 4226 case BNOT: 4227 case LNOT: 4228 case LITERAL_true: 4229 case LITERAL_false: 4230 case LITERAL_null: 4231 case LITERAL_new: 4232 case NUM_INT: 4233 case CHAR_LITERAL: 4234 case STRING_LITERAL: 4235 case NUM_FLOAT: 4236 case NUM_LONG: 4237 case NUM_DOUBLE: 4238 case AT: 4239 { 4240 traditionalStatement(); 4241 astFactory.addASTChild(currentAST, returnAST); 4242 statement_AST = (AST)currentAST.root; 4243 break; 4244 } 4245 case ASSERT: 4246 { 4247 assertStatement(); 4248 astFactory.addASTChild(currentAST, returnAST); 4249 statement_AST = (AST)currentAST.root; 4250 break; 4251 } 4252 default: 4253 { 4254 throw new NoViableAltException(LT(1), getFilename()); 4255 } 4256 } 4257 returnAST = statement_AST; 4258 } 4259 4260 public final void primaryExpression() throws RecognitionException, TokenStreamException { 4261 4262 returnAST = null; 4263 ASTPair currentAST = new ASTPair(); 4264 AST primaryExpression_AST = null; 4265 Token lbt = null; 4266 AST lbt_AST = null; 4267 4268 switch ( LA(1)) { 4269 case IDENT: 4270 { 4271 AST tmp102_AST = null; 4272 tmp102_AST = astFactory.create(LT(1)); 4273 astFactory.addASTChild(currentAST, tmp102_AST); 4274 match(IDENT); 4275 { 4276 boolean synPredMatched344 = false; 4277 if (((LA(1)==LT) && (_tokenSet_18.member(LA(2))))) { 4278 int _m344 = mark(); 4279 synPredMatched344 = true; 4280 inputState.guessing++; 4281 try { 4282 { 4283 typeArguments(false); 4284 match(DOUBLE_COLON); 4285 } 4286 } 4287 catch (RecognitionException pe) { 4288 synPredMatched344 = false; 4289 } 4290 rewind(_m344); 4291inputState.guessing--; 4292 } 4293 if ( synPredMatched344 ) { 4294 typeArguments(false); 4295 astFactory.addASTChild(currentAST, returnAST); 4296 } 4297 else if ((_tokenSet_18.member(LA(1))) && (_tokenSet_45.member(LA(2)))) { 4298 } 4299 else { 4300 throw new NoViableAltException(LT(1), getFilename()); 4301 } 4302 4303 } 4304 primaryExpression_AST = (AST)currentAST.root; 4305 break; 4306 } 4307 case NUM_INT: 4308 case CHAR_LITERAL: 4309 case STRING_LITERAL: 4310 case NUM_FLOAT: 4311 case NUM_LONG: 4312 case NUM_DOUBLE: 4313 { 4314 constant(); 4315 astFactory.addASTChild(currentAST, returnAST); 4316 primaryExpression_AST = (AST)currentAST.root; 4317 break; 4318 } 4319 case LITERAL_true: 4320 { 4321 AST tmp103_AST = null; 4322 tmp103_AST = astFactory.create(LT(1)); 4323 astFactory.addASTChild(currentAST, tmp103_AST); 4324 match(LITERAL_true); 4325 primaryExpression_AST = (AST)currentAST.root; 4326 break; 4327 } 4328 case LITERAL_false: 4329 { 4330 AST tmp104_AST = null; 4331 tmp104_AST = astFactory.create(LT(1)); 4332 astFactory.addASTChild(currentAST, tmp104_AST); 4333 match(LITERAL_false); 4334 primaryExpression_AST = (AST)currentAST.root; 4335 break; 4336 } 4337 case LITERAL_this: 4338 { 4339 AST tmp105_AST = null; 4340 tmp105_AST = astFactory.create(LT(1)); 4341 astFactory.addASTChild(currentAST, tmp105_AST); 4342 match(LITERAL_this); 4343 primaryExpression_AST = (AST)currentAST.root; 4344 break; 4345 } 4346 case LITERAL_null: 4347 { 4348 AST tmp106_AST = null; 4349 tmp106_AST = astFactory.create(LT(1)); 4350 astFactory.addASTChild(currentAST, tmp106_AST); 4351 match(LITERAL_null); 4352 primaryExpression_AST = (AST)currentAST.root; 4353 break; 4354 } 4355 case LITERAL_new: 4356 { 4357 newExpression(); 4358 astFactory.addASTChild(currentAST, returnAST); 4359 primaryExpression_AST = (AST)currentAST.root; 4360 break; 4361 } 4362 case LPAREN: 4363 { 4364 AST tmp107_AST = null; 4365 tmp107_AST = astFactory.create(LT(1)); 4366 astFactory.addASTChild(currentAST, tmp107_AST); 4367 match(LPAREN); 4368 { 4369 boolean synPredMatched347 = false; 4370 if (((LA(1)==IDENT||LA(1)==LPAREN) && (_tokenSet_15.member(LA(2))))) { 4371 int _m347 = mark(); 4372 synPredMatched347 = true; 4373 inputState.guessing++; 4374 try { 4375 { 4376 lambdaExpression(); 4377 } 4378 } 4379 catch (RecognitionException pe) { 4380 synPredMatched347 = false; 4381 } 4382 rewind(_m347); 4383inputState.guessing--; 4384 } 4385 if ( synPredMatched347 ) { 4386 lambdaExpression(); 4387 astFactory.addASTChild(currentAST, returnAST); 4388 } 4389 else if ((_tokenSet_16.member(LA(1))) && (_tokenSet_46.member(LA(2)))) { 4390 assignmentExpression(); 4391 astFactory.addASTChild(currentAST, returnAST); 4392 } 4393 else { 4394 throw new NoViableAltException(LT(1), getFilename()); 4395 } 4396 4397 } 4398 AST tmp108_AST = null; 4399 tmp108_AST = astFactory.create(LT(1)); 4400 astFactory.addASTChild(currentAST, tmp108_AST); 4401 match(RPAREN); 4402 primaryExpression_AST = (AST)currentAST.root; 4403 break; 4404 } 4405 case LITERAL_super: 4406 { 4407 AST tmp109_AST = null; 4408 tmp109_AST = astFactory.create(LT(1)); 4409 astFactory.addASTChild(currentAST, tmp109_AST); 4410 match(LITERAL_super); 4411 primaryExpression_AST = (AST)currentAST.root; 4412 break; 4413 } 4414 case LITERAL_void: 4415 case LITERAL_boolean: 4416 case LITERAL_byte: 4417 case LITERAL_char: 4418 case LITERAL_short: 4419 case LITERAL_int: 4420 case LITERAL_float: 4421 case LITERAL_long: 4422 case LITERAL_double: 4423 { 4424 builtInType(); 4425 astFactory.addASTChild(currentAST, returnAST); 4426 { 4427 _loop349: 4428 do { 4429 if ((LA(1)==LBRACK) && (LA(2)==RBRACK)) { 4430 lbt = LT(1); 4431 lbt_AST = astFactory.create(lbt); 4432 astFactory.makeASTRoot(currentAST, lbt_AST); 4433 match(LBRACK); 4434 if ( inputState.guessing==0 ) { 4435 lbt_AST.setType(ARRAY_DECLARATOR); 4436 } 4437 AST tmp110_AST = null; 4438 tmp110_AST = astFactory.create(LT(1)); 4439 astFactory.addASTChild(currentAST, tmp110_AST); 4440 match(RBRACK); 4441 } 4442 else { 4443 break _loop349; 4444 } 4445 4446 } while (true); 4447 } 4448 { 4449 if ((LA(1)==DOT) && (LA(2)==LITERAL_class)) { 4450 AST tmp111_AST = null; 4451 tmp111_AST = astFactory.create(LT(1)); 4452 astFactory.makeASTRoot(currentAST, tmp111_AST); 4453 match(DOT); 4454 AST tmp112_AST = null; 4455 tmp112_AST = astFactory.create(LT(1)); 4456 astFactory.addASTChild(currentAST, tmp112_AST); 4457 match(LITERAL_class); 4458 } 4459 else if ((_tokenSet_18.member(LA(1))) && (_tokenSet_45.member(LA(2)))) { 4460 } 4461 else { 4462 throw new NoViableAltException(LT(1), getFilename()); 4463 } 4464 4465 } 4466 primaryExpression_AST = (AST)currentAST.root; 4467 break; 4468 } 4469 default: 4470 { 4471 throw new NoViableAltException(LT(1), getFilename()); 4472 } 4473 } 4474 returnAST = primaryExpression_AST; 4475 } 4476 4477/** Declaration of a variable. This can be a class/instance variable, 4478 * or a local variable in a method. 4479 @param mods declaration mods. 4480 @param t variable declaration type. 4481 @throws RecognitionException if recognition problem occurs. 4482 @throws TokenStreamException if problem occurs while generating a stream of tokens. 4483 * It can also include possible initialization. 4484 */ 4485 public final void variableDeclarator( 4486 AST mods, AST t 4487 ) throws RecognitionException, TokenStreamException { 4488 4489 returnAST = null; 4490 ASTPair currentAST = new ASTPair(); 4491 AST variableDeclarator_AST = null; 4492 Token id = null; 4493 AST id_AST = null; 4494 AST d_AST = null; 4495 AST v_AST = null; 4496 4497 id = LT(1); 4498 id_AST = astFactory.create(id); 4499 match(IDENT); 4500 declaratorBrackets(t); 4501 d_AST = (AST)returnAST; 4502 varInitializer(); 4503 v_AST = (AST)returnAST; 4504 if ( inputState.guessing==0 ) { 4505 variableDeclarator_AST = (AST)currentAST.root; 4506 variableDeclarator_AST = (AST)astFactory.make( (new ASTArray(5)).add(astFactory.create(VARIABLE_DEF,"VARIABLE_DEF")).add(mods).add((AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(TYPE,"TYPE")).add(d_AST))).add(id_AST).add(v_AST)); 4507 currentAST.root = variableDeclarator_AST; 4508 currentAST.child = variableDeclarator_AST!=null &&variableDeclarator_AST.getFirstChild()!=null ? 4509 variableDeclarator_AST.getFirstChild() : variableDeclarator_AST; 4510 currentAST.advanceChildToEnd(); 4511 } 4512 returnAST = variableDeclarator_AST; 4513 } 4514 4515 public final void varInitializer() throws RecognitionException, TokenStreamException { 4516 4517 returnAST = null; 4518 ASTPair currentAST = new ASTPair(); 4519 AST varInitializer_AST = null; 4520 4521 { 4522 switch ( LA(1)) { 4523 case ASSIGN: 4524 { 4525 AST tmp113_AST = null; 4526 tmp113_AST = astFactory.create(LT(1)); 4527 astFactory.makeASTRoot(currentAST, tmp113_AST); 4528 match(ASSIGN); 4529 initializer(); 4530 astFactory.addASTChild(currentAST, returnAST); 4531 break; 4532 } 4533 case FINAL: 4534 case ABSTRACT: 4535 case STRICTFP: 4536 case SEMI: 4537 case LITERAL_void: 4538 case LITERAL_boolean: 4539 case LITERAL_byte: 4540 case LITERAL_char: 4541 case LITERAL_short: 4542 case LITERAL_int: 4543 case LITERAL_float: 4544 case LITERAL_long: 4545 case LITERAL_double: 4546 case IDENT: 4547 case LITERAL_private: 4548 case LITERAL_public: 4549 case LITERAL_protected: 4550 case LITERAL_static: 4551 case LITERAL_transient: 4552 case LITERAL_native: 4553 case LITERAL_synchronized: 4554 case LITERAL_volatile: 4555 case LITERAL_class: 4556 case LITERAL_interface: 4557 case LCURLY: 4558 case RCURLY: 4559 case COMMA: 4560 case LITERAL_default: 4561 case LT: 4562 case ENUM: 4563 case AT: 4564 { 4565 break; 4566 } 4567 default: 4568 { 4569 throw new NoViableAltException(LT(1), getFilename()); 4570 } 4571 } 4572 } 4573 varInitializer_AST = (AST)currentAST.root; 4574 returnAST = varInitializer_AST; 4575 } 4576 4577 public final void initializer() throws RecognitionException, TokenStreamException { 4578 4579 returnAST = null; 4580 ASTPair currentAST = new ASTPair(); 4581 AST initializer_AST = null; 4582 4583 switch ( LA(1)) { 4584 case LITERAL_void: 4585 case LITERAL_boolean: 4586 case LITERAL_byte: 4587 case LITERAL_char: 4588 case LITERAL_short: 4589 case LITERAL_int: 4590 case LITERAL_float: 4591 case LITERAL_long: 4592 case LITERAL_double: 4593 case IDENT: 4594 case LPAREN: 4595 case LITERAL_this: 4596 case LITERAL_super: 4597 case PLUS: 4598 case MINUS: 4599 case INC: 4600 case DEC: 4601 case BNOT: 4602 case LNOT: 4603 case LITERAL_true: 4604 case LITERAL_false: 4605 case LITERAL_null: 4606 case LITERAL_new: 4607 case NUM_INT: 4608 case CHAR_LITERAL: 4609 case STRING_LITERAL: 4610 case NUM_FLOAT: 4611 case NUM_LONG: 4612 case NUM_DOUBLE: 4613 { 4614 expression(); 4615 astFactory.addASTChild(currentAST, returnAST); 4616 initializer_AST = (AST)currentAST.root; 4617 break; 4618 } 4619 case LCURLY: 4620 { 4621 arrayInitializer(); 4622 astFactory.addASTChild(currentAST, returnAST); 4623 initializer_AST = (AST)currentAST.root; 4624 break; 4625 } 4626 default: 4627 { 4628 throw new NoViableAltException(LT(1), getFilename()); 4629 } 4630 } 4631 returnAST = initializer_AST; 4632 } 4633 4634 public final void arrayInitializer() throws RecognitionException, TokenStreamException { 4635 4636 returnAST = null; 4637 ASTPair currentAST = new ASTPair(); 4638 AST arrayInitializer_AST = null; 4639 Token lc = null; 4640 AST lc_AST = null; 4641 4642 lc = LT(1); 4643 lc_AST = astFactory.create(lc); 4644 astFactory.makeASTRoot(currentAST, lc_AST); 4645 match(LCURLY); 4646 if ( inputState.guessing==0 ) { 4647 lc_AST.setType(ARRAY_INIT); 4648 } 4649 { 4650 switch ( LA(1)) { 4651 case LITERAL_void: 4652 case LITERAL_boolean: 4653 case LITERAL_byte: 4654 case LITERAL_char: 4655 case LITERAL_short: 4656 case LITERAL_int: 4657 case LITERAL_float: 4658 case LITERAL_long: 4659 case LITERAL_double: 4660 case IDENT: 4661 case LCURLY: 4662 case LPAREN: 4663 case LITERAL_this: 4664 case LITERAL_super: 4665 case PLUS: 4666 case MINUS: 4667 case INC: 4668 case DEC: 4669 case BNOT: 4670 case LNOT: 4671 case LITERAL_true: 4672 case LITERAL_false: 4673 case LITERAL_null: 4674 case LITERAL_new: 4675 case NUM_INT: 4676 case CHAR_LITERAL: 4677 case STRING_LITERAL: 4678 case NUM_FLOAT: 4679 case NUM_LONG: 4680 case NUM_DOUBLE: 4681 { 4682 initializer(); 4683 astFactory.addASTChild(currentAST, returnAST); 4684 { 4685 _loop170: 4686 do { 4687 if ((LA(1)==COMMA) && (_tokenSet_47.member(LA(2)))) { 4688 AST tmp114_AST = null; 4689 tmp114_AST = astFactory.create(LT(1)); 4690 astFactory.addASTChild(currentAST, tmp114_AST); 4691 match(COMMA); 4692 initializer(); 4693 astFactory.addASTChild(currentAST, returnAST); 4694 } 4695 else { 4696 break _loop170; 4697 } 4698 4699 } while (true); 4700 } 4701 break; 4702 } 4703 case RCURLY: 4704 case COMMA: 4705 { 4706 break; 4707 } 4708 default: 4709 { 4710 throw new NoViableAltException(LT(1), getFilename()); 4711 } 4712 } 4713 } 4714 { 4715 switch ( LA(1)) { 4716 case COMMA: 4717 { 4718 AST tmp115_AST = null; 4719 tmp115_AST = astFactory.create(LT(1)); 4720 astFactory.addASTChild(currentAST, tmp115_AST); 4721 match(COMMA); 4722 break; 4723 } 4724 case RCURLY: 4725 { 4726 break; 4727 } 4728 default: 4729 { 4730 throw new NoViableAltException(LT(1), getFilename()); 4731 } 4732 } 4733 } 4734 AST tmp116_AST = null; 4735 tmp116_AST = astFactory.create(LT(1)); 4736 astFactory.addASTChild(currentAST, tmp116_AST); 4737 match(RCURLY); 4738 arrayInitializer_AST = (AST)currentAST.root; 4739 returnAST = arrayInitializer_AST; 4740 } 4741 4742 public final void expression() throws RecognitionException, TokenStreamException { 4743 4744 returnAST = null; 4745 ASTPair currentAST = new ASTPair(); 4746 AST expression_AST = null; 4747 4748 boolean synPredMatched258 = false; 4749 if (((LA(1)==IDENT||LA(1)==LPAREN) && (_tokenSet_15.member(LA(2))))) { 4750 int _m258 = mark(); 4751 synPredMatched258 = true; 4752 inputState.guessing++; 4753 try { 4754 { 4755 lambdaExpression(); 4756 } 4757 } 4758 catch (RecognitionException pe) { 4759 synPredMatched258 = false; 4760 } 4761 rewind(_m258); 4762inputState.guessing--; 4763 } 4764 if ( synPredMatched258 ) { 4765 lambdaExpression(); 4766 astFactory.addASTChild(currentAST, returnAST); 4767 expression_AST = (AST)currentAST.root; 4768 } 4769 else if (((_tokenSet_16.member(LA(1))) && (_tokenSet_18.member(LA(2))))&&(LA(1)!=RPAREN)) { 4770 assignmentExpression(); 4771 astFactory.addASTChild(currentAST, returnAST); 4772 if ( inputState.guessing==0 ) { 4773 expression_AST = (AST)currentAST.root; 4774 expression_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(EXPR,"EXPR")).add(expression_AST)); 4775 currentAST.root = expression_AST; 4776 currentAST.child = expression_AST!=null &&expression_AST.getFirstChild()!=null ? 4777 expression_AST.getFirstChild() : expression_AST; 4778 currentAST.advanceChildToEnd(); 4779 } 4780 expression_AST = (AST)currentAST.root; 4781 } 4782 else { 4783 throw new NoViableAltException(LT(1), getFilename()); 4784 } 4785 4786 returnAST = expression_AST; 4787 } 4788 4789 public final void parameterDeclaration() throws RecognitionException, TokenStreamException { 4790 4791 returnAST = null; 4792 ASTPair currentAST = new ASTPair(); 4793 AST parameterDeclaration_AST = null; 4794 AST pm_AST = null; 4795 AST t_AST = null; 4796 Token id = null; 4797 AST id_AST = null; 4798 AST pd_AST = null; 4799 4800 parameterModifier(); 4801 pm_AST = (AST)returnAST; 4802 { 4803 if ((_tokenSet_9.member(LA(1))) && (_tokenSet_22.member(LA(2)))) { 4804 typeSpec(false); 4805 t_AST = (AST)returnAST; 4806 } 4807 else if ((LA(1)==IDENT) && (_tokenSet_48.member(LA(2)))) { 4808 } 4809 else { 4810 throw new NoViableAltException(LT(1), getFilename()); 4811 } 4812 4813 } 4814 id = LT(1); 4815 id_AST = astFactory.create(id); 4816 match(IDENT); 4817 declaratorBrackets(t_AST); 4818 pd_AST = (AST)returnAST; 4819 if ( inputState.guessing==0 ) { 4820 parameterDeclaration_AST = (AST)currentAST.root; 4821 parameterDeclaration_AST = (AST)astFactory.make( (new ASTArray(4)).add(astFactory.create(PARAMETER_DEF,"PARAMETER_DEF")).add(pm_AST).add((AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(TYPE,"TYPE")).add(pd_AST))).add(id_AST)); 4822 currentAST.root = parameterDeclaration_AST; 4823 currentAST.child = parameterDeclaration_AST!=null &¶meterDeclaration_AST.getFirstChild()!=null ? 4824 parameterDeclaration_AST.getFirstChild() : parameterDeclaration_AST; 4825 currentAST.advanceChildToEnd(); 4826 } 4827 returnAST = parameterDeclaration_AST; 4828 } 4829 4830 public final void variableLengthParameterDeclaration() throws RecognitionException, TokenStreamException { 4831 4832 returnAST = null; 4833 ASTPair currentAST = new ASTPair(); 4834 AST variableLengthParameterDeclaration_AST = null; 4835 AST pm_AST = null; 4836 AST t_AST = null; 4837 Token td = null; 4838 AST td_AST = null; 4839 AST pd_AST = null; 4840 4841 parameterModifier(); 4842 pm_AST = (AST)returnAST; 4843 typeSpec(false); 4844 t_AST = (AST)returnAST; 4845 td = LT(1); 4846 td_AST = astFactory.create(td); 4847 match(ELLIPSIS); 4848 AST tmp117_AST = null; 4849 tmp117_AST = astFactory.create(LT(1)); 4850 match(IDENT); 4851 declaratorBrackets(t_AST); 4852 pd_AST = (AST)returnAST; 4853 if ( inputState.guessing==0 ) { 4854 variableLengthParameterDeclaration_AST = (AST)currentAST.root; 4855 variableLengthParameterDeclaration_AST = (AST)astFactory.make( (new ASTArray(5)).add(astFactory.create(PARAMETER_DEF,"PARAMETER_DEF")).add(pm_AST).add((AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(TYPE,"TYPE")).add(pd_AST))).add(td_AST).add(tmp117_AST)); 4856 currentAST.root = variableLengthParameterDeclaration_AST; 4857 currentAST.child = variableLengthParameterDeclaration_AST!=null &&variableLengthParameterDeclaration_AST.getFirstChild()!=null ? 4858 variableLengthParameterDeclaration_AST.getFirstChild() : variableLengthParameterDeclaration_AST; 4859 currentAST.advanceChildToEnd(); 4860 } 4861 returnAST = variableLengthParameterDeclaration_AST; 4862 } 4863 4864 public final void parameterModifier() throws RecognitionException, TokenStreamException { 4865 4866 returnAST = null; 4867 ASTPair currentAST = new ASTPair(); 4868 AST parameterModifier_AST = null; 4869 Token f = null; 4870 AST f_AST = null; 4871 4872 { 4873 _loop191: 4874 do { 4875 if ((LA(1)==AT) && (LA(2)==IDENT)) { 4876 annotation(); 4877 astFactory.addASTChild(currentAST, returnAST); 4878 } 4879 else { 4880 break _loop191; 4881 } 4882 4883 } while (true); 4884 } 4885 { 4886 switch ( LA(1)) { 4887 case FINAL: 4888 { 4889 f = LT(1); 4890 f_AST = astFactory.create(f); 4891 astFactory.addASTChild(currentAST, f_AST); 4892 match(FINAL); 4893 break; 4894 } 4895 case LITERAL_void: 4896 case LITERAL_boolean: 4897 case LITERAL_byte: 4898 case LITERAL_char: 4899 case LITERAL_short: 4900 case LITERAL_int: 4901 case LITERAL_float: 4902 case LITERAL_long: 4903 case LITERAL_double: 4904 case IDENT: 4905 case AT: 4906 { 4907 break; 4908 } 4909 default: 4910 { 4911 throw new NoViableAltException(LT(1), getFilename()); 4912 } 4913 } 4914 } 4915 { 4916 _loop194: 4917 do { 4918 if ((LA(1)==AT) && (LA(2)==IDENT)) { 4919 annotation(); 4920 astFactory.addASTChild(currentAST, returnAST); 4921 } 4922 else { 4923 break _loop194; 4924 } 4925 4926 } while (true); 4927 } 4928 if ( inputState.guessing==0 ) { 4929 parameterModifier_AST = (AST)currentAST.root; 4930 parameterModifier_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(MODIFIERS,"MODIFIERS")).add(parameterModifier_AST)); 4931 currentAST.root = parameterModifier_AST; 4932 currentAST.child = parameterModifier_AST!=null &¶meterModifier_AST.getFirstChild()!=null ? 4933 parameterModifier_AST.getFirstChild() : parameterModifier_AST; 4934 currentAST.advanceChildToEnd(); 4935 } 4936 parameterModifier_AST = (AST)currentAST.root; 4937 returnAST = parameterModifier_AST; 4938 } 4939 4940 public final void catchParameterDeclaration() throws RecognitionException, TokenStreamException { 4941 4942 returnAST = null; 4943 ASTPair currentAST = new ASTPair(); 4944 AST catchParameterDeclaration_AST = null; 4945 AST pm_AST = null; 4946 AST mct_AST = null; 4947 Token id = null; 4948 AST id_AST = null; 4949 4950 parameterModifier(); 4951 pm_AST = (AST)returnAST; 4952 multiCatchTypes(); 4953 mct_AST = (AST)returnAST; 4954 id = LT(1); 4955 id_AST = astFactory.create(id); 4956 match(IDENT); 4957 if ( inputState.guessing==0 ) { 4958 catchParameterDeclaration_AST = (AST)currentAST.root; 4959 catchParameterDeclaration_AST = 4960 (AST)astFactory.make( (new ASTArray(4)).add(astFactory.create(PARAMETER_DEF,"PARAMETER_DEF")).add(pm_AST).add((AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(TYPE,"TYPE")).add(mct_AST))).add(id_AST)); 4961 currentAST.root = catchParameterDeclaration_AST; 4962 currentAST.child = catchParameterDeclaration_AST!=null &&catchParameterDeclaration_AST.getFirstChild()!=null ? 4963 catchParameterDeclaration_AST.getFirstChild() : catchParameterDeclaration_AST; 4964 currentAST.advanceChildToEnd(); 4965 } 4966 returnAST = catchParameterDeclaration_AST; 4967 } 4968 4969 public final void multiCatchTypes() throws RecognitionException, TokenStreamException { 4970 4971 returnAST = null; 4972 ASTPair currentAST = new ASTPair(); 4973 AST multiCatchTypes_AST = null; 4974 4975 typeSpec(false); 4976 astFactory.addASTChild(currentAST, returnAST); 4977 { 4978 _loop200: 4979 do { 4980 if ((LA(1)==BOR)) { 4981 AST tmp118_AST = null; 4982 tmp118_AST = astFactory.create(LT(1)); 4983 astFactory.makeASTRoot(currentAST, tmp118_AST); 4984 match(BOR); 4985 typeSpec(false); 4986 astFactory.addASTChild(currentAST, returnAST); 4987 } 4988 else { 4989 break _loop200; 4990 } 4991 4992 } while (true); 4993 } 4994 multiCatchTypes_AST = (AST)currentAST.root; 4995 returnAST = multiCatchTypes_AST; 4996 } 4997 4998 public final void traditionalStatement() throws RecognitionException, TokenStreamException { 4999 5000 returnAST = null; 5001 ASTPair currentAST = new ASTPair(); 5002 AST traditionalStatement_AST = null; 5003 AST m_AST = null; 5004 Token c = null; 5005 AST c_AST = null; 5006 Token w = null; 5007 AST w_AST = null; 5008 Token s = null; 5009 AST s_AST = null; 5010 5011 switch ( LA(1)) { 5012 case LCURLY: 5013 { 5014 compoundStatement(); 5015 astFactory.addASTChild(currentAST, returnAST); 5016 traditionalStatement_AST = (AST)currentAST.root; 5017 break; 5018 } 5019 case LITERAL_if: 5020 { 5021 AST tmp119_AST = null; 5022 tmp119_AST = astFactory.create(LT(1)); 5023 astFactory.makeASTRoot(currentAST, tmp119_AST); 5024 match(LITERAL_if); 5025 AST tmp120_AST = null; 5026 tmp120_AST = astFactory.create(LT(1)); 5027 astFactory.addASTChild(currentAST, tmp120_AST); 5028 match(LPAREN); 5029 expression(); 5030 astFactory.addASTChild(currentAST, returnAST); 5031 AST tmp121_AST = null; 5032 tmp121_AST = astFactory.create(LT(1)); 5033 astFactory.addASTChild(currentAST, tmp121_AST); 5034 match(RPAREN); 5035 statement(); 5036 astFactory.addASTChild(currentAST, returnAST); 5037 { 5038 if ((LA(1)==LITERAL_else) && (_tokenSet_36.member(LA(2)))) { 5039 elseStatement(); 5040 astFactory.addASTChild(currentAST, returnAST); 5041 } 5042 else if ((_tokenSet_49.member(LA(1))) && (_tokenSet_50.member(LA(2)))) { 5043 } 5044 else { 5045 throw new NoViableAltException(LT(1), getFilename()); 5046 } 5047 5048 } 5049 traditionalStatement_AST = (AST)currentAST.root; 5050 break; 5051 } 5052 case LITERAL_for: 5053 { 5054 forStatement(); 5055 astFactory.addASTChild(currentAST, returnAST); 5056 traditionalStatement_AST = (AST)currentAST.root; 5057 break; 5058 } 5059 case LITERAL_while: 5060 { 5061 AST tmp122_AST = null; 5062 tmp122_AST = astFactory.create(LT(1)); 5063 astFactory.makeASTRoot(currentAST, tmp122_AST); 5064 match(LITERAL_while); 5065 AST tmp123_AST = null; 5066 tmp123_AST = astFactory.create(LT(1)); 5067 astFactory.addASTChild(currentAST, tmp123_AST); 5068 match(LPAREN); 5069 expression(); 5070 astFactory.addASTChild(currentAST, returnAST); 5071 AST tmp124_AST = null; 5072 tmp124_AST = astFactory.create(LT(1)); 5073 astFactory.addASTChild(currentAST, tmp124_AST); 5074 match(RPAREN); 5075 statement(); 5076 astFactory.addASTChild(currentAST, returnAST); 5077 traditionalStatement_AST = (AST)currentAST.root; 5078 break; 5079 } 5080 case LITERAL_do: 5081 { 5082 AST tmp125_AST = null; 5083 tmp125_AST = astFactory.create(LT(1)); 5084 astFactory.makeASTRoot(currentAST, tmp125_AST); 5085 match(LITERAL_do); 5086 statement(); 5087 astFactory.addASTChild(currentAST, returnAST); 5088 w = LT(1); 5089 w_AST = astFactory.create(w); 5090 astFactory.addASTChild(currentAST, w_AST); 5091 match(LITERAL_while); 5092 if ( inputState.guessing==0 ) { 5093 w_AST.setType(DO_WHILE); 5094 } 5095 AST tmp126_AST = null; 5096 tmp126_AST = astFactory.create(LT(1)); 5097 astFactory.addASTChild(currentAST, tmp126_AST); 5098 match(LPAREN); 5099 expression(); 5100 astFactory.addASTChild(currentAST, returnAST); 5101 AST tmp127_AST = null; 5102 tmp127_AST = astFactory.create(LT(1)); 5103 astFactory.addASTChild(currentAST, tmp127_AST); 5104 match(RPAREN); 5105 AST tmp128_AST = null; 5106 tmp128_AST = astFactory.create(LT(1)); 5107 astFactory.addASTChild(currentAST, tmp128_AST); 5108 match(SEMI); 5109 traditionalStatement_AST = (AST)currentAST.root; 5110 break; 5111 } 5112 case LITERAL_break: 5113 { 5114 AST tmp129_AST = null; 5115 tmp129_AST = astFactory.create(LT(1)); 5116 astFactory.makeASTRoot(currentAST, tmp129_AST); 5117 match(LITERAL_break); 5118 { 5119 switch ( LA(1)) { 5120 case IDENT: 5121 { 5122 AST tmp130_AST = null; 5123 tmp130_AST = astFactory.create(LT(1)); 5124 astFactory.addASTChild(currentAST, tmp130_AST); 5125 match(IDENT); 5126 break; 5127 } 5128 case SEMI: 5129 { 5130 break; 5131 } 5132 default: 5133 { 5134 throw new NoViableAltException(LT(1), getFilename()); 5135 } 5136 } 5137 } 5138 AST tmp131_AST = null; 5139 tmp131_AST = astFactory.create(LT(1)); 5140 astFactory.addASTChild(currentAST, tmp131_AST); 5141 match(SEMI); 5142 traditionalStatement_AST = (AST)currentAST.root; 5143 break; 5144 } 5145 case LITERAL_continue: 5146 { 5147 AST tmp132_AST = null; 5148 tmp132_AST = astFactory.create(LT(1)); 5149 astFactory.makeASTRoot(currentAST, tmp132_AST); 5150 match(LITERAL_continue); 5151 { 5152 switch ( LA(1)) { 5153 case IDENT: 5154 { 5155 AST tmp133_AST = null; 5156 tmp133_AST = astFactory.create(LT(1)); 5157 astFactory.addASTChild(currentAST, tmp133_AST); 5158 match(IDENT); 5159 break; 5160 } 5161 case SEMI: 5162 { 5163 break; 5164 } 5165 default: 5166 { 5167 throw new NoViableAltException(LT(1), getFilename()); 5168 } 5169 } 5170 } 5171 AST tmp134_AST = null; 5172 tmp134_AST = astFactory.create(LT(1)); 5173 astFactory.addASTChild(currentAST, tmp134_AST); 5174 match(SEMI); 5175 traditionalStatement_AST = (AST)currentAST.root; 5176 break; 5177 } 5178 case LITERAL_return: 5179 { 5180 AST tmp135_AST = null; 5181 tmp135_AST = astFactory.create(LT(1)); 5182 astFactory.makeASTRoot(currentAST, tmp135_AST); 5183 match(LITERAL_return); 5184 { 5185 switch ( LA(1)) { 5186 case LITERAL_void: 5187 case LITERAL_boolean: 5188 case LITERAL_byte: 5189 case LITERAL_char: 5190 case LITERAL_short: 5191 case LITERAL_int: 5192 case LITERAL_float: 5193 case LITERAL_long: 5194 case LITERAL_double: 5195 case IDENT: 5196 case LPAREN: 5197 case LITERAL_this: 5198 case LITERAL_super: 5199 case PLUS: 5200 case MINUS: 5201 case INC: 5202 case DEC: 5203 case BNOT: 5204 case LNOT: 5205 case LITERAL_true: 5206 case LITERAL_false: 5207 case LITERAL_null: 5208 case LITERAL_new: 5209 case NUM_INT: 5210 case CHAR_LITERAL: 5211 case STRING_LITERAL: 5212 case NUM_FLOAT: 5213 case NUM_LONG: 5214 case NUM_DOUBLE: 5215 { 5216 expression(); 5217 astFactory.addASTChild(currentAST, returnAST); 5218 break; 5219 } 5220 case SEMI: 5221 { 5222 break; 5223 } 5224 default: 5225 { 5226 throw new NoViableAltException(LT(1), getFilename()); 5227 } 5228 } 5229 } 5230 AST tmp136_AST = null; 5231 tmp136_AST = astFactory.create(LT(1)); 5232 astFactory.addASTChild(currentAST, tmp136_AST); 5233 match(SEMI); 5234 traditionalStatement_AST = (AST)currentAST.root; 5235 break; 5236 } 5237 case LITERAL_switch: 5238 { 5239 AST tmp137_AST = null; 5240 tmp137_AST = astFactory.create(LT(1)); 5241 astFactory.makeASTRoot(currentAST, tmp137_AST); 5242 match(LITERAL_switch); 5243 AST tmp138_AST = null; 5244 tmp138_AST = astFactory.create(LT(1)); 5245 astFactory.addASTChild(currentAST, tmp138_AST); 5246 match(LPAREN); 5247 expression(); 5248 astFactory.addASTChild(currentAST, returnAST); 5249 AST tmp139_AST = null; 5250 tmp139_AST = astFactory.create(LT(1)); 5251 astFactory.addASTChild(currentAST, tmp139_AST); 5252 match(RPAREN); 5253 AST tmp140_AST = null; 5254 tmp140_AST = astFactory.create(LT(1)); 5255 astFactory.addASTChild(currentAST, tmp140_AST); 5256 match(LCURLY); 5257 { 5258 _loop216: 5259 do { 5260 if ((LA(1)==LITERAL_case||LA(1)==LITERAL_default)) { 5261 casesGroup(); 5262 astFactory.addASTChild(currentAST, returnAST); 5263 } 5264 else { 5265 break _loop216; 5266 } 5267 5268 } while (true); 5269 } 5270 AST tmp141_AST = null; 5271 tmp141_AST = astFactory.create(LT(1)); 5272 astFactory.addASTChild(currentAST, tmp141_AST); 5273 match(RCURLY); 5274 traditionalStatement_AST = (AST)currentAST.root; 5275 break; 5276 } 5277 case LITERAL_try: 5278 { 5279 tryBlock(); 5280 astFactory.addASTChild(currentAST, returnAST); 5281 traditionalStatement_AST = (AST)currentAST.root; 5282 break; 5283 } 5284 case LITERAL_throw: 5285 { 5286 AST tmp142_AST = null; 5287 tmp142_AST = astFactory.create(LT(1)); 5288 astFactory.makeASTRoot(currentAST, tmp142_AST); 5289 match(LITERAL_throw); 5290 expression(); 5291 astFactory.addASTChild(currentAST, returnAST); 5292 AST tmp143_AST = null; 5293 tmp143_AST = astFactory.create(LT(1)); 5294 astFactory.addASTChild(currentAST, tmp143_AST); 5295 match(SEMI); 5296 traditionalStatement_AST = (AST)currentAST.root; 5297 break; 5298 } 5299 case SEMI: 5300 { 5301 s = LT(1); 5302 s_AST = astFactory.create(s); 5303 astFactory.addASTChild(currentAST, s_AST); 5304 match(SEMI); 5305 if ( inputState.guessing==0 ) { 5306 s_AST.setType(EMPTY_STAT); 5307 } 5308 traditionalStatement_AST = (AST)currentAST.root; 5309 break; 5310 } 5311 default: 5312 boolean synPredMatched209 = false; 5313 if (((_tokenSet_51.member(LA(1))) && (_tokenSet_52.member(LA(2))))) { 5314 int _m209 = mark(); 5315 synPredMatched209 = true; 5316 inputState.guessing++; 5317 try { 5318 { 5319 declaration(); 5320 } 5321 } 5322 catch (RecognitionException pe) { 5323 synPredMatched209 = false; 5324 } 5325 rewind(_m209); 5326inputState.guessing--; 5327 } 5328 if ( synPredMatched209 ) { 5329 declaration(); 5330 astFactory.addASTChild(currentAST, returnAST); 5331 AST tmp144_AST = null; 5332 tmp144_AST = astFactory.create(LT(1)); 5333 astFactory.addASTChild(currentAST, tmp144_AST); 5334 match(SEMI); 5335 traditionalStatement_AST = (AST)currentAST.root; 5336 } 5337 else if (((_tokenSet_16.member(LA(1))) && (_tokenSet_53.member(LA(2))))&&(LA(2) != COLON)) { 5338 expression(); 5339 astFactory.addASTChild(currentAST, returnAST); 5340 { 5341 if ((LA(1)==SEMI) && (_tokenSet_49.member(LA(2)))) { 5342 AST tmp145_AST = null; 5343 tmp145_AST = astFactory.create(LT(1)); 5344 astFactory.addASTChild(currentAST, tmp145_AST); 5345 match(SEMI); 5346 } 5347 else if ((_tokenSet_49.member(LA(1))) && (_tokenSet_50.member(LA(2)))) { 5348 } 5349 else { 5350 throw new NoViableAltException(LT(1), getFilename()); 5351 } 5352 5353 } 5354 traditionalStatement_AST = (AST)currentAST.root; 5355 } 5356 else if ((_tokenSet_54.member(LA(1))) && (_tokenSet_55.member(LA(2)))) { 5357 modifiers(); 5358 m_AST = (AST)returnAST; 5359 classDefinition(m_AST); 5360 astFactory.addASTChild(currentAST, returnAST); 5361 traditionalStatement_AST = (AST)currentAST.root; 5362 } 5363 else if ((LA(1)==IDENT) && (LA(2)==COLON)) { 5364 AST tmp146_AST = null; 5365 tmp146_AST = astFactory.create(LT(1)); 5366 astFactory.addASTChild(currentAST, tmp146_AST); 5367 match(IDENT); 5368 c = LT(1); 5369 c_AST = astFactory.create(c); 5370 astFactory.makeASTRoot(currentAST, c_AST); 5371 match(COLON); 5372 if ( inputState.guessing==0 ) { 5373 c_AST.setType(LABELED_STAT); 5374 } 5375 statement(); 5376 astFactory.addASTChild(currentAST, returnAST); 5377 traditionalStatement_AST = (AST)currentAST.root; 5378 } 5379 else if ((LA(1)==LITERAL_synchronized) && (LA(2)==LPAREN)) { 5380 AST tmp147_AST = null; 5381 tmp147_AST = astFactory.create(LT(1)); 5382 astFactory.makeASTRoot(currentAST, tmp147_AST); 5383 match(LITERAL_synchronized); 5384 AST tmp148_AST = null; 5385 tmp148_AST = astFactory.create(LT(1)); 5386 astFactory.addASTChild(currentAST, tmp148_AST); 5387 match(LPAREN); 5388 expression(); 5389 astFactory.addASTChild(currentAST, returnAST); 5390 AST tmp149_AST = null; 5391 tmp149_AST = astFactory.create(LT(1)); 5392 astFactory.addASTChild(currentAST, tmp149_AST); 5393 match(RPAREN); 5394 compoundStatement(); 5395 astFactory.addASTChild(currentAST, returnAST); 5396 traditionalStatement_AST = (AST)currentAST.root; 5397 } 5398 else { 5399 throw new NoViableAltException(LT(1), getFilename()); 5400 } 5401 } 5402 returnAST = traditionalStatement_AST; 5403 } 5404 5405 public final void assertStatement() throws RecognitionException, TokenStreamException { 5406 5407 returnAST = null; 5408 ASTPair currentAST = new ASTPair(); 5409 AST assertStatement_AST = null; 5410 5411 AST tmp150_AST = null; 5412 tmp150_AST = astFactory.create(LT(1)); 5413 astFactory.makeASTRoot(currentAST, tmp150_AST); 5414 match(ASSERT); 5415 expression(); 5416 astFactory.addASTChild(currentAST, returnAST); 5417 { 5418 switch ( LA(1)) { 5419 case COLON: 5420 { 5421 AST tmp151_AST = null; 5422 tmp151_AST = astFactory.create(LT(1)); 5423 astFactory.addASTChild(currentAST, tmp151_AST); 5424 match(COLON); 5425 expression(); 5426 astFactory.addASTChild(currentAST, returnAST); 5427 break; 5428 } 5429 case SEMI: 5430 { 5431 break; 5432 } 5433 default: 5434 { 5435 throw new NoViableAltException(LT(1), getFilename()); 5436 } 5437 } 5438 } 5439 AST tmp152_AST = null; 5440 tmp152_AST = astFactory.create(LT(1)); 5441 astFactory.addASTChild(currentAST, tmp152_AST); 5442 match(SEMI); 5443 assertStatement_AST = (AST)currentAST.root; 5444 returnAST = assertStatement_AST; 5445 } 5446 5447 public final void elseStatement() throws RecognitionException, TokenStreamException { 5448 5449 returnAST = null; 5450 ASTPair currentAST = new ASTPair(); 5451 AST elseStatement_AST = null; 5452 5453 AST tmp153_AST = null; 5454 tmp153_AST = astFactory.create(LT(1)); 5455 astFactory.makeASTRoot(currentAST, tmp153_AST); 5456 match(LITERAL_else); 5457 statement(); 5458 astFactory.addASTChild(currentAST, returnAST); 5459 elseStatement_AST = (AST)currentAST.root; 5460 returnAST = elseStatement_AST; 5461 } 5462 5463 public final void forStatement() throws RecognitionException, TokenStreamException { 5464 5465 returnAST = null; 5466 ASTPair currentAST = new ASTPair(); 5467 AST forStatement_AST = null; 5468 Token f = null; 5469 AST f_AST = null; 5470 5471 f = LT(1); 5472 f_AST = astFactory.create(f); 5473 astFactory.makeASTRoot(currentAST, f_AST); 5474 match(LITERAL_for); 5475 AST tmp154_AST = null; 5476 tmp154_AST = astFactory.create(LT(1)); 5477 astFactory.addASTChild(currentAST, tmp154_AST); 5478 match(LPAREN); 5479 { 5480 boolean synPredMatched220 = false; 5481 if (((_tokenSet_56.member(LA(1))) && (_tokenSet_57.member(LA(2))))) { 5482 int _m220 = mark(); 5483 synPredMatched220 = true; 5484 inputState.guessing++; 5485 try { 5486 { 5487 forInit(); 5488 match(SEMI); 5489 } 5490 } 5491 catch (RecognitionException pe) { 5492 synPredMatched220 = false; 5493 } 5494 rewind(_m220); 5495inputState.guessing--; 5496 } 5497 if ( synPredMatched220 ) { 5498 traditionalForClause(); 5499 astFactory.addASTChild(currentAST, returnAST); 5500 } 5501 else if ((_tokenSet_51.member(LA(1))) && (_tokenSet_52.member(LA(2)))) { 5502 forEachClause(); 5503 astFactory.addASTChild(currentAST, returnAST); 5504 } 5505 else { 5506 throw new NoViableAltException(LT(1), getFilename()); 5507 } 5508 5509 } 5510 AST tmp155_AST = null; 5511 tmp155_AST = astFactory.create(LT(1)); 5512 astFactory.addASTChild(currentAST, tmp155_AST); 5513 match(RPAREN); 5514 statement(); 5515 astFactory.addASTChild(currentAST, returnAST); 5516 forStatement_AST = (AST)currentAST.root; 5517 returnAST = forStatement_AST; 5518 } 5519 5520 public final void casesGroup() throws RecognitionException, TokenStreamException { 5521 5522 returnAST = null; 5523 ASTPair currentAST = new ASTPair(); 5524 AST casesGroup_AST = null; 5525 5526 { 5527 int _cnt227=0; 5528 _loop227: 5529 do { 5530 if ((LA(1)==LITERAL_case||LA(1)==LITERAL_default) && (_tokenSet_58.member(LA(2)))) { 5531 aCase(); 5532 astFactory.addASTChild(currentAST, returnAST); 5533 } 5534 else { 5535 if ( _cnt227>=1 ) { break _loop227; } else {throw new NoViableAltException(LT(1), getFilename());} 5536 } 5537 5538 _cnt227++; 5539 } while (true); 5540 } 5541 { 5542 if ((_tokenSet_36.member(LA(1))) && (_tokenSet_59.member(LA(2)))) { 5543 caseSList(); 5544 astFactory.addASTChild(currentAST, returnAST); 5545 } 5546 else if ((_tokenSet_60.member(LA(1))) && (_tokenSet_49.member(LA(2)))) { 5547 } 5548 else { 5549 throw new NoViableAltException(LT(1), getFilename()); 5550 } 5551 5552 } 5553 if ( inputState.guessing==0 ) { 5554 casesGroup_AST = (AST)currentAST.root; 5555 casesGroup_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(CASE_GROUP,"CASE_GROUP")).add(casesGroup_AST)); 5556 currentAST.root = casesGroup_AST; 5557 currentAST.child = casesGroup_AST!=null &&casesGroup_AST.getFirstChild()!=null ? 5558 casesGroup_AST.getFirstChild() : casesGroup_AST; 5559 currentAST.advanceChildToEnd(); 5560 } 5561 casesGroup_AST = (AST)currentAST.root; 5562 returnAST = casesGroup_AST; 5563 } 5564 5565 public final void tryBlock() throws RecognitionException, TokenStreamException { 5566 5567 returnAST = null; 5568 ASTPair currentAST = new ASTPair(); 5569 AST tryBlock_AST = null; 5570 5571 AST tmp156_AST = null; 5572 tmp156_AST = astFactory.create(LT(1)); 5573 astFactory.makeASTRoot(currentAST, tmp156_AST); 5574 match(LITERAL_try); 5575 { 5576 switch ( LA(1)) { 5577 case LPAREN: 5578 { 5579 resourceSpecification(); 5580 astFactory.addASTChild(currentAST, returnAST); 5581 break; 5582 } 5583 case LCURLY: 5584 { 5585 break; 5586 } 5587 default: 5588 { 5589 throw new NoViableAltException(LT(1), getFilename()); 5590 } 5591 } 5592 } 5593 compoundStatement(); 5594 astFactory.addASTChild(currentAST, returnAST); 5595 { 5596 _loop245: 5597 do { 5598 if ((LA(1)==LITERAL_catch)) { 5599 handler(); 5600 astFactory.addASTChild(currentAST, returnAST); 5601 } 5602 else { 5603 break _loop245; 5604 } 5605 5606 } while (true); 5607 } 5608 { 5609 switch ( LA(1)) { 5610 case LITERAL_finally: 5611 { 5612 finallyHandler(); 5613 astFactory.addASTChild(currentAST, returnAST); 5614 break; 5615 } 5616 case FINAL: 5617 case ABSTRACT: 5618 case STRICTFP: 5619 case SEMI: 5620 case LITERAL_void: 5621 case LITERAL_boolean: 5622 case LITERAL_byte: 5623 case LITERAL_char: 5624 case LITERAL_short: 5625 case LITERAL_int: 5626 case LITERAL_float: 5627 case LITERAL_long: 5628 case LITERAL_double: 5629 case IDENT: 5630 case LITERAL_private: 5631 case LITERAL_public: 5632 case LITERAL_protected: 5633 case LITERAL_static: 5634 case LITERAL_transient: 5635 case LITERAL_native: 5636 case LITERAL_synchronized: 5637 case LITERAL_volatile: 5638 case LITERAL_class: 5639 case LCURLY: 5640 case RCURLY: 5641 case LPAREN: 5642 case RPAREN: 5643 case LITERAL_this: 5644 case LITERAL_super: 5645 case COLON: 5646 case LITERAL_if: 5647 case LITERAL_while: 5648 case LITERAL_do: 5649 case LITERAL_break: 5650 case LITERAL_continue: 5651 case LITERAL_return: 5652 case LITERAL_switch: 5653 case LITERAL_throw: 5654 case LITERAL_for: 5655 case LITERAL_else: 5656 case LITERAL_case: 5657 case LITERAL_default: 5658 case LITERAL_try: 5659 case PLUS: 5660 case MINUS: 5661 case INC: 5662 case DEC: 5663 case BNOT: 5664 case LNOT: 5665 case LITERAL_true: 5666 case LITERAL_false: 5667 case LITERAL_null: 5668 case LITERAL_new: 5669 case NUM_INT: 5670 case CHAR_LITERAL: 5671 case STRING_LITERAL: 5672 case NUM_FLOAT: 5673 case NUM_LONG: 5674 case NUM_DOUBLE: 5675 case ASSERT: 5676 case AT: 5677 { 5678 break; 5679 } 5680 default: 5681 { 5682 throw new NoViableAltException(LT(1), getFilename()); 5683 } 5684 } 5685 } 5686 tryBlock_AST = (AST)currentAST.root; 5687 returnAST = tryBlock_AST; 5688 } 5689 5690 public final void forInit() throws RecognitionException, TokenStreamException { 5691 5692 returnAST = null; 5693 ASTPair currentAST = new ASTPair(); 5694 AST forInit_AST = null; 5695 5696 { 5697 boolean synPredMatched237 = false; 5698 if (((_tokenSet_51.member(LA(1))) && (_tokenSet_52.member(LA(2))))) { 5699 int _m237 = mark(); 5700 synPredMatched237 = true; 5701 inputState.guessing++; 5702 try { 5703 { 5704 declaration(); 5705 } 5706 } 5707 catch (RecognitionException pe) { 5708 synPredMatched237 = false; 5709 } 5710 rewind(_m237); 5711inputState.guessing--; 5712 } 5713 if ( synPredMatched237 ) { 5714 declaration(); 5715 astFactory.addASTChild(currentAST, returnAST); 5716 } 5717 else if ((_tokenSet_16.member(LA(1))) && (_tokenSet_61.member(LA(2)))) { 5718 expressionList(); 5719 astFactory.addASTChild(currentAST, returnAST); 5720 } 5721 else if ((LA(1)==SEMI)) { 5722 } 5723 else { 5724 throw new NoViableAltException(LT(1), getFilename()); 5725 } 5726 5727 } 5728 if ( inputState.guessing==0 ) { 5729 forInit_AST = (AST)currentAST.root; 5730 forInit_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(FOR_INIT,"FOR_INIT")).add(forInit_AST)); 5731 currentAST.root = forInit_AST; 5732 currentAST.child = forInit_AST!=null &&forInit_AST.getFirstChild()!=null ? 5733 forInit_AST.getFirstChild() : forInit_AST; 5734 currentAST.advanceChildToEnd(); 5735 } 5736 forInit_AST = (AST)currentAST.root; 5737 returnAST = forInit_AST; 5738 } 5739 5740 public final void traditionalForClause() throws RecognitionException, TokenStreamException { 5741 5742 returnAST = null; 5743 ASTPair currentAST = new ASTPair(); 5744 AST traditionalForClause_AST = null; 5745 5746 forInit(); 5747 astFactory.addASTChild(currentAST, returnAST); 5748 AST tmp157_AST = null; 5749 tmp157_AST = astFactory.create(LT(1)); 5750 astFactory.addASTChild(currentAST, tmp157_AST); 5751 match(SEMI); 5752 forCond(); 5753 astFactory.addASTChild(currentAST, returnAST); 5754 AST tmp158_AST = null; 5755 tmp158_AST = astFactory.create(LT(1)); 5756 astFactory.addASTChild(currentAST, tmp158_AST); 5757 match(SEMI); 5758 forIter(); 5759 astFactory.addASTChild(currentAST, returnAST); 5760 traditionalForClause_AST = (AST)currentAST.root; 5761 returnAST = traditionalForClause_AST; 5762 } 5763 5764 public final void forEachClause() throws RecognitionException, TokenStreamException { 5765 5766 returnAST = null; 5767 ASTPair currentAST = new ASTPair(); 5768 AST forEachClause_AST = null; 5769 5770 forEachDeclarator(); 5771 astFactory.addASTChild(currentAST, returnAST); 5772 AST tmp159_AST = null; 5773 tmp159_AST = astFactory.create(LT(1)); 5774 astFactory.addASTChild(currentAST, tmp159_AST); 5775 match(COLON); 5776 expression(); 5777 astFactory.addASTChild(currentAST, returnAST); 5778 if ( inputState.guessing==0 ) { 5779 forEachClause_AST = (AST)currentAST.root; 5780 forEachClause_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(FOR_EACH_CLAUSE,"FOR_EACH_CLAUSE")).add(forEachClause_AST)); 5781 currentAST.root = forEachClause_AST; 5782 currentAST.child = forEachClause_AST!=null &&forEachClause_AST.getFirstChild()!=null ? 5783 forEachClause_AST.getFirstChild() : forEachClause_AST; 5784 currentAST.advanceChildToEnd(); 5785 } 5786 forEachClause_AST = (AST)currentAST.root; 5787 returnAST = forEachClause_AST; 5788 } 5789 5790 public final void forCond() throws RecognitionException, TokenStreamException { 5791 5792 returnAST = null; 5793 ASTPair currentAST = new ASTPair(); 5794 AST forCond_AST = null; 5795 5796 { 5797 switch ( LA(1)) { 5798 case LITERAL_void: 5799 case LITERAL_boolean: 5800 case LITERAL_byte: 5801 case LITERAL_char: 5802 case LITERAL_short: 5803 case LITERAL_int: 5804 case LITERAL_float: 5805 case LITERAL_long: 5806 case LITERAL_double: 5807 case IDENT: 5808 case LPAREN: 5809 case LITERAL_this: 5810 case LITERAL_super: 5811 case PLUS: 5812 case MINUS: 5813 case INC: 5814 case DEC: 5815 case BNOT: 5816 case LNOT: 5817 case LITERAL_true: 5818 case LITERAL_false: 5819 case LITERAL_null: 5820 case LITERAL_new: 5821 case NUM_INT: 5822 case CHAR_LITERAL: 5823 case STRING_LITERAL: 5824 case NUM_FLOAT: 5825 case NUM_LONG: 5826 case NUM_DOUBLE: 5827 { 5828 expression(); 5829 astFactory.addASTChild(currentAST, returnAST); 5830 break; 5831 } 5832 case SEMI: 5833 { 5834 break; 5835 } 5836 default: 5837 { 5838 throw new NoViableAltException(LT(1), getFilename()); 5839 } 5840 } 5841 } 5842 if ( inputState.guessing==0 ) { 5843 forCond_AST = (AST)currentAST.root; 5844 forCond_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(FOR_CONDITION,"FOR_CONDITION")).add(forCond_AST)); 5845 currentAST.root = forCond_AST; 5846 currentAST.child = forCond_AST!=null &&forCond_AST.getFirstChild()!=null ? 5847 forCond_AST.getFirstChild() : forCond_AST; 5848 currentAST.advanceChildToEnd(); 5849 } 5850 forCond_AST = (AST)currentAST.root; 5851 returnAST = forCond_AST; 5852 } 5853 5854 public final void forIter() throws RecognitionException, TokenStreamException { 5855 5856 returnAST = null; 5857 ASTPair currentAST = new ASTPair(); 5858 AST forIter_AST = null; 5859 5860 { 5861 switch ( LA(1)) { 5862 case LITERAL_void: 5863 case LITERAL_boolean: 5864 case LITERAL_byte: 5865 case LITERAL_char: 5866 case LITERAL_short: 5867 case LITERAL_int: 5868 case LITERAL_float: 5869 case LITERAL_long: 5870 case LITERAL_double: 5871 case IDENT: 5872 case LPAREN: 5873 case LITERAL_this: 5874 case LITERAL_super: 5875 case PLUS: 5876 case MINUS: 5877 case INC: 5878 case DEC: 5879 case BNOT: 5880 case LNOT: 5881 case LITERAL_true: 5882 case LITERAL_false: 5883 case LITERAL_null: 5884 case LITERAL_new: 5885 case NUM_INT: 5886 case CHAR_LITERAL: 5887 case STRING_LITERAL: 5888 case NUM_FLOAT: 5889 case NUM_LONG: 5890 case NUM_DOUBLE: 5891 { 5892 expressionList(); 5893 astFactory.addASTChild(currentAST, returnAST); 5894 break; 5895 } 5896 case RPAREN: 5897 { 5898 break; 5899 } 5900 default: 5901 { 5902 throw new NoViableAltException(LT(1), getFilename()); 5903 } 5904 } 5905 } 5906 if ( inputState.guessing==0 ) { 5907 forIter_AST = (AST)currentAST.root; 5908 forIter_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(FOR_ITERATOR,"FOR_ITERATOR")).add(forIter_AST)); 5909 currentAST.root = forIter_AST; 5910 currentAST.child = forIter_AST!=null &&forIter_AST.getFirstChild()!=null ? 5911 forIter_AST.getFirstChild() : forIter_AST; 5912 currentAST.advanceChildToEnd(); 5913 } 5914 forIter_AST = (AST)currentAST.root; 5915 returnAST = forIter_AST; 5916 } 5917 5918 public final void forEachDeclarator() throws RecognitionException, TokenStreamException { 5919 5920 returnAST = null; 5921 ASTPair currentAST = new ASTPair(); 5922 AST forEachDeclarator_AST = null; 5923 AST m_AST = null; 5924 AST t_AST = null; 5925 Token id = null; 5926 AST id_AST = null; 5927 AST d_AST = null; 5928 5929 modifiers(); 5930 m_AST = (AST)returnAST; 5931 typeSpec(false); 5932 t_AST = (AST)returnAST; 5933 id = LT(1); 5934 id_AST = astFactory.create(id); 5935 match(IDENT); 5936 declaratorBrackets(t_AST); 5937 d_AST = (AST)returnAST; 5938 if ( inputState.guessing==0 ) { 5939 forEachDeclarator_AST = (AST)currentAST.root; 5940 forEachDeclarator_AST = (AST)astFactory.make( (new ASTArray(4)).add(astFactory.create(VARIABLE_DEF,"VARIABLE_DEF")).add(m_AST).add((AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(TYPE,"TYPE")).add(d_AST))).add(id_AST)); 5941 currentAST.root = forEachDeclarator_AST; 5942 currentAST.child = forEachDeclarator_AST!=null &&forEachDeclarator_AST.getFirstChild()!=null ? 5943 forEachDeclarator_AST.getFirstChild() : forEachDeclarator_AST; 5944 currentAST.advanceChildToEnd(); 5945 } 5946 returnAST = forEachDeclarator_AST; 5947 } 5948 5949 public final void aCase() throws RecognitionException, TokenStreamException { 5950 5951 returnAST = null; 5952 ASTPair currentAST = new ASTPair(); 5953 AST aCase_AST = null; 5954 5955 { 5956 switch ( LA(1)) { 5957 case LITERAL_case: 5958 { 5959 AST tmp160_AST = null; 5960 tmp160_AST = astFactory.create(LT(1)); 5961 astFactory.makeASTRoot(currentAST, tmp160_AST); 5962 match(LITERAL_case); 5963 expression(); 5964 astFactory.addASTChild(currentAST, returnAST); 5965 break; 5966 } 5967 case LITERAL_default: 5968 { 5969 AST tmp161_AST = null; 5970 tmp161_AST = astFactory.create(LT(1)); 5971 astFactory.makeASTRoot(currentAST, tmp161_AST); 5972 match(LITERAL_default); 5973 break; 5974 } 5975 default: 5976 { 5977 throw new NoViableAltException(LT(1), getFilename()); 5978 } 5979 } 5980 } 5981 AST tmp162_AST = null; 5982 tmp162_AST = astFactory.create(LT(1)); 5983 astFactory.addASTChild(currentAST, tmp162_AST); 5984 match(COLON); 5985 aCase_AST = (AST)currentAST.root; 5986 returnAST = aCase_AST; 5987 } 5988 5989 public final void caseSList() throws RecognitionException, TokenStreamException { 5990 5991 returnAST = null; 5992 ASTPair currentAST = new ASTPair(); 5993 AST caseSList_AST = null; 5994 5995 { 5996 int _cnt233=0; 5997 _loop233: 5998 do { 5999 if (((_tokenSet_36.member(LA(1))) && (_tokenSet_59.member(LA(2))))&&(LA(1)!=LITERAL_default)) { 6000 statement(); 6001 astFactory.addASTChild(currentAST, returnAST); 6002 } 6003 else { 6004 if ( _cnt233>=1 ) { break _loop233; } else {throw new NoViableAltException(LT(1), getFilename());} 6005 } 6006 6007 _cnt233++; 6008 } while (true); 6009 } 6010 if ( inputState.guessing==0 ) { 6011 caseSList_AST = (AST)currentAST.root; 6012 caseSList_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(SLIST,"SLIST")).add(caseSList_AST)); 6013 currentAST.root = caseSList_AST; 6014 currentAST.child = caseSList_AST!=null &&caseSList_AST.getFirstChild()!=null ? 6015 caseSList_AST.getFirstChild() : caseSList_AST; 6016 currentAST.advanceChildToEnd(); 6017 } 6018 caseSList_AST = (AST)currentAST.root; 6019 returnAST = caseSList_AST; 6020 } 6021 6022 public final void expressionList() throws RecognitionException, TokenStreamException { 6023 6024 returnAST = null; 6025 ASTPair currentAST = new ASTPair(); 6026 AST expressionList_AST = null; 6027 6028 expression(); 6029 astFactory.addASTChild(currentAST, returnAST); 6030 { 6031 _loop261: 6032 do { 6033 if ((LA(1)==COMMA)) { 6034 AST tmp163_AST = null; 6035 tmp163_AST = astFactory.create(LT(1)); 6036 astFactory.addASTChild(currentAST, tmp163_AST); 6037 match(COMMA); 6038 expression(); 6039 astFactory.addASTChild(currentAST, returnAST); 6040 } 6041 else { 6042 break _loop261; 6043 } 6044 6045 } while (true); 6046 } 6047 if ( inputState.guessing==0 ) { 6048 expressionList_AST = (AST)currentAST.root; 6049 expressionList_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(ELIST,"ELIST")).add(expressionList_AST)); 6050 currentAST.root = expressionList_AST; 6051 currentAST.child = expressionList_AST!=null &&expressionList_AST.getFirstChild()!=null ? 6052 expressionList_AST.getFirstChild() : expressionList_AST; 6053 currentAST.advanceChildToEnd(); 6054 } 6055 expressionList_AST = (AST)currentAST.root; 6056 returnAST = expressionList_AST; 6057 } 6058 6059 public final void resourceSpecification() throws RecognitionException, TokenStreamException { 6060 6061 returnAST = null; 6062 ASTPair currentAST = new ASTPair(); 6063 AST resourceSpecification_AST = null; 6064 6065 AST tmp164_AST = null; 6066 tmp164_AST = astFactory.create(LT(1)); 6067 astFactory.addASTChild(currentAST, tmp164_AST); 6068 match(LPAREN); 6069 resources(); 6070 astFactory.addASTChild(currentAST, returnAST); 6071 { 6072 switch ( LA(1)) { 6073 case SEMI: 6074 { 6075 AST tmp165_AST = null; 6076 tmp165_AST = astFactory.create(LT(1)); 6077 astFactory.addASTChild(currentAST, tmp165_AST); 6078 match(SEMI); 6079 break; 6080 } 6081 case RPAREN: 6082 { 6083 break; 6084 } 6085 default: 6086 { 6087 throw new NoViableAltException(LT(1), getFilename()); 6088 } 6089 } 6090 } 6091 AST tmp166_AST = null; 6092 tmp166_AST = astFactory.create(LT(1)); 6093 astFactory.addASTChild(currentAST, tmp166_AST); 6094 match(RPAREN); 6095 if ( inputState.guessing==0 ) { 6096 resourceSpecification_AST = (AST)currentAST.root; 6097 resourceSpecification_AST = 6098 (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(RESOURCE_SPECIFICATION,"RESOURCE_SPECIFICATION")).add(resourceSpecification_AST)); 6099 currentAST.root = resourceSpecification_AST; 6100 currentAST.child = resourceSpecification_AST!=null &&resourceSpecification_AST.getFirstChild()!=null ? 6101 resourceSpecification_AST.getFirstChild() : resourceSpecification_AST; 6102 currentAST.advanceChildToEnd(); 6103 } 6104 resourceSpecification_AST = (AST)currentAST.root; 6105 returnAST = resourceSpecification_AST; 6106 } 6107 6108 public final void handler() throws RecognitionException, TokenStreamException { 6109 6110 returnAST = null; 6111 ASTPair currentAST = new ASTPair(); 6112 AST handler_AST = null; 6113 6114 AST tmp167_AST = null; 6115 tmp167_AST = astFactory.create(LT(1)); 6116 astFactory.makeASTRoot(currentAST, tmp167_AST); 6117 match(LITERAL_catch); 6118 AST tmp168_AST = null; 6119 tmp168_AST = astFactory.create(LT(1)); 6120 astFactory.addASTChild(currentAST, tmp168_AST); 6121 match(LPAREN); 6122 catchParameterDeclaration(); 6123 astFactory.addASTChild(currentAST, returnAST); 6124 AST tmp169_AST = null; 6125 tmp169_AST = astFactory.create(LT(1)); 6126 astFactory.addASTChild(currentAST, tmp169_AST); 6127 match(RPAREN); 6128 compoundStatement(); 6129 astFactory.addASTChild(currentAST, returnAST); 6130 handler_AST = (AST)currentAST.root; 6131 returnAST = handler_AST; 6132 } 6133 6134 public final void finallyHandler() throws RecognitionException, TokenStreamException { 6135 6136 returnAST = null; 6137 ASTPair currentAST = new ASTPair(); 6138 AST finallyHandler_AST = null; 6139 6140 AST tmp170_AST = null; 6141 tmp170_AST = astFactory.create(LT(1)); 6142 astFactory.makeASTRoot(currentAST, tmp170_AST); 6143 match(LITERAL_finally); 6144 compoundStatement(); 6145 astFactory.addASTChild(currentAST, returnAST); 6146 finallyHandler_AST = (AST)currentAST.root; 6147 returnAST = finallyHandler_AST; 6148 } 6149 6150 public final void resources() throws RecognitionException, TokenStreamException { 6151 6152 returnAST = null; 6153 ASTPair currentAST = new ASTPair(); 6154 AST resources_AST = null; 6155 6156 resource(); 6157 astFactory.addASTChild(currentAST, returnAST); 6158 { 6159 _loop251: 6160 do { 6161 if ((LA(1)==SEMI) && (_tokenSet_51.member(LA(2)))) { 6162 AST tmp171_AST = null; 6163 tmp171_AST = astFactory.create(LT(1)); 6164 astFactory.addASTChild(currentAST, tmp171_AST); 6165 match(SEMI); 6166 resource(); 6167 astFactory.addASTChild(currentAST, returnAST); 6168 } 6169 else { 6170 break _loop251; 6171 } 6172 6173 } while (true); 6174 } 6175 if ( inputState.guessing==0 ) { 6176 resources_AST = (AST)currentAST.root; 6177 resources_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(RESOURCES,"RESOURCES")).add(resources_AST)); 6178 currentAST.root = resources_AST; 6179 currentAST.child = resources_AST!=null &&resources_AST.getFirstChild()!=null ? 6180 resources_AST.getFirstChild() : resources_AST; 6181 currentAST.advanceChildToEnd(); 6182 } 6183 resources_AST = (AST)currentAST.root; 6184 returnAST = resources_AST; 6185 } 6186 6187 public final void resource() throws RecognitionException, TokenStreamException { 6188 6189 returnAST = null; 6190 ASTPair currentAST = new ASTPair(); 6191 AST resource_AST = null; 6192 6193 modifiers(); 6194 astFactory.addASTChild(currentAST, returnAST); 6195 typeSpec(true); 6196 astFactory.addASTChild(currentAST, returnAST); 6197 AST tmp172_AST = null; 6198 tmp172_AST = astFactory.create(LT(1)); 6199 astFactory.addASTChild(currentAST, tmp172_AST); 6200 match(IDENT); 6201 resource_assign(); 6202 astFactory.addASTChild(currentAST, returnAST); 6203 if ( inputState.guessing==0 ) { 6204 resource_AST = (AST)currentAST.root; 6205 resource_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(RESOURCE,"RESOURCE")).add(resource_AST)); 6206 currentAST.root = resource_AST; 6207 currentAST.child = resource_AST!=null &&resource_AST.getFirstChild()!=null ? 6208 resource_AST.getFirstChild() : resource_AST; 6209 currentAST.advanceChildToEnd(); 6210 } 6211 resource_AST = (AST)currentAST.root; 6212 returnAST = resource_AST; 6213 } 6214 6215 public final void resource_assign() throws RecognitionException, TokenStreamException { 6216 6217 returnAST = null; 6218 ASTPair currentAST = new ASTPair(); 6219 AST resource_assign_AST = null; 6220 6221 AST tmp173_AST = null; 6222 tmp173_AST = astFactory.create(LT(1)); 6223 astFactory.makeASTRoot(currentAST, tmp173_AST); 6224 match(ASSIGN); 6225 expression(); 6226 astFactory.addASTChild(currentAST, returnAST); 6227 resource_assign_AST = (AST)currentAST.root; 6228 returnAST = resource_assign_AST; 6229 } 6230 6231 public final void lambdaExpression() throws RecognitionException, TokenStreamException { 6232 6233 returnAST = null; 6234 ASTPair currentAST = new ASTPair(); 6235 AST lambdaExpression_AST = null; 6236 6237 lambdaParameters(); 6238 astFactory.addASTChild(currentAST, returnAST); 6239 AST tmp174_AST = null; 6240 tmp174_AST = astFactory.create(LT(1)); 6241 astFactory.makeASTRoot(currentAST, tmp174_AST); 6242 match(LAMBDA); 6243 lambdaBody(); 6244 astFactory.addASTChild(currentAST, returnAST); 6245 lambdaExpression_AST = (AST)currentAST.root; 6246 returnAST = lambdaExpression_AST; 6247 } 6248 6249 public final void assignmentExpression() throws RecognitionException, TokenStreamException { 6250 6251 returnAST = null; 6252 ASTPair currentAST = new ASTPair(); 6253 AST assignmentExpression_AST = null; 6254 6255 conditionalExpression(); 6256 astFactory.addASTChild(currentAST, returnAST); 6257 { 6258 switch ( LA(1)) { 6259 case ASSIGN: 6260 case PLUS_ASSIGN: 6261 case MINUS_ASSIGN: 6262 case STAR_ASSIGN: 6263 case DIV_ASSIGN: 6264 case MOD_ASSIGN: 6265 case SR_ASSIGN: 6266 case BSR_ASSIGN: 6267 case SL_ASSIGN: 6268 case BAND_ASSIGN: 6269 case BXOR_ASSIGN: 6270 case BOR_ASSIGN: 6271 { 6272 { 6273 switch ( LA(1)) { 6274 case ASSIGN: 6275 { 6276 AST tmp175_AST = null; 6277 tmp175_AST = astFactory.create(LT(1)); 6278 astFactory.makeASTRoot(currentAST, tmp175_AST); 6279 match(ASSIGN); 6280 break; 6281 } 6282 case PLUS_ASSIGN: 6283 { 6284 AST tmp176_AST = null; 6285 tmp176_AST = astFactory.create(LT(1)); 6286 astFactory.makeASTRoot(currentAST, tmp176_AST); 6287 match(PLUS_ASSIGN); 6288 break; 6289 } 6290 case MINUS_ASSIGN: 6291 { 6292 AST tmp177_AST = null; 6293 tmp177_AST = astFactory.create(LT(1)); 6294 astFactory.makeASTRoot(currentAST, tmp177_AST); 6295 match(MINUS_ASSIGN); 6296 break; 6297 } 6298 case STAR_ASSIGN: 6299 { 6300 AST tmp178_AST = null; 6301 tmp178_AST = astFactory.create(LT(1)); 6302 astFactory.makeASTRoot(currentAST, tmp178_AST); 6303 match(STAR_ASSIGN); 6304 break; 6305 } 6306 case DIV_ASSIGN: 6307 { 6308 AST tmp179_AST = null; 6309 tmp179_AST = astFactory.create(LT(1)); 6310 astFactory.makeASTRoot(currentAST, tmp179_AST); 6311 match(DIV_ASSIGN); 6312 break; 6313 } 6314 case MOD_ASSIGN: 6315 { 6316 AST tmp180_AST = null; 6317 tmp180_AST = astFactory.create(LT(1)); 6318 astFactory.makeASTRoot(currentAST, tmp180_AST); 6319 match(MOD_ASSIGN); 6320 break; 6321 } 6322 case SR_ASSIGN: 6323 { 6324 AST tmp181_AST = null; 6325 tmp181_AST = astFactory.create(LT(1)); 6326 astFactory.makeASTRoot(currentAST, tmp181_AST); 6327 match(SR_ASSIGN); 6328 break; 6329 } 6330 case BSR_ASSIGN: 6331 { 6332 AST tmp182_AST = null; 6333 tmp182_AST = astFactory.create(LT(1)); 6334 astFactory.makeASTRoot(currentAST, tmp182_AST); 6335 match(BSR_ASSIGN); 6336 break; 6337 } 6338 case SL_ASSIGN: 6339 { 6340 AST tmp183_AST = null; 6341 tmp183_AST = astFactory.create(LT(1)); 6342 astFactory.makeASTRoot(currentAST, tmp183_AST); 6343 match(SL_ASSIGN); 6344 break; 6345 } 6346 case BAND_ASSIGN: 6347 { 6348 AST tmp184_AST = null; 6349 tmp184_AST = astFactory.create(LT(1)); 6350 astFactory.makeASTRoot(currentAST, tmp184_AST); 6351 match(BAND_ASSIGN); 6352 break; 6353 } 6354 case BXOR_ASSIGN: 6355 { 6356 AST tmp185_AST = null; 6357 tmp185_AST = astFactory.create(LT(1)); 6358 astFactory.makeASTRoot(currentAST, tmp185_AST); 6359 match(BXOR_ASSIGN); 6360 break; 6361 } 6362 case BOR_ASSIGN: 6363 { 6364 AST tmp186_AST = null; 6365 tmp186_AST = astFactory.create(LT(1)); 6366 astFactory.makeASTRoot(currentAST, tmp186_AST); 6367 match(BOR_ASSIGN); 6368 break; 6369 } 6370 default: 6371 { 6372 throw new NoViableAltException(LT(1), getFilename()); 6373 } 6374 } 6375 } 6376 { 6377 boolean synPredMatched267 = false; 6378 if (((LA(1)==IDENT||LA(1)==LPAREN) && (_tokenSet_15.member(LA(2))))) { 6379 int _m267 = mark(); 6380 synPredMatched267 = true; 6381 inputState.guessing++; 6382 try { 6383 { 6384 lambdaExpression(); 6385 } 6386 } 6387 catch (RecognitionException pe) { 6388 synPredMatched267 = false; 6389 } 6390 rewind(_m267); 6391inputState.guessing--; 6392 } 6393 if ( synPredMatched267 ) { 6394 lambdaExpression(); 6395 astFactory.addASTChild(currentAST, returnAST); 6396 } 6397 else if ((_tokenSet_16.member(LA(1))) && (_tokenSet_18.member(LA(2)))) { 6398 assignmentExpression(); 6399 astFactory.addASTChild(currentAST, returnAST); 6400 } 6401 else { 6402 throw new NoViableAltException(LT(1), getFilename()); 6403 } 6404 6405 } 6406 break; 6407 } 6408 case FINAL: 6409 case ABSTRACT: 6410 case STRICTFP: 6411 case SEMI: 6412 case RBRACK: 6413 case LITERAL_void: 6414 case LITERAL_boolean: 6415 case LITERAL_byte: 6416 case LITERAL_char: 6417 case LITERAL_short: 6418 case LITERAL_int: 6419 case LITERAL_float: 6420 case LITERAL_long: 6421 case LITERAL_double: 6422 case IDENT: 6423 case LITERAL_private: 6424 case LITERAL_public: 6425 case LITERAL_protected: 6426 case LITERAL_static: 6427 case LITERAL_transient: 6428 case LITERAL_native: 6429 case LITERAL_synchronized: 6430 case LITERAL_volatile: 6431 case LITERAL_class: 6432 case LITERAL_interface: 6433 case LCURLY: 6434 case RCURLY: 6435 case COMMA: 6436 case LPAREN: 6437 case RPAREN: 6438 case LITERAL_this: 6439 case LITERAL_super: 6440 case COLON: 6441 case LITERAL_if: 6442 case LITERAL_while: 6443 case LITERAL_do: 6444 case LITERAL_break: 6445 case LITERAL_continue: 6446 case LITERAL_return: 6447 case LITERAL_switch: 6448 case LITERAL_throw: 6449 case LITERAL_for: 6450 case LITERAL_else: 6451 case LITERAL_case: 6452 case LITERAL_default: 6453 case LITERAL_try: 6454 case LT: 6455 case PLUS: 6456 case MINUS: 6457 case INC: 6458 case DEC: 6459 case BNOT: 6460 case LNOT: 6461 case LITERAL_true: 6462 case LITERAL_false: 6463 case LITERAL_null: 6464 case LITERAL_new: 6465 case NUM_INT: 6466 case CHAR_LITERAL: 6467 case STRING_LITERAL: 6468 case NUM_FLOAT: 6469 case NUM_LONG: 6470 case NUM_DOUBLE: 6471 case ASSERT: 6472 case ENUM: 6473 case AT: 6474 { 6475 break; 6476 } 6477 default: 6478 { 6479 throw new NoViableAltException(LT(1), getFilename()); 6480 } 6481 } 6482 } 6483 assignmentExpression_AST = (AST)currentAST.root; 6484 returnAST = assignmentExpression_AST; 6485 } 6486 6487 public final void logicalOrExpression() throws RecognitionException, TokenStreamException { 6488 6489 returnAST = null; 6490 ASTPair currentAST = new ASTPair(); 6491 AST logicalOrExpression_AST = null; 6492 6493 logicalAndExpression(); 6494 astFactory.addASTChild(currentAST, returnAST); 6495 { 6496 _loop278: 6497 do { 6498 if ((LA(1)==LOR)) { 6499 AST tmp187_AST = null; 6500 tmp187_AST = astFactory.create(LT(1)); 6501 astFactory.makeASTRoot(currentAST, tmp187_AST); 6502 match(LOR); 6503 logicalAndExpression(); 6504 astFactory.addASTChild(currentAST, returnAST); 6505 } 6506 else { 6507 break _loop278; 6508 } 6509 6510 } while (true); 6511 } 6512 logicalOrExpression_AST = (AST)currentAST.root; 6513 returnAST = logicalOrExpression_AST; 6514 } 6515 6516 public final void logicalAndExpression() throws RecognitionException, TokenStreamException { 6517 6518 returnAST = null; 6519 ASTPair currentAST = new ASTPair(); 6520 AST logicalAndExpression_AST = null; 6521 6522 inclusiveOrExpression(); 6523 astFactory.addASTChild(currentAST, returnAST); 6524 { 6525 _loop281: 6526 do { 6527 if ((LA(1)==LAND)) { 6528 AST tmp188_AST = null; 6529 tmp188_AST = astFactory.create(LT(1)); 6530 astFactory.makeASTRoot(currentAST, tmp188_AST); 6531 match(LAND); 6532 inclusiveOrExpression(); 6533 astFactory.addASTChild(currentAST, returnAST); 6534 } 6535 else { 6536 break _loop281; 6537 } 6538 6539 } while (true); 6540 } 6541 logicalAndExpression_AST = (AST)currentAST.root; 6542 returnAST = logicalAndExpression_AST; 6543 } 6544 6545 public final void inclusiveOrExpression() throws RecognitionException, TokenStreamException { 6546 6547 returnAST = null; 6548 ASTPair currentAST = new ASTPair(); 6549 AST inclusiveOrExpression_AST = null; 6550 6551 exclusiveOrExpression(); 6552 astFactory.addASTChild(currentAST, returnAST); 6553 { 6554 _loop284: 6555 do { 6556 if ((LA(1)==BOR)) { 6557 AST tmp189_AST = null; 6558 tmp189_AST = astFactory.create(LT(1)); 6559 astFactory.makeASTRoot(currentAST, tmp189_AST); 6560 match(BOR); 6561 exclusiveOrExpression(); 6562 astFactory.addASTChild(currentAST, returnAST); 6563 } 6564 else { 6565 break _loop284; 6566 } 6567 6568 } while (true); 6569 } 6570 inclusiveOrExpression_AST = (AST)currentAST.root; 6571 returnAST = inclusiveOrExpression_AST; 6572 } 6573 6574 public final void exclusiveOrExpression() throws RecognitionException, TokenStreamException { 6575 6576 returnAST = null; 6577 ASTPair currentAST = new ASTPair(); 6578 AST exclusiveOrExpression_AST = null; 6579 6580 andExpression(); 6581 astFactory.addASTChild(currentAST, returnAST); 6582 { 6583 _loop287: 6584 do { 6585 if ((LA(1)==BXOR)) { 6586 AST tmp190_AST = null; 6587 tmp190_AST = astFactory.create(LT(1)); 6588 astFactory.makeASTRoot(currentAST, tmp190_AST); 6589 match(BXOR); 6590 andExpression(); 6591 astFactory.addASTChild(currentAST, returnAST); 6592 } 6593 else { 6594 break _loop287; 6595 } 6596 6597 } while (true); 6598 } 6599 exclusiveOrExpression_AST = (AST)currentAST.root; 6600 returnAST = exclusiveOrExpression_AST; 6601 } 6602 6603 public final void andExpression() throws RecognitionException, TokenStreamException { 6604 6605 returnAST = null; 6606 ASTPair currentAST = new ASTPair(); 6607 AST andExpression_AST = null; 6608 6609 equalityExpression(); 6610 astFactory.addASTChild(currentAST, returnAST); 6611 { 6612 _loop290: 6613 do { 6614 if ((LA(1)==BAND)) { 6615 AST tmp191_AST = null; 6616 tmp191_AST = astFactory.create(LT(1)); 6617 astFactory.makeASTRoot(currentAST, tmp191_AST); 6618 match(BAND); 6619 equalityExpression(); 6620 astFactory.addASTChild(currentAST, returnAST); 6621 } 6622 else { 6623 break _loop290; 6624 } 6625 6626 } while (true); 6627 } 6628 andExpression_AST = (AST)currentAST.root; 6629 returnAST = andExpression_AST; 6630 } 6631 6632 public final void equalityExpression() throws RecognitionException, TokenStreamException { 6633 6634 returnAST = null; 6635 ASTPair currentAST = new ASTPair(); 6636 AST equalityExpression_AST = null; 6637 6638 relationalExpression(); 6639 astFactory.addASTChild(currentAST, returnAST); 6640 { 6641 _loop294: 6642 do { 6643 if ((LA(1)==NOT_EQUAL||LA(1)==EQUAL)) { 6644 { 6645 switch ( LA(1)) { 6646 case NOT_EQUAL: 6647 { 6648 AST tmp192_AST = null; 6649 tmp192_AST = astFactory.create(LT(1)); 6650 astFactory.makeASTRoot(currentAST, tmp192_AST); 6651 match(NOT_EQUAL); 6652 break; 6653 } 6654 case EQUAL: 6655 { 6656 AST tmp193_AST = null; 6657 tmp193_AST = astFactory.create(LT(1)); 6658 astFactory.makeASTRoot(currentAST, tmp193_AST); 6659 match(EQUAL); 6660 break; 6661 } 6662 default: 6663 { 6664 throw new NoViableAltException(LT(1), getFilename()); 6665 } 6666 } 6667 } 6668 relationalExpression(); 6669 astFactory.addASTChild(currentAST, returnAST); 6670 } 6671 else { 6672 break _loop294; 6673 } 6674 6675 } while (true); 6676 } 6677 equalityExpression_AST = (AST)currentAST.root; 6678 returnAST = equalityExpression_AST; 6679 } 6680 6681 public final void relationalExpression() throws RecognitionException, TokenStreamException { 6682 6683 returnAST = null; 6684 ASTPair currentAST = new ASTPair(); 6685 AST relationalExpression_AST = null; 6686 6687 shiftExpression(); 6688 astFactory.addASTChild(currentAST, returnAST); 6689 { 6690 switch ( LA(1)) { 6691 case LITERAL_instanceof: 6692 { 6693 AST tmp194_AST = null; 6694 tmp194_AST = astFactory.create(LT(1)); 6695 astFactory.makeASTRoot(currentAST, tmp194_AST); 6696 match(LITERAL_instanceof); 6697 typeSpec(true); 6698 astFactory.addASTChild(currentAST, returnAST); 6699 break; 6700 } 6701 case FINAL: 6702 case ABSTRACT: 6703 case STRICTFP: 6704 case SEMI: 6705 case RBRACK: 6706 case LITERAL_void: 6707 case LITERAL_boolean: 6708 case LITERAL_byte: 6709 case LITERAL_char: 6710 case LITERAL_short: 6711 case LITERAL_int: 6712 case LITERAL_float: 6713 case LITERAL_long: 6714 case LITERAL_double: 6715 case IDENT: 6716 case LITERAL_private: 6717 case LITERAL_public: 6718 case LITERAL_protected: 6719 case LITERAL_static: 6720 case LITERAL_transient: 6721 case LITERAL_native: 6722 case LITERAL_synchronized: 6723 case LITERAL_volatile: 6724 case LITERAL_class: 6725 case LITERAL_interface: 6726 case LCURLY: 6727 case RCURLY: 6728 case COMMA: 6729 case LPAREN: 6730 case RPAREN: 6731 case LITERAL_this: 6732 case LITERAL_super: 6733 case ASSIGN: 6734 case COLON: 6735 case LITERAL_if: 6736 case LITERAL_while: 6737 case LITERAL_do: 6738 case LITERAL_break: 6739 case LITERAL_continue: 6740 case LITERAL_return: 6741 case LITERAL_switch: 6742 case LITERAL_throw: 6743 case LITERAL_for: 6744 case LITERAL_else: 6745 case LITERAL_case: 6746 case LITERAL_default: 6747 case LITERAL_try: 6748 case PLUS_ASSIGN: 6749 case MINUS_ASSIGN: 6750 case STAR_ASSIGN: 6751 case DIV_ASSIGN: 6752 case MOD_ASSIGN: 6753 case SR_ASSIGN: 6754 case BSR_ASSIGN: 6755 case SL_ASSIGN: 6756 case BAND_ASSIGN: 6757 case BXOR_ASSIGN: 6758 case BOR_ASSIGN: 6759 case QUESTION: 6760 case LOR: 6761 case LAND: 6762 case BOR: 6763 case BXOR: 6764 case BAND: 6765 case NOT_EQUAL: 6766 case EQUAL: 6767 case LT: 6768 case GT: 6769 case LE: 6770 case GE: 6771 case PLUS: 6772 case MINUS: 6773 case INC: 6774 case DEC: 6775 case BNOT: 6776 case LNOT: 6777 case LITERAL_true: 6778 case LITERAL_false: 6779 case LITERAL_null: 6780 case LITERAL_new: 6781 case NUM_INT: 6782 case CHAR_LITERAL: 6783 case STRING_LITERAL: 6784 case NUM_FLOAT: 6785 case NUM_LONG: 6786 case NUM_DOUBLE: 6787 case ASSERT: 6788 case ENUM: 6789 case AT: 6790 { 6791 break; 6792 } 6793 default: 6794 { 6795 throw new NoViableAltException(LT(1), getFilename()); 6796 } 6797 } 6798 } 6799 { 6800 { 6801 _loop300: 6802 do { 6803 if (((LA(1) >= LT && LA(1) <= GE)) && (_tokenSet_16.member(LA(2)))) { 6804 { 6805 switch ( LA(1)) { 6806 case LT: 6807 { 6808 AST tmp195_AST = null; 6809 tmp195_AST = astFactory.create(LT(1)); 6810 astFactory.makeASTRoot(currentAST, tmp195_AST); 6811 match(LT); 6812 break; 6813 } 6814 case GT: 6815 { 6816 AST tmp196_AST = null; 6817 tmp196_AST = astFactory.create(LT(1)); 6818 astFactory.makeASTRoot(currentAST, tmp196_AST); 6819 match(GT); 6820 break; 6821 } 6822 case LE: 6823 { 6824 AST tmp197_AST = null; 6825 tmp197_AST = astFactory.create(LT(1)); 6826 astFactory.makeASTRoot(currentAST, tmp197_AST); 6827 match(LE); 6828 break; 6829 } 6830 case GE: 6831 { 6832 AST tmp198_AST = null; 6833 tmp198_AST = astFactory.create(LT(1)); 6834 astFactory.makeASTRoot(currentAST, tmp198_AST); 6835 match(GE); 6836 break; 6837 } 6838 default: 6839 { 6840 throw new NoViableAltException(LT(1), getFilename()); 6841 } 6842 } 6843 } 6844 shiftExpression(); 6845 astFactory.addASTChild(currentAST, returnAST); 6846 } 6847 else { 6848 break _loop300; 6849 } 6850 6851 } while (true); 6852 } 6853 } 6854 relationalExpression_AST = (AST)currentAST.root; 6855 returnAST = relationalExpression_AST; 6856 } 6857 6858 public final void shiftExpression() throws RecognitionException, TokenStreamException { 6859 6860 returnAST = null; 6861 ASTPair currentAST = new ASTPair(); 6862 AST shiftExpression_AST = null; 6863 6864 additiveExpression(); 6865 astFactory.addASTChild(currentAST, returnAST); 6866 { 6867 _loop304: 6868 do { 6869 if (((LA(1) >= SL && LA(1) <= BSR))) { 6870 { 6871 switch ( LA(1)) { 6872 case SL: 6873 { 6874 AST tmp199_AST = null; 6875 tmp199_AST = astFactory.create(LT(1)); 6876 astFactory.makeASTRoot(currentAST, tmp199_AST); 6877 match(SL); 6878 break; 6879 } 6880 case SR: 6881 { 6882 AST tmp200_AST = null; 6883 tmp200_AST = astFactory.create(LT(1)); 6884 astFactory.makeASTRoot(currentAST, tmp200_AST); 6885 match(SR); 6886 break; 6887 } 6888 case BSR: 6889 { 6890 AST tmp201_AST = null; 6891 tmp201_AST = astFactory.create(LT(1)); 6892 astFactory.makeASTRoot(currentAST, tmp201_AST); 6893 match(BSR); 6894 break; 6895 } 6896 default: 6897 { 6898 throw new NoViableAltException(LT(1), getFilename()); 6899 } 6900 } 6901 } 6902 additiveExpression(); 6903 astFactory.addASTChild(currentAST, returnAST); 6904 } 6905 else { 6906 break _loop304; 6907 } 6908 6909 } while (true); 6910 } 6911 shiftExpression_AST = (AST)currentAST.root; 6912 returnAST = shiftExpression_AST; 6913 } 6914 6915 public final void additiveExpression() throws RecognitionException, TokenStreamException { 6916 6917 returnAST = null; 6918 ASTPair currentAST = new ASTPair(); 6919 AST additiveExpression_AST = null; 6920 6921 multiplicativeExpression(); 6922 astFactory.addASTChild(currentAST, returnAST); 6923 { 6924 _loop308: 6925 do { 6926 if ((LA(1)==PLUS||LA(1)==MINUS) && (_tokenSet_16.member(LA(2)))) { 6927 { 6928 switch ( LA(1)) { 6929 case PLUS: 6930 { 6931 AST tmp202_AST = null; 6932 tmp202_AST = astFactory.create(LT(1)); 6933 astFactory.makeASTRoot(currentAST, tmp202_AST); 6934 match(PLUS); 6935 break; 6936 } 6937 case MINUS: 6938 { 6939 AST tmp203_AST = null; 6940 tmp203_AST = astFactory.create(LT(1)); 6941 astFactory.makeASTRoot(currentAST, tmp203_AST); 6942 match(MINUS); 6943 break; 6944 } 6945 default: 6946 { 6947 throw new NoViableAltException(LT(1), getFilename()); 6948 } 6949 } 6950 } 6951 multiplicativeExpression(); 6952 astFactory.addASTChild(currentAST, returnAST); 6953 } 6954 else { 6955 break _loop308; 6956 } 6957 6958 } while (true); 6959 } 6960 additiveExpression_AST = (AST)currentAST.root; 6961 returnAST = additiveExpression_AST; 6962 } 6963 6964 public final void multiplicativeExpression() throws RecognitionException, TokenStreamException { 6965 6966 returnAST = null; 6967 ASTPair currentAST = new ASTPair(); 6968 AST multiplicativeExpression_AST = null; 6969 6970 unaryExpression(); 6971 astFactory.addASTChild(currentAST, returnAST); 6972 { 6973 _loop312: 6974 do { 6975 if ((_tokenSet_62.member(LA(1)))) { 6976 { 6977 switch ( LA(1)) { 6978 case STAR: 6979 { 6980 AST tmp204_AST = null; 6981 tmp204_AST = astFactory.create(LT(1)); 6982 astFactory.makeASTRoot(currentAST, tmp204_AST); 6983 match(STAR); 6984 break; 6985 } 6986 case DIV: 6987 { 6988 AST tmp205_AST = null; 6989 tmp205_AST = astFactory.create(LT(1)); 6990 astFactory.makeASTRoot(currentAST, tmp205_AST); 6991 match(DIV); 6992 break; 6993 } 6994 case MOD: 6995 { 6996 AST tmp206_AST = null; 6997 tmp206_AST = astFactory.create(LT(1)); 6998 astFactory.makeASTRoot(currentAST, tmp206_AST); 6999 match(MOD); 7000 break; 7001 } 7002 default: 7003 { 7004 throw new NoViableAltException(LT(1), getFilename()); 7005 } 7006 } 7007 } 7008 unaryExpression(); 7009 astFactory.addASTChild(currentAST, returnAST); 7010 } 7011 else { 7012 break _loop312; 7013 } 7014 7015 } while (true); 7016 } 7017 multiplicativeExpression_AST = (AST)currentAST.root; 7018 returnAST = multiplicativeExpression_AST; 7019 } 7020 7021 public final void unaryExpression() throws RecognitionException, TokenStreamException { 7022 7023 returnAST = null; 7024 ASTPair currentAST = new ASTPair(); 7025 AST unaryExpression_AST = null; 7026 7027 switch ( LA(1)) { 7028 case INC: 7029 { 7030 AST tmp207_AST = null; 7031 tmp207_AST = astFactory.create(LT(1)); 7032 astFactory.makeASTRoot(currentAST, tmp207_AST); 7033 match(INC); 7034 unaryExpression(); 7035 astFactory.addASTChild(currentAST, returnAST); 7036 unaryExpression_AST = (AST)currentAST.root; 7037 break; 7038 } 7039 case DEC: 7040 { 7041 AST tmp208_AST = null; 7042 tmp208_AST = astFactory.create(LT(1)); 7043 astFactory.makeASTRoot(currentAST, tmp208_AST); 7044 match(DEC); 7045 unaryExpression(); 7046 astFactory.addASTChild(currentAST, returnAST); 7047 unaryExpression_AST = (AST)currentAST.root; 7048 break; 7049 } 7050 case MINUS: 7051 { 7052 AST tmp209_AST = null; 7053 tmp209_AST = astFactory.create(LT(1)); 7054 astFactory.makeASTRoot(currentAST, tmp209_AST); 7055 match(MINUS); 7056 if ( inputState.guessing==0 ) { 7057 tmp209_AST.setType(UNARY_MINUS); 7058 } 7059 unaryExpression(); 7060 astFactory.addASTChild(currentAST, returnAST); 7061 unaryExpression_AST = (AST)currentAST.root; 7062 break; 7063 } 7064 case PLUS: 7065 { 7066 AST tmp210_AST = null; 7067 tmp210_AST = astFactory.create(LT(1)); 7068 astFactory.makeASTRoot(currentAST, tmp210_AST); 7069 match(PLUS); 7070 if ( inputState.guessing==0 ) { 7071 tmp210_AST.setType(UNARY_PLUS); 7072 } 7073 unaryExpression(); 7074 astFactory.addASTChild(currentAST, returnAST); 7075 unaryExpression_AST = (AST)currentAST.root; 7076 break; 7077 } 7078 case LITERAL_void: 7079 case LITERAL_boolean: 7080 case LITERAL_byte: 7081 case LITERAL_char: 7082 case LITERAL_short: 7083 case LITERAL_int: 7084 case LITERAL_float: 7085 case LITERAL_long: 7086 case LITERAL_double: 7087 case IDENT: 7088 case LPAREN: 7089 case LITERAL_this: 7090 case LITERAL_super: 7091 case BNOT: 7092 case LNOT: 7093 case LITERAL_true: 7094 case LITERAL_false: 7095 case LITERAL_null: 7096 case LITERAL_new: 7097 case NUM_INT: 7098 case CHAR_LITERAL: 7099 case STRING_LITERAL: 7100 case NUM_FLOAT: 7101 case NUM_LONG: 7102 case NUM_DOUBLE: 7103 { 7104 unaryExpressionNotPlusMinus(); 7105 astFactory.addASTChild(currentAST, returnAST); 7106 unaryExpression_AST = (AST)currentAST.root; 7107 break; 7108 } 7109 default: 7110 { 7111 throw new NoViableAltException(LT(1), getFilename()); 7112 } 7113 } 7114 returnAST = unaryExpression_AST; 7115 } 7116 7117 public final void unaryExpressionNotPlusMinus() throws RecognitionException, TokenStreamException { 7118 7119 returnAST = null; 7120 ASTPair currentAST = new ASTPair(); 7121 AST unaryExpressionNotPlusMinus_AST = null; 7122 Token lpb = null; 7123 AST lpb_AST = null; 7124 Token lp = null; 7125 AST lp_AST = null; 7126 Token lpl = null; 7127 AST lpl_AST = null; 7128 7129 switch ( LA(1)) { 7130 case BNOT: 7131 { 7132 AST tmp211_AST = null; 7133 tmp211_AST = astFactory.create(LT(1)); 7134 astFactory.makeASTRoot(currentAST, tmp211_AST); 7135 match(BNOT); 7136 unaryExpression(); 7137 astFactory.addASTChild(currentAST, returnAST); 7138 unaryExpressionNotPlusMinus_AST = (AST)currentAST.root; 7139 break; 7140 } 7141 case LNOT: 7142 { 7143 AST tmp212_AST = null; 7144 tmp212_AST = astFactory.create(LT(1)); 7145 astFactory.makeASTRoot(currentAST, tmp212_AST); 7146 match(LNOT); 7147 unaryExpression(); 7148 astFactory.addASTChild(currentAST, returnAST); 7149 unaryExpressionNotPlusMinus_AST = (AST)currentAST.root; 7150 break; 7151 } 7152 case LITERAL_void: 7153 case LITERAL_boolean: 7154 case LITERAL_byte: 7155 case LITERAL_char: 7156 case LITERAL_short: 7157 case LITERAL_int: 7158 case LITERAL_float: 7159 case LITERAL_long: 7160 case LITERAL_double: 7161 case IDENT: 7162 case LPAREN: 7163 case LITERAL_this: 7164 case LITERAL_super: 7165 case LITERAL_true: 7166 case LITERAL_false: 7167 case LITERAL_null: 7168 case LITERAL_new: 7169 case NUM_INT: 7170 case CHAR_LITERAL: 7171 case STRING_LITERAL: 7172 case NUM_FLOAT: 7173 case NUM_LONG: 7174 case NUM_DOUBLE: 7175 { 7176 { 7177 boolean synPredMatched317 = false; 7178 if (((LA(1)==LPAREN) && ((LA(2) >= LITERAL_void && LA(2) <= LITERAL_double)))) { 7179 int _m317 = mark(); 7180 synPredMatched317 = true; 7181 inputState.guessing++; 7182 try { 7183 { 7184 match(LPAREN); 7185 builtInTypeSpec(true); 7186 match(RPAREN); 7187 unaryExpression(); 7188 } 7189 } 7190 catch (RecognitionException pe) { 7191 synPredMatched317 = false; 7192 } 7193 rewind(_m317); 7194inputState.guessing--; 7195 } 7196 if ( synPredMatched317 ) { 7197 lpb = LT(1); 7198 lpb_AST = astFactory.create(lpb); 7199 astFactory.makeASTRoot(currentAST, lpb_AST); 7200 match(LPAREN); 7201 if ( inputState.guessing==0 ) { 7202 lpb_AST.setType(TYPECAST); 7203 } 7204 builtInTypeSpec(true); 7205 astFactory.addASTChild(currentAST, returnAST); 7206 AST tmp213_AST = null; 7207 tmp213_AST = astFactory.create(LT(1)); 7208 astFactory.addASTChild(currentAST, tmp213_AST); 7209 match(RPAREN); 7210 unaryExpression(); 7211 astFactory.addASTChild(currentAST, returnAST); 7212 } 7213 else { 7214 boolean synPredMatched319 = false; 7215 if (((LA(1)==LPAREN) && (LA(2)==IDENT||LA(2)==AT))) { 7216 int _m319 = mark(); 7217 synPredMatched319 = true; 7218 inputState.guessing++; 7219 try { 7220 { 7221 match(LPAREN); 7222 typeCastParameters(); 7223 match(RPAREN); 7224 unaryExpressionNotPlusMinus(); 7225 } 7226 } 7227 catch (RecognitionException pe) { 7228 synPredMatched319 = false; 7229 } 7230 rewind(_m319); 7231inputState.guessing--; 7232 } 7233 if ( synPredMatched319 ) { 7234 lp = LT(1); 7235 lp_AST = astFactory.create(lp); 7236 astFactory.makeASTRoot(currentAST, lp_AST); 7237 match(LPAREN); 7238 if ( inputState.guessing==0 ) { 7239 lp_AST.setType(TYPECAST); 7240 } 7241 typeCastParameters(); 7242 astFactory.addASTChild(currentAST, returnAST); 7243 AST tmp214_AST = null; 7244 tmp214_AST = astFactory.create(LT(1)); 7245 astFactory.addASTChild(currentAST, tmp214_AST); 7246 match(RPAREN); 7247 unaryExpressionNotPlusMinus(); 7248 astFactory.addASTChild(currentAST, returnAST); 7249 } 7250 else { 7251 boolean synPredMatched321 = false; 7252 if (((LA(1)==LPAREN) && (LA(2)==IDENT||LA(2)==AT))) { 7253 int _m321 = mark(); 7254 synPredMatched321 = true; 7255 inputState.guessing++; 7256 try { 7257 { 7258 match(LPAREN); 7259 typeCastParameters(); 7260 match(RPAREN); 7261 lambdaExpression(); 7262 } 7263 } 7264 catch (RecognitionException pe) { 7265 synPredMatched321 = false; 7266 } 7267 rewind(_m321); 7268inputState.guessing--; 7269 } 7270 if ( synPredMatched321 ) { 7271 lpl = LT(1); 7272 lpl_AST = astFactory.create(lpl); 7273 astFactory.makeASTRoot(currentAST, lpl_AST); 7274 match(LPAREN); 7275 if ( inputState.guessing==0 ) { 7276 lpl_AST.setType(TYPECAST); 7277 } 7278 typeCastParameters(); 7279 astFactory.addASTChild(currentAST, returnAST); 7280 AST tmp215_AST = null; 7281 tmp215_AST = astFactory.create(LT(1)); 7282 astFactory.addASTChild(currentAST, tmp215_AST); 7283 match(RPAREN); 7284 lambdaExpression(); 7285 astFactory.addASTChild(currentAST, returnAST); 7286 } 7287 else if ((_tokenSet_43.member(LA(1))) && (_tokenSet_18.member(LA(2)))) { 7288 postfixExpression(); 7289 astFactory.addASTChild(currentAST, returnAST); 7290 } 7291 else { 7292 throw new NoViableAltException(LT(1), getFilename()); 7293 } 7294 }} 7295 } 7296 unaryExpressionNotPlusMinus_AST = (AST)currentAST.root; 7297 break; 7298 } 7299 default: 7300 { 7301 throw new NoViableAltException(LT(1), getFilename()); 7302 } 7303 } 7304 returnAST = unaryExpressionNotPlusMinus_AST; 7305 } 7306 7307 public final void typeCastParameters() throws RecognitionException, TokenStreamException { 7308 7309 returnAST = null; 7310 ASTPair currentAST = new ASTPair(); 7311 AST typeCastParameters_AST = null; 7312 7313 classTypeSpec(true); 7314 astFactory.addASTChild(currentAST, returnAST); 7315 { 7316 _loop324: 7317 do { 7318 if ((LA(1)==BAND)) { 7319 AST tmp216_AST = null; 7320 tmp216_AST = astFactory.create(LT(1)); 7321 astFactory.makeASTRoot(currentAST, tmp216_AST); 7322 match(BAND); 7323 classTypeSpec(true); 7324 astFactory.addASTChild(currentAST, returnAST); 7325 } 7326 else { 7327 break _loop324; 7328 } 7329 7330 } while (true); 7331 } 7332 typeCastParameters_AST = (AST)currentAST.root; 7333 returnAST = typeCastParameters_AST; 7334 } 7335 7336 public final void postfixExpression() throws RecognitionException, TokenStreamException { 7337 7338 returnAST = null; 7339 ASTPair currentAST = new ASTPair(); 7340 AST postfixExpression_AST = null; 7341 Token dc = null; 7342 AST dc_AST = null; 7343 Token lbc = null; 7344 AST lbc_AST = null; 7345 Token lb = null; 7346 AST lb_AST = null; 7347 Token lp = null; 7348 AST lp_AST = null; 7349 Token in = null; 7350 AST in_AST = null; 7351 Token de = null; 7352 AST de_AST = null; 7353 7354 primaryExpression(); 7355 astFactory.addASTChild(currentAST, returnAST); 7356 { 7357 _loop339: 7358 do { 7359 switch ( LA(1)) { 7360 case DOT: 7361 { 7362 AST tmp217_AST = null; 7363 tmp217_AST = astFactory.create(LT(1)); 7364 astFactory.makeASTRoot(currentAST, tmp217_AST); 7365 match(DOT); 7366 { 7367 if ((_tokenSet_63.member(LA(1))) && (_tokenSet_18.member(LA(2)))) { 7368 { 7369 switch ( LA(1)) { 7370 case LT: 7371 { 7372 typeArguments(false); 7373 astFactory.addASTChild(currentAST, returnAST); 7374 break; 7375 } 7376 case IDENT: 7377 case LITERAL_this: 7378 case LITERAL_super: 7379 { 7380 break; 7381 } 7382 default: 7383 { 7384 throw new NoViableAltException(LT(1), getFilename()); 7385 } 7386 } 7387 } 7388 { 7389 switch ( LA(1)) { 7390 case IDENT: 7391 { 7392 AST tmp218_AST = null; 7393 tmp218_AST = astFactory.create(LT(1)); 7394 astFactory.addASTChild(currentAST, tmp218_AST); 7395 match(IDENT); 7396 { 7397 boolean synPredMatched332 = false; 7398 if (((LA(1)==LT) && (_tokenSet_18.member(LA(2))))) { 7399 int _m332 = mark(); 7400 synPredMatched332 = true; 7401 inputState.guessing++; 7402 try { 7403 { 7404 typeArguments(false); 7405 match(DOUBLE_COLON); 7406 } 7407 } 7408 catch (RecognitionException pe) { 7409 synPredMatched332 = false; 7410 } 7411 rewind(_m332); 7412inputState.guessing--; 7413 } 7414 if ( synPredMatched332 ) { 7415 typeArguments(false); 7416 astFactory.addASTChild(currentAST, returnAST); 7417 } 7418 else if ((_tokenSet_18.member(LA(1))) && (_tokenSet_45.member(LA(2)))) { 7419 } 7420 else { 7421 throw new NoViableAltException(LT(1), getFilename()); 7422 } 7423 7424 } 7425 break; 7426 } 7427 case LITERAL_this: 7428 { 7429 AST tmp219_AST = null; 7430 tmp219_AST = astFactory.create(LT(1)); 7431 astFactory.addASTChild(currentAST, tmp219_AST); 7432 match(LITERAL_this); 7433 break; 7434 } 7435 case LITERAL_super: 7436 { 7437 AST tmp220_AST = null; 7438 tmp220_AST = astFactory.create(LT(1)); 7439 astFactory.addASTChild(currentAST, tmp220_AST); 7440 match(LITERAL_super); 7441 break; 7442 } 7443 default: 7444 { 7445 throw new NoViableAltException(LT(1), getFilename()); 7446 } 7447 } 7448 } 7449 } 7450 else if ((LA(1)==LITERAL_class) && (_tokenSet_18.member(LA(2)))) { 7451 AST tmp221_AST = null; 7452 tmp221_AST = astFactory.create(LT(1)); 7453 astFactory.addASTChild(currentAST, tmp221_AST); 7454 match(LITERAL_class); 7455 } 7456 else if ((LA(1)==LITERAL_new) && (_tokenSet_26.member(LA(2)))) { 7457 newExpression(); 7458 astFactory.addASTChild(currentAST, returnAST); 7459 } 7460 else if ((_tokenSet_18.member(LA(1))) && (_tokenSet_45.member(LA(2)))) { 7461 annotations(); 7462 astFactory.addASTChild(currentAST, returnAST); 7463 } 7464 else { 7465 throw new NoViableAltException(LT(1), getFilename()); 7466 } 7467 7468 } 7469 break; 7470 } 7471 case DOUBLE_COLON: 7472 { 7473 dc = LT(1); 7474 dc_AST = astFactory.create(dc); 7475 astFactory.makeASTRoot(currentAST, dc_AST); 7476 match(DOUBLE_COLON); 7477 if ( inputState.guessing==0 ) { 7478 dc_AST.setType(METHOD_REF); 7479 } 7480 { 7481 { 7482 switch ( LA(1)) { 7483 case LT: 7484 { 7485 typeArguments(false); 7486 astFactory.addASTChild(currentAST, returnAST); 7487 break; 7488 } 7489 case IDENT: 7490 case LITERAL_new: 7491 { 7492 break; 7493 } 7494 default: 7495 { 7496 throw new NoViableAltException(LT(1), getFilename()); 7497 } 7498 } 7499 } 7500 { 7501 switch ( LA(1)) { 7502 case IDENT: 7503 { 7504 AST tmp222_AST = null; 7505 tmp222_AST = astFactory.create(LT(1)); 7506 astFactory.addASTChild(currentAST, tmp222_AST); 7507 match(IDENT); 7508 break; 7509 } 7510 case LITERAL_new: 7511 { 7512 AST tmp223_AST = null; 7513 tmp223_AST = astFactory.create(LT(1)); 7514 astFactory.addASTChild(currentAST, tmp223_AST); 7515 match(LITERAL_new); 7516 break; 7517 } 7518 default: 7519 { 7520 throw new NoViableAltException(LT(1), getFilename()); 7521 } 7522 } 7523 } 7524 } 7525 break; 7526 } 7527 default: 7528 if ((LA(1)==LBRACK) && (LA(2)==RBRACK)) { 7529 { 7530 int _cnt337=0; 7531 _loop337: 7532 do { 7533 if ((LA(1)==LBRACK) && (LA(2)==RBRACK)) { 7534 lbc = LT(1); 7535 lbc_AST = astFactory.create(lbc); 7536 astFactory.makeASTRoot(currentAST, lbc_AST); 7537 match(LBRACK); 7538 if ( inputState.guessing==0 ) { 7539 lbc_AST.setType(ARRAY_DECLARATOR); 7540 } 7541 AST tmp224_AST = null; 7542 tmp224_AST = astFactory.create(LT(1)); 7543 astFactory.addASTChild(currentAST, tmp224_AST); 7544 match(RBRACK); 7545 } 7546 else { 7547 if ( _cnt337>=1 ) { break _loop337; } else {throw new NoViableAltException(LT(1), getFilename());} 7548 } 7549 7550 _cnt337++; 7551 } while (true); 7552 } 7553 { 7554 if ((LA(1)==DOT) && (LA(2)==LITERAL_class)) { 7555 AST tmp225_AST = null; 7556 tmp225_AST = astFactory.create(LT(1)); 7557 astFactory.makeASTRoot(currentAST, tmp225_AST); 7558 match(DOT); 7559 AST tmp226_AST = null; 7560 tmp226_AST = astFactory.create(LT(1)); 7561 astFactory.addASTChild(currentAST, tmp226_AST); 7562 match(LITERAL_class); 7563 } 7564 else if ((_tokenSet_18.member(LA(1))) && (_tokenSet_45.member(LA(2)))) { 7565 } 7566 else { 7567 throw new NoViableAltException(LT(1), getFilename()); 7568 } 7569 7570 } 7571 } 7572 else if ((LA(1)==LBRACK) && (_tokenSet_16.member(LA(2)))) { 7573 lb = LT(1); 7574 lb_AST = astFactory.create(lb); 7575 astFactory.makeASTRoot(currentAST, lb_AST); 7576 match(LBRACK); 7577 if ( inputState.guessing==0 ) { 7578 lb_AST.setType(INDEX_OP); 7579 } 7580 expression(); 7581 astFactory.addASTChild(currentAST, returnAST); 7582 AST tmp227_AST = null; 7583 tmp227_AST = astFactory.create(LT(1)); 7584 astFactory.addASTChild(currentAST, tmp227_AST); 7585 match(RBRACK); 7586 } 7587 else if ((LA(1)==LPAREN) && (_tokenSet_64.member(LA(2)))) { 7588 lp = LT(1); 7589 lp_AST = astFactory.create(lp); 7590 astFactory.makeASTRoot(currentAST, lp_AST); 7591 match(LPAREN); 7592 if ( inputState.guessing==0 ) { 7593 lp_AST.setType(METHOD_CALL); 7594 } 7595 argList(); 7596 astFactory.addASTChild(currentAST, returnAST); 7597 AST tmp228_AST = null; 7598 tmp228_AST = astFactory.create(LT(1)); 7599 astFactory.addASTChild(currentAST, tmp228_AST); 7600 match(RPAREN); 7601 } 7602 else { 7603 break _loop339; 7604 } 7605 } 7606 } while (true); 7607 } 7608 { 7609 if ((LA(1)==INC) && (_tokenSet_65.member(LA(2)))) { 7610 in = LT(1); 7611 in_AST = astFactory.create(in); 7612 astFactory.makeASTRoot(currentAST, in_AST); 7613 match(INC); 7614 if ( inputState.guessing==0 ) { 7615 in_AST.setType(POST_INC); 7616 } 7617 } 7618 else if ((LA(1)==DEC) && (_tokenSet_65.member(LA(2)))) { 7619 de = LT(1); 7620 de_AST = astFactory.create(de); 7621 astFactory.makeASTRoot(currentAST, de_AST); 7622 match(DEC); 7623 if ( inputState.guessing==0 ) { 7624 de_AST.setType(POST_DEC); 7625 } 7626 } 7627 else if ((_tokenSet_65.member(LA(1))) && (_tokenSet_45.member(LA(2)))) { 7628 } 7629 else { 7630 throw new NoViableAltException(LT(1), getFilename()); 7631 } 7632 7633 } 7634 postfixExpression_AST = (AST)currentAST.root; 7635 returnAST = postfixExpression_AST; 7636 } 7637 7638/** object instantiation. 7639 * Trees are built as illustrated by the following input/tree pairs: 7640 * 7641 * new T() 7642 * 7643 * new 7644 * | 7645 * T -- ELIST 7646 * | 7647 * arg1 -- arg2 -- .. -- argn 7648 * 7649 * new int[] 7650 * 7651 * new 7652 * | 7653 * int -- ARRAY_DECLARATOR 7654 * 7655 * new int[] {1,2} 7656 * 7657 * new 7658 * | 7659 * int -- ARRAY_DECLARATOR -- ARRAY_INIT 7660 * | 7661 * EXPR -- EXPR 7662 * | | 7663 * 1 2 7664 * 7665 * new int[3] 7666 * new 7667 * | 7668 * int -- ARRAY_DECLARATOR 7669 * | 7670 * EXPR 7671 * | 7672 * 3 7673 * 7674 * new int[1][2] 7675 * 7676 * new 7677 * | 7678 * int -- ARRAY_DECLARATOR 7679 * | 7680 * ARRAY_DECLARATOR -- EXPR 7681 * | | 7682 * EXPR 1 7683 * | 7684 * 2 7685 * 7686 * 7687 * @throws RecognitionException if recognition problem occurs. 7688 * @throws TokenStreamException if problem occurs while generating a stream of tokens. 7689 */ 7690 public final void newExpression() throws RecognitionException, TokenStreamException { 7691 7692 returnAST = null; 7693 ASTPair currentAST = new ASTPair(); 7694 AST newExpression_AST = null; 7695 7696 AST tmp229_AST = null; 7697 tmp229_AST = astFactory.create(LT(1)); 7698 astFactory.makeASTRoot(currentAST, tmp229_AST); 7699 match(LITERAL_new); 7700 { 7701 switch ( LA(1)) { 7702 case LT: 7703 { 7704 typeArguments(false); 7705 astFactory.addASTChild(currentAST, returnAST); 7706 break; 7707 } 7708 case LITERAL_void: 7709 case LITERAL_boolean: 7710 case LITERAL_byte: 7711 case LITERAL_char: 7712 case LITERAL_short: 7713 case LITERAL_int: 7714 case LITERAL_float: 7715 case LITERAL_long: 7716 case LITERAL_double: 7717 case IDENT: 7718 case AT: 7719 { 7720 break; 7721 } 7722 default: 7723 { 7724 throw new NoViableAltException(LT(1), getFilename()); 7725 } 7726 } 7727 } 7728 type(); 7729 astFactory.addASTChild(currentAST, returnAST); 7730 { 7731 switch ( LA(1)) { 7732 case LPAREN: 7733 { 7734 AST tmp230_AST = null; 7735 tmp230_AST = astFactory.create(LT(1)); 7736 astFactory.addASTChild(currentAST, tmp230_AST); 7737 match(LPAREN); 7738 argList(); 7739 astFactory.addASTChild(currentAST, returnAST); 7740 AST tmp231_AST = null; 7741 tmp231_AST = astFactory.create(LT(1)); 7742 astFactory.addASTChild(currentAST, tmp231_AST); 7743 match(RPAREN); 7744 { 7745 if ((LA(1)==LCURLY) && (_tokenSet_29.member(LA(2)))) { 7746 classBlock(); 7747 astFactory.addASTChild(currentAST, returnAST); 7748 } 7749 else if ((_tokenSet_18.member(LA(1))) && (_tokenSet_45.member(LA(2)))) { 7750 } 7751 else { 7752 throw new NoViableAltException(LT(1), getFilename()); 7753 } 7754 7755 } 7756 break; 7757 } 7758 case LBRACK: 7759 { 7760 newArrayDeclarator(); 7761 astFactory.addASTChild(currentAST, returnAST); 7762 { 7763 if ((LA(1)==LCURLY) && (_tokenSet_66.member(LA(2)))) { 7764 arrayInitializer(); 7765 astFactory.addASTChild(currentAST, returnAST); 7766 } 7767 else if ((_tokenSet_18.member(LA(1))) && (_tokenSet_45.member(LA(2)))) { 7768 } 7769 else { 7770 throw new NoViableAltException(LT(1), getFilename()); 7771 } 7772 7773 } 7774 break; 7775 } 7776 default: 7777 { 7778 throw new NoViableAltException(LT(1), getFilename()); 7779 } 7780 } 7781 } 7782 newExpression_AST = (AST)currentAST.root; 7783 returnAST = newExpression_AST; 7784 } 7785 7786 public final void constant() throws RecognitionException, TokenStreamException { 7787 7788 returnAST = null; 7789 ASTPair currentAST = new ASTPair(); 7790 AST constant_AST = null; 7791 7792 switch ( LA(1)) { 7793 case NUM_INT: 7794 { 7795 AST tmp232_AST = null; 7796 tmp232_AST = astFactory.create(LT(1)); 7797 astFactory.addASTChild(currentAST, tmp232_AST); 7798 match(NUM_INT); 7799 constant_AST = (AST)currentAST.root; 7800 break; 7801 } 7802 case NUM_LONG: 7803 { 7804 AST tmp233_AST = null; 7805 tmp233_AST = astFactory.create(LT(1)); 7806 astFactory.addASTChild(currentAST, tmp233_AST); 7807 match(NUM_LONG); 7808 constant_AST = (AST)currentAST.root; 7809 break; 7810 } 7811 case NUM_FLOAT: 7812 { 7813 AST tmp234_AST = null; 7814 tmp234_AST = astFactory.create(LT(1)); 7815 astFactory.addASTChild(currentAST, tmp234_AST); 7816 match(NUM_FLOAT); 7817 constant_AST = (AST)currentAST.root; 7818 break; 7819 } 7820 case NUM_DOUBLE: 7821 { 7822 AST tmp235_AST = null; 7823 tmp235_AST = astFactory.create(LT(1)); 7824 astFactory.addASTChild(currentAST, tmp235_AST); 7825 match(NUM_DOUBLE); 7826 constant_AST = (AST)currentAST.root; 7827 break; 7828 } 7829 case CHAR_LITERAL: 7830 { 7831 AST tmp236_AST = null; 7832 tmp236_AST = astFactory.create(LT(1)); 7833 astFactory.addASTChild(currentAST, tmp236_AST); 7834 match(CHAR_LITERAL); 7835 constant_AST = (AST)currentAST.root; 7836 break; 7837 } 7838 case STRING_LITERAL: 7839 { 7840 AST tmp237_AST = null; 7841 tmp237_AST = astFactory.create(LT(1)); 7842 astFactory.addASTChild(currentAST, tmp237_AST); 7843 match(STRING_LITERAL); 7844 constant_AST = (AST)currentAST.root; 7845 break; 7846 } 7847 default: 7848 { 7849 throw new NoViableAltException(LT(1), getFilename()); 7850 } 7851 } 7852 returnAST = constant_AST; 7853 } 7854 7855 public final void newArrayDeclarator() throws RecognitionException, TokenStreamException { 7856 7857 returnAST = null; 7858 ASTPair currentAST = new ASTPair(); 7859 AST newArrayDeclarator_AST = null; 7860 Token lb = null; 7861 AST lb_AST = null; 7862 7863 { 7864 int _cnt361=0; 7865 _loop361: 7866 do { 7867 if ((LA(1)==LBRACK) && (_tokenSet_67.member(LA(2)))) { 7868 lb = LT(1); 7869 lb_AST = astFactory.create(lb); 7870 astFactory.makeASTRoot(currentAST, lb_AST); 7871 match(LBRACK); 7872 if ( inputState.guessing==0 ) { 7873 lb_AST.setType(ARRAY_DECLARATOR); 7874 } 7875 { 7876 switch ( LA(1)) { 7877 case LITERAL_void: 7878 case LITERAL_boolean: 7879 case LITERAL_byte: 7880 case LITERAL_char: 7881 case LITERAL_short: 7882 case LITERAL_int: 7883 case LITERAL_float: 7884 case LITERAL_long: 7885 case LITERAL_double: 7886 case IDENT: 7887 case LPAREN: 7888 case LITERAL_this: 7889 case LITERAL_super: 7890 case PLUS: 7891 case MINUS: 7892 case INC: 7893 case DEC: 7894 case BNOT: 7895 case LNOT: 7896 case LITERAL_true: 7897 case LITERAL_false: 7898 case LITERAL_null: 7899 case LITERAL_new: 7900 case NUM_INT: 7901 case CHAR_LITERAL: 7902 case STRING_LITERAL: 7903 case NUM_FLOAT: 7904 case NUM_LONG: 7905 case NUM_DOUBLE: 7906 { 7907 expression(); 7908 astFactory.addASTChild(currentAST, returnAST); 7909 break; 7910 } 7911 case RBRACK: 7912 { 7913 break; 7914 } 7915 default: 7916 { 7917 throw new NoViableAltException(LT(1), getFilename()); 7918 } 7919 } 7920 } 7921 AST tmp238_AST = null; 7922 tmp238_AST = astFactory.create(LT(1)); 7923 astFactory.addASTChild(currentAST, tmp238_AST); 7924 match(RBRACK); 7925 } 7926 else { 7927 if ( _cnt361>=1 ) { break _loop361; } else {throw new NoViableAltException(LT(1), getFilename());} 7928 } 7929 7930 _cnt361++; 7931 } while (true); 7932 } 7933 newArrayDeclarator_AST = (AST)currentAST.root; 7934 returnAST = newArrayDeclarator_AST; 7935 } 7936 7937 public final void lambdaParameters() throws RecognitionException, TokenStreamException { 7938 7939 returnAST = null; 7940 ASTPair currentAST = new ASTPair(); 7941 AST lambdaParameters_AST = null; 7942 7943 switch ( LA(1)) { 7944 case IDENT: 7945 { 7946 AST tmp239_AST = null; 7947 tmp239_AST = astFactory.create(LT(1)); 7948 astFactory.addASTChild(currentAST, tmp239_AST); 7949 match(IDENT); 7950 lambdaParameters_AST = (AST)currentAST.root; 7951 break; 7952 } 7953 case LPAREN: 7954 { 7955 AST tmp240_AST = null; 7956 tmp240_AST = astFactory.create(LT(1)); 7957 astFactory.addASTChild(currentAST, tmp240_AST); 7958 match(LPAREN); 7959 { 7960 if ((_tokenSet_68.member(LA(1))) && (_tokenSet_69.member(LA(2)))) { 7961 parameterDeclarationList(); 7962 astFactory.addASTChild(currentAST, returnAST); 7963 } 7964 else if ((LA(1)==RPAREN) && (LA(2)==LAMBDA)) { 7965 } 7966 else { 7967 throw new NoViableAltException(LT(1), getFilename()); 7968 } 7969 7970 } 7971 AST tmp241_AST = null; 7972 tmp241_AST = astFactory.create(LT(1)); 7973 astFactory.addASTChild(currentAST, tmp241_AST); 7974 match(RPAREN); 7975 lambdaParameters_AST = (AST)currentAST.root; 7976 break; 7977 } 7978 default: 7979 { 7980 throw new NoViableAltException(LT(1), getFilename()); 7981 } 7982 } 7983 returnAST = lambdaParameters_AST; 7984 } 7985 7986 public final void lambdaBody() throws RecognitionException, TokenStreamException { 7987 7988 returnAST = null; 7989 ASTPair currentAST = new ASTPair(); 7990 AST lambdaBody_AST = null; 7991 7992 { 7993 if ((_tokenSet_16.member(LA(1))) && (_tokenSet_70.member(LA(2)))) { 7994 expression(); 7995 astFactory.addASTChild(currentAST, returnAST); 7996 } 7997 else if ((_tokenSet_36.member(LA(1))) && (_tokenSet_70.member(LA(2)))) { 7998 statement(); 7999 astFactory.addASTChild(currentAST, returnAST); 8000 } 8001 else { 8002 throw new NoViableAltException(LT(1), getFilename()); 8003 } 8004 8005 } 8006 lambdaBody_AST = (AST)currentAST.root; 8007 returnAST = lambdaBody_AST; 8008 } 8009 8010 8011 public static final String[] _tokenNames = { 8012 "<0>", 8013 "EOF", 8014 "<2>", 8015 "NULL_TREE_LOOKAHEAD", 8016 "BLOCK", 8017 "MODIFIERS", 8018 "OBJBLOCK", 8019 "SLIST", 8020 "CTOR_DEF", 8021 "METHOD_DEF", 8022 "VARIABLE_DEF", 8023 "INSTANCE_INIT", 8024 "STATIC_INIT", 8025 "TYPE", 8026 "CLASS_DEF", 8027 "INTERFACE_DEF", 8028 "PACKAGE_DEF", 8029 "ARRAY_DECLARATOR", 8030 "EXTENDS_CLAUSE", 8031 "IMPLEMENTS_CLAUSE", 8032 "PARAMETERS", 8033 "PARAMETER_DEF", 8034 "LABELED_STAT", 8035 "TYPECAST", 8036 "INDEX_OP", 8037 "POST_INC", 8038 "POST_DEC", 8039 "METHOD_CALL", 8040 "EXPR", 8041 "ARRAY_INIT", 8042 "IMPORT", 8043 "UNARY_MINUS", 8044 "UNARY_PLUS", 8045 "CASE_GROUP", 8046 "ELIST", 8047 "FOR_INIT", 8048 "FOR_CONDITION", 8049 "FOR_ITERATOR", 8050 "EMPTY_STAT", 8051 "\"final\"", 8052 "\"abstract\"", 8053 "\"strictfp\"", 8054 "SUPER_CTOR_CALL", 8055 "CTOR_CALL", 8056 "\"package\"", 8057 "SEMI", 8058 "\"import\"", 8059 "LBRACK", 8060 "RBRACK", 8061 "\"void\"", 8062 "\"boolean\"", 8063 "\"byte\"", 8064 "\"char\"", 8065 "\"short\"", 8066 "\"int\"", 8067 "\"float\"", 8068 "\"long\"", 8069 "\"double\"", 8070 "IDENT", 8071 "DOT", 8072 "STAR", 8073 "\"private\"", 8074 "\"public\"", 8075 "\"protected\"", 8076 "\"static\"", 8077 "\"transient\"", 8078 "\"native\"", 8079 "\"synchronized\"", 8080 "\"volatile\"", 8081 "\"class\"", 8082 "\"extends\"", 8083 "\"interface\"", 8084 "LCURLY", 8085 "RCURLY", 8086 "COMMA", 8087 "\"implements\"", 8088 "LPAREN", 8089 "RPAREN", 8090 "\"this\"", 8091 "\"super\"", 8092 "ASSIGN", 8093 "\"throws\"", 8094 "COLON", 8095 "\"if\"", 8096 "\"while\"", 8097 "\"do\"", 8098 "\"break\"", 8099 "\"continue\"", 8100 "\"return\"", 8101 "\"switch\"", 8102 "\"throw\"", 8103 "\"for\"", 8104 "\"else\"", 8105 "\"case\"", 8106 "\"default\"", 8107 "\"try\"", 8108 "\"catch\"", 8109 "\"finally\"", 8110 "PLUS_ASSIGN", 8111 "MINUS_ASSIGN", 8112 "STAR_ASSIGN", 8113 "DIV_ASSIGN", 8114 "MOD_ASSIGN", 8115 "SR_ASSIGN", 8116 "BSR_ASSIGN", 8117 "SL_ASSIGN", 8118 "BAND_ASSIGN", 8119 "BXOR_ASSIGN", 8120 "BOR_ASSIGN", 8121 "QUESTION", 8122 "LOR", 8123 "LAND", 8124 "BOR", 8125 "BXOR", 8126 "BAND", 8127 "NOT_EQUAL", 8128 "EQUAL", 8129 "LT", 8130 "GT", 8131 "LE", 8132 "GE", 8133 "\"instanceof\"", 8134 "SL", 8135 "SR", 8136 "BSR", 8137 "PLUS", 8138 "MINUS", 8139 "DIV", 8140 "MOD", 8141 "INC", 8142 "DEC", 8143 "BNOT", 8144 "LNOT", 8145 "\"true\"", 8146 "\"false\"", 8147 "\"null\"", 8148 "\"new\"", 8149 "NUM_INT", 8150 "CHAR_LITERAL", 8151 "STRING_LITERAL", 8152 "NUM_FLOAT", 8153 "NUM_LONG", 8154 "NUM_DOUBLE", 8155 "WS", 8156 "SINGLE_LINE_COMMENT", 8157 "BLOCK_COMMENT_BEGIN", 8158 "ESC", 8159 "HEX_DIGIT", 8160 "VOCAB", 8161 "EXPONENT", 8162 "FLOAT_SUFFIX", 8163 "ASSERT", 8164 "STATIC_IMPORT", 8165 "ENUM", 8166 "ENUM_DEF", 8167 "ENUM_CONSTANT_DEF", 8168 "FOR_EACH_CLAUSE", 8169 "ANNOTATION_DEF", 8170 "ANNOTATIONS", 8171 "ANNOTATION", 8172 "ANNOTATION_MEMBER_VALUE_PAIR", 8173 "ANNOTATION_FIELD_DEF", 8174 "ANNOTATION_ARRAY_INIT", 8175 "TYPE_ARGUMENTS", 8176 "TYPE_ARGUMENT", 8177 "TYPE_PARAMETERS", 8178 "TYPE_PARAMETER", 8179 "WILDCARD_TYPE", 8180 "TYPE_UPPER_BOUNDS", 8181 "TYPE_LOWER_BOUNDS", 8182 "AT", 8183 "ELLIPSIS", 8184 "GENERIC_START", 8185 "GENERIC_END", 8186 "TYPE_EXTENSION_AND", 8187 "DO_WHILE", 8188 "RESOURCE_SPECIFICATION", 8189 "RESOURCES", 8190 "RESOURCE", 8191 "DOUBLE_COLON", 8192 "METHOD_REF", 8193 "LAMBDA", 8194 "BLOCK_COMMENT_END", 8195 "COMMENT_CONTENT", 8196 "SINGLE_LINE_COMMENT_CONTENT", 8197 "BLOCK_COMMENT_CONTENT", 8198 "STD_ESC", 8199 "BINARY_DIGIT", 8200 "ID_START", 8201 "ID_PART", 8202 "INT_LITERAL", 8203 "LONG_LITERAL", 8204 "FLOAT_LITERAL", 8205 "DOUBLE_LITERAL", 8206 "HEX_FLOAT_LITERAL", 8207 "HEX_DOUBLE_LITERAL", 8208 "SIGNED_INTEGER", 8209 "BINARY_EXPONENT" 8210 }; 8211 8212 protected void buildTokenTypeASTClassMap() { 8213 tokenTypeToASTClassMap=null; 8214 }; 8215 8216 private static final long[] mk_tokenSet_0() { 8217 long[] data = { -2305733607806730238L, 1073742015L, 4398080065536L, 0L, 0L, 0L}; 8218 return data; 8219 } 8220 public static final BitSet _tokenSet_0 = new BitSet(mk_tokenSet_0()); 8221 private static final long[] mk_tokenSet_1() { 8222 long[] data = { -2017503231655018494L, 1073742015L, 4398080065536L, 0L, 0L, 0L}; 8223 return data; 8224 } 8225 public static final BitSet _tokenSet_1 = new BitSet(mk_tokenSet_1()); 8226 private static final long[] mk_tokenSet_2() { 8227 long[] data = { -2305803976550907904L, 1073742015L, 4398080065536L, 0L, 0L, 0L}; 8228 return data; 8229 } 8230 public static final BitSet _tokenSet_2 = new BitSet(mk_tokenSet_2()); 8231 private static final long[] mk_tokenSet_3() { 8232 long[] data = { -2305803976550907902L, 1073742015L, 4398080065536L, 0L, 0L, 0L}; 8233 return data; 8234 } 8235 public static final BitSet _tokenSet_3 = new BitSet(mk_tokenSet_3()); 8236 private static final long[] mk_tokenSet_4() { 8237 long[] data = { -2305839160922996736L, 1073741855L, 0L, 0L}; 8238 return data; 8239 } 8240 public static final BitSet _tokenSet_4 = new BitSet(mk_tokenSet_4()); 8241 private static final long[] mk_tokenSet_5() { 8242 long[] data = { -101704825569280L, -12885032961L, 2264993995194367L, 0L, 0L, 0L}; 8243 return data; 8244 } 8245 public static final BitSet _tokenSet_5 = new BitSet(mk_tokenSet_5()); 8246 private static final long[] mk_tokenSet_6() { 8247 long[] data = { -84112639524862L, -131073L, 11272193249935359L, 0L, 0L, 0L}; 8248 return data; 8249 } 8250 public static final BitSet _tokenSet_6 = new BitSet(mk_tokenSet_6()); 8251 private static final long[] mk_tokenSet_7() { 8252 long[] data = { 575897802350002176L, 35184372088832L, 4398046511104L, 0L, 0L, 0L}; 8253 return data; 8254 } 8255 public static final BitSet _tokenSet_7 = new BitSet(mk_tokenSet_7()); 8256 private static final long[] mk_tokenSet_8() { 8257 long[] data = { 0L, 1747396655419752448L, 0L, 0L}; 8258 return data; 8259 } 8260 public static final BitSet _tokenSet_8 = new BitSet(mk_tokenSet_8()); 8261 private static final long[] mk_tokenSet_9() { 8262 long[] data = { 575897802350002176L, 0L, 4398046511104L, 0L, 0L, 0L}; 8263 return data; 8264 } 8265 public static final BitSet _tokenSet_9 = new BitSet(mk_tokenSet_9()); 8266 private static final long[] mk_tokenSet_10() { 8267 long[] data = { 575897802350002176L, 6917529027641143552L, 4398046543870L, 0L, 0L, 0L}; 8268 return data; 8269 } 8270 public static final BitSet _tokenSet_10 = new BitSet(mk_tokenSet_10()); 8271 private static final long[] mk_tokenSet_11() { 8272 long[] data = { -84112639524864L, -12885035073L, 2256197902172159L, 0L, 0L, 0L}; 8273 return data; 8274 } 8275 public static final BitSet _tokenSet_11 = new BitSet(mk_tokenSet_11()); 8276 private static final long[] mk_tokenSet_12() { 8277 long[] data = { 575897802350002176L, 6917529027641135360L, 4398046543870L, 0L, 0L, 0L}; 8278 return data; 8279 } 8280 public static final BitSet _tokenSet_12 = new BitSet(mk_tokenSet_12()); 8281 private static final long[] mk_tokenSet_13() { 8282 long[] data = { 2305420796748627968L, -35184372026880L, 2256197860229119L, 0L, 0L, 0L}; 8283 return data; 8284 } 8285 public static final BitSet _tokenSet_13 = new BitSet(mk_tokenSet_13()); 8286 private static final long[] mk_tokenSet_14() { 8287 long[] data = { 575897802350002176L, 6917529027641135104L, 4398046543870L, 0L, 0L, 0L}; 8288 return data; 8289 } 8290 public static final BitSet _tokenSet_14 = new BitSet(mk_tokenSet_14()); 8291 private static final long[] mk_tokenSet_15() { 8292 long[] data = { 575898352105816064L, 8192L, 9011597301252096L, 0L, 0L, 0L}; 8293 return data; 8294 } 8295 public static final BitSet _tokenSet_15 = new BitSet(mk_tokenSet_15()); 8296 private static final long[] mk_tokenSet_16() { 8297 long[] data = { 575897802350002176L, 6917529027641135104L, 32766L, 0L, 0L, 0L}; 8298 return data; 8299 } 8300 public static final BitSet _tokenSet_16 = new BitSet(mk_tokenSet_16()); 8301 private static final long[] mk_tokenSet_17() { 8302 long[] data = { 2305420796748627968L, -17179488256L, 2256197860229119L, 0L, 0L, 0L}; 8303 return data; 8304 } 8305 public static final BitSet _tokenSet_17 = new BitSet(mk_tokenSet_17()); 8306 private static final long[] mk_tokenSet_18() { 8307 long[] data = { -101704825569280L, -12885035073L, 2256197902172159L, 0L, 0L, 0L}; 8308 return data; 8309 } 8310 public static final BitSet _tokenSet_18 = new BitSet(mk_tokenSet_18()); 8311 private static final long[] mk_tokenSet_19() { 8312 long[] data = { 575897802350002176L, 1747396655419755840L, 4398046511104L, 0L, 0L, 0L}; 8313 return data; 8314 } 8315 public static final BitSet _tokenSet_19 = new BitSet(mk_tokenSet_19()); 8316 private static final long[] mk_tokenSet_20() { 8317 long[] data = { -1153304684409126912L, 9007200328489983L, 4398080065536L, 0L, 0L, 0L}; 8318 return data; 8319 } 8320 public static final BitSet _tokenSet_20 = new BitSet(mk_tokenSet_20()); 8321 private static final long[] mk_tokenSet_21() { 8322 long[] data = { 0L, 160L, 4398080065536L, 0L, 0L, 0L}; 8323 return data; 8324 } 8325 public static final BitSet _tokenSet_21 = new BitSet(mk_tokenSet_21()); 8326 private static final long[] mk_tokenSet_22() { 8327 long[] data = { 864831865943490560L, 9007199254740992L, 4398046511104L, 0L, 0L, 0L}; 8328 return data; 8329 } 8330 public static final BitSet _tokenSet_22 = new BitSet(mk_tokenSet_22()); 8331 private static final long[] mk_tokenSet_23() { 8332 long[] data = { 175921860444160L, 66560L, 0L, 0L}; 8333 return data; 8334 } 8335 public static final BitSet _tokenSet_23 = new BitSet(mk_tokenSet_23()); 8336 private static final long[] mk_tokenSet_24() { 8337 long[] data = { -1729941358572994560L, 9007200328483007L, 4398080065536L, 0L, 0L, 0L}; 8338 return data; 8339 } 8340 public static final BitSet _tokenSet_24 = new BitSet(mk_tokenSet_24()); 8341 private static final long[] mk_tokenSet_25() { 8342 long[] data = { -1153339868781215744L, 9007200328487103L, 4398080065536L, 0L, 0L, 0L}; 8343 return data; 8344 } 8345 public static final BitSet _tokenSet_25 = new BitSet(mk_tokenSet_25()); 8346 private static final long[] mk_tokenSet_26() { 8347 long[] data = { 575897802350002176L, 9007199254740992L, 4398046511104L, 0L, 0L, 0L}; 8348 return data; 8349 } 8350 public static final BitSet _tokenSet_26 = new BitSet(mk_tokenSet_26()); 8351 private static final long[] mk_tokenSet_27() { 8352 long[] data = { 864831865943490560L, 9007199254745088L, 4398046511104L, 0L, 0L, 0L}; 8353 return data; 8354 } 8355 public static final BitSet _tokenSet_27 = new BitSet(mk_tokenSet_27()); 8356 private static final long[] mk_tokenSet_28() { 8357 long[] data = { -1729765436712550400L, 9007200328550335L, 4398080065536L, 0L, 0L, 0L}; 8358 return data; 8359 } 8360 public static final BitSet _tokenSet_28 = new BitSet(mk_tokenSet_28()); 8361 private static final long[] mk_tokenSet_29() { 8362 long[] data = { -1729906174200905728L, 9007200328483775L, 4398080065536L, 0L, 0L, 0L}; 8363 return data; 8364 } 8365 public static final BitSet _tokenSet_29 = new BitSet(mk_tokenSet_29()); 8366 private static final long[] mk_tokenSet_30() { 8367 long[] data = { -101704825569278L, -12885035073L, 2256197902172159L, 0L, 0L, 0L}; 8368 return data; 8369 } 8370 public static final BitSet _tokenSet_30 = new BitSet(mk_tokenSet_30()); 8371 private static final long[] mk_tokenSet_31() { 8372 long[] data = { 575898352105816064L, 0L, 4398046511104L, 0L, 0L, 0L}; 8373 return data; 8374 } 8375 public static final BitSet _tokenSet_31 = new BitSet(mk_tokenSet_31()); 8376 private static final long[] mk_tokenSet_32() { 8377 long[] data = { 1152499292141780992L, 9007199254750208L, 4398046511104L, 0L, 0L, 0L}; 8378 return data; 8379 } 8380 public static final BitSet _tokenSet_32 = new BitSet(mk_tokenSet_32()); 8381 private static final long[] mk_tokenSet_33() { 8382 long[] data = { 1152499292141780992L, 9007199254740992L, 13194139533312L, 0L, 0L, 0L}; 8383 return data; 8384 } 8385 public static final BitSet _tokenSet_33 = new BitSet(mk_tokenSet_33()); 8386 private static final long[] mk_tokenSet_34() { 8387 long[] data = { 864726312827224064L, 1280L, 0L, 0L}; 8388 return data; 8389 } 8390 public static final BitSet _tokenSet_34 = new BitSet(mk_tokenSet_34()); 8391 private static final long[] mk_tokenSet_35() { 8392 long[] data = { 576495936675512320L, 1280L, 0L, 0L}; 8393 return data; 8394 } 8395 public static final BitSet _tokenSet_35 = new BitSet(mk_tokenSet_35()); 8396 private static final long[] mk_tokenSet_36() { 8397 long[] data = { -1729906174200905728L, 6917529031130272063L, 4398054932478L, 0L, 0L, 0L}; 8398 return data; 8399 } 8400 public static final BitSet _tokenSet_36 = new BitSet(mk_tokenSet_36()); 8401 private static final long[] mk_tokenSet_37() { 8402 long[] data = { 575897802350002176L, 9007199254794240L, 32736L, 0L, 0L, 0L}; 8403 return data; 8404 } 8405 public static final BitSet _tokenSet_37 = new BitSet(mk_tokenSet_37()); 8406 private static final long[] mk_tokenSet_38() { 8407 long[] data = { 1152499292141780992L, 8673968066687717376L, 4398046543870L, 0L, 0L, 0L}; 8408 return data; 8409 } 8410 public static final BitSet _tokenSet_38 = new BitSet(mk_tokenSet_38()); 8411 private static final long[] mk_tokenSet_39() { 8412 long[] data = { -1729906174200905728L, 6917529031130272575L, 4398054932478L, 0L, 0L, 0L}; 8413 return data; 8414 } 8415 public static final BitSet _tokenSet_39 = new BitSet(mk_tokenSet_39()); 8416 private static final long[] mk_tokenSet_40() { 8417 long[] data = { -383179802279936L, -13690342465L, 11263397156913151L, 0L, 0L, 0L}; 8418 return data; 8419 } 8420 public static final BitSet _tokenSet_40 = new BitSet(mk_tokenSet_40()); 8421 private static final long[] mk_tokenSet_41() { 8422 long[] data = { 0L, 9007199254790144L, 0L, 0L}; 8423 return data; 8424 } 8425 public static final BitSet _tokenSet_41 = new BitSet(mk_tokenSet_41()); 8426 private static final long[] mk_tokenSet_42() { 8427 long[] data = { 575897802350002176L, 1747431839791894528L, 4398046511104L, 0L, 0L, 0L}; 8428 return data; 8429 } 8430 public static final BitSet _tokenSet_42 = new BitSet(mk_tokenSet_42()); 8431 private static final long[] mk_tokenSet_43() { 8432 long[] data = { 575897802350002176L, 53248L, 32736L, 0L, 0L, 0L}; 8433 return data; 8434 } 8435 public static final BitSet _tokenSet_43 = new BitSet(mk_tokenSet_43()); 8436 private static final long[] mk_tokenSet_44() { 8437 long[] data = { 1152499292141780992L, 6926536226895876096L, 4398046543870L, 0L, 0L, 0L}; 8438 return data; 8439 } 8440 public static final BitSet _tokenSet_44 = new BitSet(mk_tokenSet_44()); 8441 private static final long[] mk_tokenSet_45() { 8442 long[] data = { -84112639524862L, -133185L, 11263397156913151L, 0L, 0L, 0L}; 8443 return data; 8444 } 8445 public static final BitSet _tokenSet_45 = new BitSet(mk_tokenSet_45()); 8446 private static final long[] mk_tokenSet_46() { 8447 long[] data = { 2305420796748627968L, -17179742208L, 2256197860229119L, 0L, 0L, 0L}; 8448 return data; 8449 } 8450 public static final BitSet _tokenSet_46 = new BitSet(mk_tokenSet_46()); 8451 private static final long[] mk_tokenSet_47() { 8452 long[] data = { 575897802350002176L, 6917529027641135360L, 32766L, 0L, 0L, 0L}; 8453 return data; 8454 } 8455 public static final BitSet _tokenSet_47 = new BitSet(mk_tokenSet_47()); 8456 private static final long[] mk_tokenSet_48() { 8457 long[] data = { 140737488355328L, 9216L, 0L, 0L}; 8458 return data; 8459 } 8460 public static final BitSet _tokenSet_48 = new BitSet(mk_tokenSet_48()); 8461 private static final long[] mk_tokenSet_49() { 8462 long[] data = { -1729906174200905728L, 6917529031935849279L, 4398054932478L, 0L, 0L, 0L}; 8463 return data; 8464 } 8465 public static final BitSet _tokenSet_49 = new BitSet(mk_tokenSet_49()); 8466 private static final long[] mk_tokenSet_50() { 8467 long[] data = { -101704825569280L, -133185L, 11263397156913151L, 0L, 0L, 0L}; 8468 return data; 8469 } 8470 public static final BitSet _tokenSet_50 = new BitSet(mk_tokenSet_50()); 8471 private static final long[] mk_tokenSet_51() { 8472 long[] data = { -1729941358572994560L, 1073741855L, 4398046511104L, 0L, 0L, 0L}; 8473 return data; 8474 } 8475 public static final BitSet _tokenSet_51 = new BitSet(mk_tokenSet_51()); 8476 private static final long[] mk_tokenSet_52() { 8477 long[] data = { -1153339868781215744L, 9007200328482847L, 4398046511104L, 0L, 0L, 0L}; 8478 return data; 8479 } 8480 public static final BitSet _tokenSet_52 = new BitSet(mk_tokenSet_52()); 8481 private static final long[] mk_tokenSet_53() { 8482 long[] data = { -383179802279936L, -12885036225L, 11263397123358719L, 0L, 0L, 0L}; 8483 return data; 8484 } 8485 public static final BitSet _tokenSet_53 = new BitSet(mk_tokenSet_53()); 8486 private static final long[] mk_tokenSet_54() { 8487 long[] data = { -2305839160922996736L, 1073741887L, 4398046511104L, 0L, 0L, 0L}; 8488 return data; 8489 } 8490 public static final BitSet _tokenSet_54 = new BitSet(mk_tokenSet_54()); 8491 private static final long[] mk_tokenSet_55() { 8492 long[] data = { -2017608784771284992L, 1073741887L, 4398046511104L, 0L, 0L, 0L}; 8493 return data; 8494 } 8495 public static final BitSet _tokenSet_55 = new BitSet(mk_tokenSet_55()); 8496 private static final long[] mk_tokenSet_56() { 8497 long[] data = { -1729906174200905728L, 6917529028714876959L, 4398046543870L, 0L, 0L, 0L}; 8498 return data; 8499 } 8500 public static final BitSet _tokenSet_56 = new BitSet(mk_tokenSet_56()); 8501 private static final long[] mk_tokenSet_57() { 8502 long[] data = { -383179802279936L, -16105999329L, 11263397114970111L, 0L, 0L, 0L}; 8503 return data; 8504 } 8505 public static final BitSet _tokenSet_57 = new BitSet(mk_tokenSet_57()); 8506 private static final long[] mk_tokenSet_58() { 8507 long[] data = { 575897802350002176L, 6917529027641397248L, 32766L, 0L, 0L, 0L}; 8508 return data; 8509 } 8510 public static final BitSet _tokenSet_58 = new BitSet(mk_tokenSet_58()); 8511 private static final long[] mk_tokenSet_59() { 8512 long[] data = { -383179802279936L, -13153471681L, 11263397123358719L, 0L, 0L, 0L}; 8513 return data; 8514 } 8515 public static final BitSet _tokenSet_59 = new BitSet(mk_tokenSet_59()); 8516 private static final long[] mk_tokenSet_60() { 8517 long[] data = { 0L, 1610613248L, 0L, 0L}; 8518 return data; 8519 } 8520 public static final BitSet _tokenSet_60 = new BitSet(mk_tokenSet_60()); 8521 private static final long[] mk_tokenSet_61() { 8522 long[] data = { 2305456530876530688L, -17179741184L, 11263397114970111L, 0L, 0L, 0L}; 8523 return data; 8524 } 8525 public static final BitSet _tokenSet_61 = new BitSet(mk_tokenSet_61()); 8526 private static final long[] mk_tokenSet_62() { 8527 long[] data = { 1152921504606846976L, -9223372036854775808L, 1L, 0L, 0L, 0L}; 8528 return data; 8529 } 8530 public static final BitSet _tokenSet_62 = new BitSet(mk_tokenSet_62()); 8531 private static final long[] mk_tokenSet_63() { 8532 long[] data = { 288230376151711744L, 9007199254790144L, 0L, 0L}; 8533 return data; 8534 } 8535 public static final BitSet _tokenSet_63 = new BitSet(mk_tokenSet_63()); 8536 private static final long[] mk_tokenSet_64() { 8537 long[] data = { 575897802350002176L, 6917529027641143296L, 32766L, 0L, 0L, 0L}; 8538 return data; 8539 } 8540 public static final BitSet _tokenSet_64 = new BitSet(mk_tokenSet_64()); 8541 private static final long[] mk_tokenSet_65() { 8542 long[] data = { -576703194617348096L, -12885035073L, 4398088486911L, 0L, 0L, 0L}; 8543 return data; 8544 } 8545 public static final BitSet _tokenSet_65 = new BitSet(mk_tokenSet_65()); 8546 private static final long[] mk_tokenSet_66() { 8547 long[] data = { 575897802350002176L, 6917529027641136896L, 32766L, 0L, 0L, 0L}; 8548 return data; 8549 } 8550 public static final BitSet _tokenSet_66 = new BitSet(mk_tokenSet_66()); 8551 private static final long[] mk_tokenSet_67() { 8552 long[] data = { 576179277326712832L, 6917529027641135104L, 32766L, 0L, 0L, 0L}; 8553 return data; 8554 } 8555 public static final BitSet _tokenSet_67 = new BitSet(mk_tokenSet_67()); 8556 private static final long[] mk_tokenSet_68() { 8557 long[] data = { 575898352105816064L, 8192L, 4398046511104L, 0L, 0L, 0L}; 8558 return data; 8559 } 8560 public static final BitSet _tokenSet_68 = new BitSet(mk_tokenSet_68()); 8561 private static final long[] mk_tokenSet_69() { 8562 long[] data = { 1152499292141780992L, 9007199254750208L, 9020393394274304L, 0L, 0L, 0L}; 8563 return data; 8564 } 8565 public static final BitSet _tokenSet_69 = new BitSet(mk_tokenSet_69()); 8566 private static final long[] mk_tokenSet_70() { 8567 long[] data = { -101704825569280L, -12885035073L, 11263397156913151L, 0L, 0L, 0L}; 8568 return data; 8569 } 8570 public static final BitSet _tokenSet_70 = new BitSet(mk_tokenSet_70()); 8571 8572 }