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