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 synPredMatched291 = false; 2249 if (((LA(1)==IDENT||LA(1)==LPAREN) && (_tokenSet_17.member(LA(2))))) { 2250 int _m291 = mark(); 2251 synPredMatched291 = true; 2252 inputState.guessing++; 2253 try { 2254 { 2255 lambdaExpression(); 2256 } 2257 } 2258 catch (RecognitionException pe) { 2259 synPredMatched291 = false; 2260 } 2261 rewind(_m291); 2262inputState.guessing--; 2263 } 2264 if ( synPredMatched291 ) { 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 synPredMatched294 = false; 2283 if (((LA(1)==IDENT||LA(1)==LPAREN) && (_tokenSet_17.member(LA(2))))) { 2284 int _m294 = mark(); 2285 synPredMatched294 = true; 2286 inputState.guessing++; 2287 try { 2288 { 2289 lambdaExpression(); 2290 } 2291 } 2292 catch (RecognitionException pe) { 2293 synPredMatched294 = false; 2294 } 2295 rewind(_m294); 2296inputState.guessing--; 2297 } 2298 if ( synPredMatched294 ) { 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 synPredMatched362 = false; 4489 if (((LA(1)==IDENT||LA(1)==LPAREN) && (_tokenSet_17.member(LA(2))))) { 4490 int _m362 = mark(); 4491 synPredMatched362 = true; 4492 inputState.guessing++; 4493 try { 4494 { 4495 lambdaExpression(); 4496 } 4497 } 4498 catch (RecognitionException pe) { 4499 synPredMatched362 = false; 4500 } 4501 rewind(_m362); 4502inputState.guessing--; 4503 } 4504 if ( synPredMatched362 ) { 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 synPredMatched359 = false; 4535 if (((_tokenSet_10.member(LA(1))) && (_tokenSet_19.member(LA(2))))) { 4536 int _m359 = mark(); 4537 synPredMatched359 = true; 4538 inputState.guessing++; 4539 try { 4540 { 4541 typeSpec(false); 4542 match(DOUBLE_COLON); 4543 } 4544 } 4545 catch (RecognitionException pe) { 4546 synPredMatched359 = false; 4547 } 4548 rewind(_m359); 4549inputState.guessing--; 4550 } 4551 if ( synPredMatched359 ) { 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 _loop364: 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 _loop364; 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 LITERAL_default: 4699 case LT: 4700 case ENUM: 4701 case AT: 4702 { 4703 break; 4704 } 4705 default: 4706 { 4707 throw new NoViableAltException(LT(1), getFilename()); 4708 } 4709 } 4710 } 4711 varInitializer_AST = (AST)currentAST.root; 4712 returnAST = varInitializer_AST; 4713 } 4714 4715 public final void initializer() throws RecognitionException, TokenStreamException { 4716 4717 returnAST = null; 4718 ASTPair currentAST = new ASTPair(); 4719 AST initializer_AST = null; 4720 4721 switch ( LA(1)) { 4722 case LITERAL_void: 4723 case LITERAL_boolean: 4724 case LITERAL_byte: 4725 case LITERAL_char: 4726 case LITERAL_short: 4727 case LITERAL_int: 4728 case LITERAL_float: 4729 case LITERAL_long: 4730 case LITERAL_double: 4731 case IDENT: 4732 case LPAREN: 4733 case LITERAL_this: 4734 case LITERAL_super: 4735 case PLUS: 4736 case MINUS: 4737 case INC: 4738 case DEC: 4739 case BNOT: 4740 case LNOT: 4741 case LITERAL_true: 4742 case LITERAL_false: 4743 case LITERAL_null: 4744 case LITERAL_new: 4745 case NUM_INT: 4746 case CHAR_LITERAL: 4747 case STRING_LITERAL: 4748 case NUM_FLOAT: 4749 case NUM_LONG: 4750 case NUM_DOUBLE: 4751 case AT: 4752 { 4753 expression(); 4754 astFactory.addASTChild(currentAST, returnAST); 4755 initializer_AST = (AST)currentAST.root; 4756 break; 4757 } 4758 case LCURLY: 4759 { 4760 arrayInitializer(); 4761 astFactory.addASTChild(currentAST, returnAST); 4762 initializer_AST = (AST)currentAST.root; 4763 break; 4764 } 4765 default: 4766 { 4767 throw new NoViableAltException(LT(1), getFilename()); 4768 } 4769 } 4770 returnAST = initializer_AST; 4771 } 4772 4773 public final void arrayInitializer() throws RecognitionException, TokenStreamException { 4774 4775 returnAST = null; 4776 ASTPair currentAST = new ASTPair(); 4777 AST arrayInitializer_AST = null; 4778 Token lc = null; 4779 AST lc_AST = null; 4780 4781 lc = LT(1); 4782 lc_AST = astFactory.create(lc); 4783 astFactory.makeASTRoot(currentAST, lc_AST); 4784 match(LCURLY); 4785 if ( inputState.guessing==0 ) { 4786 lc_AST.setType(ARRAY_INIT); 4787 } 4788 { 4789 switch ( LA(1)) { 4790 case LITERAL_void: 4791 case LITERAL_boolean: 4792 case LITERAL_byte: 4793 case LITERAL_char: 4794 case LITERAL_short: 4795 case LITERAL_int: 4796 case LITERAL_float: 4797 case LITERAL_long: 4798 case LITERAL_double: 4799 case IDENT: 4800 case LCURLY: 4801 case LPAREN: 4802 case LITERAL_this: 4803 case LITERAL_super: 4804 case PLUS: 4805 case MINUS: 4806 case INC: 4807 case DEC: 4808 case BNOT: 4809 case LNOT: 4810 case LITERAL_true: 4811 case LITERAL_false: 4812 case LITERAL_null: 4813 case LITERAL_new: 4814 case NUM_INT: 4815 case CHAR_LITERAL: 4816 case STRING_LITERAL: 4817 case NUM_FLOAT: 4818 case NUM_LONG: 4819 case NUM_DOUBLE: 4820 case AT: 4821 { 4822 initializer(); 4823 astFactory.addASTChild(currentAST, returnAST); 4824 { 4825 _loop182: 4826 do { 4827 if ((LA(1)==COMMA) && (_tokenSet_12.member(LA(2)))) { 4828 AST tmp114_AST = null; 4829 tmp114_AST = astFactory.create(LT(1)); 4830 astFactory.addASTChild(currentAST, tmp114_AST); 4831 match(COMMA); 4832 initializer(); 4833 astFactory.addASTChild(currentAST, returnAST); 4834 } 4835 else { 4836 break _loop182; 4837 } 4838 4839 } while (true); 4840 } 4841 break; 4842 } 4843 case RCURLY: 4844 case COMMA: 4845 { 4846 break; 4847 } 4848 default: 4849 { 4850 throw new NoViableAltException(LT(1), getFilename()); 4851 } 4852 } 4853 } 4854 { 4855 switch ( LA(1)) { 4856 case COMMA: 4857 { 4858 AST tmp115_AST = null; 4859 tmp115_AST = astFactory.create(LT(1)); 4860 astFactory.addASTChild(currentAST, tmp115_AST); 4861 match(COMMA); 4862 break; 4863 } 4864 case RCURLY: 4865 { 4866 break; 4867 } 4868 default: 4869 { 4870 throw new NoViableAltException(LT(1), getFilename()); 4871 } 4872 } 4873 } 4874 AST tmp116_AST = null; 4875 tmp116_AST = astFactory.create(LT(1)); 4876 astFactory.addASTChild(currentAST, tmp116_AST); 4877 match(RCURLY); 4878 arrayInitializer_AST = (AST)currentAST.root; 4879 returnAST = arrayInitializer_AST; 4880 } 4881 4882 public final void expression() throws RecognitionException, TokenStreamException { 4883 4884 returnAST = null; 4885 ASTPair currentAST = new ASTPair(); 4886 AST expression_AST = null; 4887 4888 boolean synPredMatched277 = false; 4889 if (((LA(1)==IDENT||LA(1)==LPAREN) && (_tokenSet_17.member(LA(2))))) { 4890 int _m277 = mark(); 4891 synPredMatched277 = true; 4892 inputState.guessing++; 4893 try { 4894 { 4895 lambdaExpression(); 4896 } 4897 } 4898 catch (RecognitionException pe) { 4899 synPredMatched277 = false; 4900 } 4901 rewind(_m277); 4902inputState.guessing--; 4903 } 4904 if ( synPredMatched277 ) { 4905 lambdaExpression(); 4906 astFactory.addASTChild(currentAST, returnAST); 4907 expression_AST = (AST)currentAST.root; 4908 } 4909 else if (((_tokenSet_14.member(LA(1))) && (_tokenSet_19.member(LA(2))))&&(LA(1)!=RPAREN)) { 4910 assignmentExpression(); 4911 astFactory.addASTChild(currentAST, returnAST); 4912 if ( inputState.guessing==0 ) { 4913 expression_AST = (AST)currentAST.root; 4914 expression_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(EXPR,"EXPR")).add(expression_AST)); 4915 currentAST.root = expression_AST; 4916 currentAST.child = expression_AST!=null &&expression_AST.getFirstChild()!=null ? 4917 expression_AST.getFirstChild() : expression_AST; 4918 currentAST.advanceChildToEnd(); 4919 } 4920 expression_AST = (AST)currentAST.root; 4921 } 4922 else { 4923 throw new NoViableAltException(LT(1), getFilename()); 4924 } 4925 4926 returnAST = expression_AST; 4927 } 4928 4929 public final void parameterDeclaration() throws RecognitionException, TokenStreamException { 4930 4931 returnAST = null; 4932 ASTPair currentAST = new ASTPair(); 4933 AST parameterDeclaration_AST = null; 4934 AST pm_AST = null; 4935 AST t_AST = null; 4936 AST id_AST = null; 4937 AST pd_AST = null; 4938 4939 parameterModifier(); 4940 pm_AST = (AST)returnAST; 4941 { 4942 if ((_tokenSet_10.member(LA(1))) && (_tokenSet_50.member(LA(2)))) { 4943 typeSpec(false); 4944 t_AST = (AST)returnAST; 4945 } 4946 else if ((LA(1)==IDENT||LA(1)==LITERAL_this) && (_tokenSet_51.member(LA(2)))) { 4947 } 4948 else { 4949 throw new NoViableAltException(LT(1), getFilename()); 4950 } 4951 4952 } 4953 parameterIdent(); 4954 id_AST = (AST)returnAST; 4955 declaratorBrackets(t_AST); 4956 pd_AST = (AST)returnAST; 4957 if ( inputState.guessing==0 ) { 4958 parameterDeclaration_AST = (AST)currentAST.root; 4959 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)); 4960 currentAST.root = parameterDeclaration_AST; 4961 currentAST.child = parameterDeclaration_AST!=null &¶meterDeclaration_AST.getFirstChild()!=null ? 4962 parameterDeclaration_AST.getFirstChild() : parameterDeclaration_AST; 4963 currentAST.advanceChildToEnd(); 4964 } 4965 returnAST = parameterDeclaration_AST; 4966 } 4967 4968 public final void variableLengthParameterDeclaration() throws RecognitionException, TokenStreamException { 4969 4970 returnAST = null; 4971 ASTPair currentAST = new ASTPair(); 4972 AST variableLengthParameterDeclaration_AST = null; 4973 AST pm_AST = null; 4974 AST t_AST = null; 4975 Token td = null; 4976 AST td_AST = null; 4977 AST pd_AST = null; 4978 4979 parameterModifier(); 4980 pm_AST = (AST)returnAST; 4981 variableLengthParameterTypeSpec(); 4982 t_AST = (AST)returnAST; 4983 td = LT(1); 4984 td_AST = astFactory.create(td); 4985 match(ELLIPSIS); 4986 AST tmp117_AST = null; 4987 tmp117_AST = astFactory.create(LT(1)); 4988 match(IDENT); 4989 declaratorBrackets(t_AST); 4990 pd_AST = (AST)returnAST; 4991 if ( inputState.guessing==0 ) { 4992 variableLengthParameterDeclaration_AST = (AST)currentAST.root; 4993 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)); 4994 currentAST.root = variableLengthParameterDeclaration_AST; 4995 currentAST.child = variableLengthParameterDeclaration_AST!=null &&variableLengthParameterDeclaration_AST.getFirstChild()!=null ? 4996 variableLengthParameterDeclaration_AST.getFirstChild() : variableLengthParameterDeclaration_AST; 4997 currentAST.advanceChildToEnd(); 4998 } 4999 returnAST = variableLengthParameterDeclaration_AST; 5000 } 5001 5002 public final void parameterModifier() throws RecognitionException, TokenStreamException { 5003 5004 returnAST = null; 5005 ASTPair currentAST = new ASTPair(); 5006 AST parameterModifier_AST = null; 5007 Token f = null; 5008 AST f_AST = null; 5009 5010 { 5011 _loop204: 5012 do { 5013 if ((LA(1)==AT) && (LA(2)==IDENT)) { 5014 annotation(); 5015 astFactory.addASTChild(currentAST, returnAST); 5016 } 5017 else { 5018 break _loop204; 5019 } 5020 5021 } while (true); 5022 } 5023 { 5024 switch ( LA(1)) { 5025 case FINAL: 5026 { 5027 f = LT(1); 5028 f_AST = astFactory.create(f); 5029 astFactory.addASTChild(currentAST, f_AST); 5030 match(FINAL); 5031 break; 5032 } 5033 case LITERAL_void: 5034 case LITERAL_boolean: 5035 case LITERAL_byte: 5036 case LITERAL_char: 5037 case LITERAL_short: 5038 case LITERAL_int: 5039 case LITERAL_float: 5040 case LITERAL_long: 5041 case LITERAL_double: 5042 case IDENT: 5043 case LITERAL_this: 5044 case AT: 5045 { 5046 break; 5047 } 5048 default: 5049 { 5050 throw new NoViableAltException(LT(1), getFilename()); 5051 } 5052 } 5053 } 5054 { 5055 _loop207: 5056 do { 5057 if ((LA(1)==AT) && (LA(2)==IDENT)) { 5058 annotation(); 5059 astFactory.addASTChild(currentAST, returnAST); 5060 } 5061 else { 5062 break _loop207; 5063 } 5064 5065 } while (true); 5066 } 5067 if ( inputState.guessing==0 ) { 5068 parameterModifier_AST = (AST)currentAST.root; 5069 parameterModifier_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(MODIFIERS,"MODIFIERS")).add(parameterModifier_AST)); 5070 currentAST.root = parameterModifier_AST; 5071 currentAST.child = parameterModifier_AST!=null &¶meterModifier_AST.getFirstChild()!=null ? 5072 parameterModifier_AST.getFirstChild() : parameterModifier_AST; 5073 currentAST.advanceChildToEnd(); 5074 } 5075 parameterModifier_AST = (AST)currentAST.root; 5076 returnAST = parameterModifier_AST; 5077 } 5078 5079 public final void parameterIdent() throws RecognitionException, TokenStreamException { 5080 5081 returnAST = null; 5082 ASTPair currentAST = new ASTPair(); 5083 AST parameterIdent_AST = null; 5084 5085 switch ( LA(1)) { 5086 case LITERAL_this: 5087 { 5088 AST tmp118_AST = null; 5089 tmp118_AST = astFactory.create(LT(1)); 5090 astFactory.addASTChild(currentAST, tmp118_AST); 5091 match(LITERAL_this); 5092 parameterIdent_AST = (AST)currentAST.root; 5093 break; 5094 } 5095 case IDENT: 5096 { 5097 { 5098 AST tmp119_AST = null; 5099 tmp119_AST = astFactory.create(LT(1)); 5100 astFactory.addASTChild(currentAST, tmp119_AST); 5101 match(IDENT); 5102 { 5103 switch ( LA(1)) { 5104 case DOT: 5105 { 5106 AST tmp120_AST = null; 5107 tmp120_AST = astFactory.create(LT(1)); 5108 astFactory.makeASTRoot(currentAST, tmp120_AST); 5109 match(DOT); 5110 AST tmp121_AST = null; 5111 tmp121_AST = astFactory.create(LT(1)); 5112 astFactory.addASTChild(currentAST, tmp121_AST); 5113 match(LITERAL_this); 5114 break; 5115 } 5116 case LBRACK: 5117 case COMMA: 5118 case RPAREN: 5119 case AT: 5120 { 5121 break; 5122 } 5123 default: 5124 { 5125 throw new NoViableAltException(LT(1), getFilename()); 5126 } 5127 } 5128 } 5129 } 5130 parameterIdent_AST = (AST)currentAST.root; 5131 break; 5132 } 5133 default: 5134 { 5135 throw new NoViableAltException(LT(1), getFilename()); 5136 } 5137 } 5138 returnAST = parameterIdent_AST; 5139 } 5140 5141 public final void catchParameterDeclaration() throws RecognitionException, TokenStreamException { 5142 5143 returnAST = null; 5144 ASTPair currentAST = new ASTPair(); 5145 AST catchParameterDeclaration_AST = null; 5146 AST pm_AST = null; 5147 AST mct_AST = null; 5148 Token id = null; 5149 AST id_AST = null; 5150 5151 parameterModifier(); 5152 pm_AST = (AST)returnAST; 5153 multiCatchTypes(); 5154 mct_AST = (AST)returnAST; 5155 id = LT(1); 5156 id_AST = astFactory.create(id); 5157 match(IDENT); 5158 if ( inputState.guessing==0 ) { 5159 catchParameterDeclaration_AST = (AST)currentAST.root; 5160 catchParameterDeclaration_AST = 5161 (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)); 5162 currentAST.root = catchParameterDeclaration_AST; 5163 currentAST.child = catchParameterDeclaration_AST!=null &&catchParameterDeclaration_AST.getFirstChild()!=null ? 5164 catchParameterDeclaration_AST.getFirstChild() : catchParameterDeclaration_AST; 5165 currentAST.advanceChildToEnd(); 5166 } 5167 returnAST = catchParameterDeclaration_AST; 5168 } 5169 5170 public final void multiCatchTypes() throws RecognitionException, TokenStreamException { 5171 5172 returnAST = null; 5173 ASTPair currentAST = new ASTPair(); 5174 AST multiCatchTypes_AST = null; 5175 5176 typeSpec(false); 5177 astFactory.addASTChild(currentAST, returnAST); 5178 { 5179 _loop216: 5180 do { 5181 if ((LA(1)==BOR)) { 5182 AST tmp122_AST = null; 5183 tmp122_AST = astFactory.create(LT(1)); 5184 astFactory.makeASTRoot(currentAST, tmp122_AST); 5185 match(BOR); 5186 typeSpec(false); 5187 astFactory.addASTChild(currentAST, returnAST); 5188 } 5189 else { 5190 break _loop216; 5191 } 5192 5193 } while (true); 5194 } 5195 multiCatchTypes_AST = (AST)currentAST.root; 5196 returnAST = multiCatchTypes_AST; 5197 } 5198 5199 public final void traditionalStatement() throws RecognitionException, TokenStreamException { 5200 5201 returnAST = null; 5202 ASTPair currentAST = new ASTPair(); 5203 AST traditionalStatement_AST = null; 5204 AST m_AST = null; 5205 Token c = null; 5206 AST c_AST = null; 5207 Token w = null; 5208 AST w_AST = null; 5209 Token s = null; 5210 AST s_AST = null; 5211 5212 switch ( LA(1)) { 5213 case LCURLY: 5214 { 5215 compoundStatement(); 5216 astFactory.addASTChild(currentAST, returnAST); 5217 traditionalStatement_AST = (AST)currentAST.root; 5218 break; 5219 } 5220 case LITERAL_if: 5221 { 5222 AST tmp123_AST = null; 5223 tmp123_AST = astFactory.create(LT(1)); 5224 astFactory.makeASTRoot(currentAST, tmp123_AST); 5225 match(LITERAL_if); 5226 AST tmp124_AST = null; 5227 tmp124_AST = astFactory.create(LT(1)); 5228 astFactory.addASTChild(currentAST, tmp124_AST); 5229 match(LPAREN); 5230 expression(); 5231 astFactory.addASTChild(currentAST, returnAST); 5232 AST tmp125_AST = null; 5233 tmp125_AST = astFactory.create(LT(1)); 5234 astFactory.addASTChild(currentAST, tmp125_AST); 5235 match(RPAREN); 5236 statement(); 5237 astFactory.addASTChild(currentAST, returnAST); 5238 { 5239 if ((LA(1)==LITERAL_else) && (_tokenSet_39.member(LA(2)))) { 5240 elseStatement(); 5241 astFactory.addASTChild(currentAST, returnAST); 5242 } 5243 else if ((_tokenSet_52.member(LA(1))) && (_tokenSet_53.member(LA(2)))) { 5244 } 5245 else { 5246 throw new NoViableAltException(LT(1), getFilename()); 5247 } 5248 5249 } 5250 traditionalStatement_AST = (AST)currentAST.root; 5251 break; 5252 } 5253 case LITERAL_for: 5254 { 5255 forStatement(); 5256 astFactory.addASTChild(currentAST, returnAST); 5257 traditionalStatement_AST = (AST)currentAST.root; 5258 break; 5259 } 5260 case LITERAL_while: 5261 { 5262 AST tmp126_AST = null; 5263 tmp126_AST = astFactory.create(LT(1)); 5264 astFactory.makeASTRoot(currentAST, tmp126_AST); 5265 match(LITERAL_while); 5266 AST tmp127_AST = null; 5267 tmp127_AST = astFactory.create(LT(1)); 5268 astFactory.addASTChild(currentAST, tmp127_AST); 5269 match(LPAREN); 5270 expression(); 5271 astFactory.addASTChild(currentAST, returnAST); 5272 AST tmp128_AST = null; 5273 tmp128_AST = astFactory.create(LT(1)); 5274 astFactory.addASTChild(currentAST, tmp128_AST); 5275 match(RPAREN); 5276 statement(); 5277 astFactory.addASTChild(currentAST, returnAST); 5278 traditionalStatement_AST = (AST)currentAST.root; 5279 break; 5280 } 5281 case LITERAL_do: 5282 { 5283 AST tmp129_AST = null; 5284 tmp129_AST = astFactory.create(LT(1)); 5285 astFactory.makeASTRoot(currentAST, tmp129_AST); 5286 match(LITERAL_do); 5287 statement(); 5288 astFactory.addASTChild(currentAST, returnAST); 5289 w = LT(1); 5290 w_AST = astFactory.create(w); 5291 astFactory.addASTChild(currentAST, w_AST); 5292 match(LITERAL_while); 5293 if ( inputState.guessing==0 ) { 5294 w_AST.setType(DO_WHILE); 5295 } 5296 AST tmp130_AST = null; 5297 tmp130_AST = astFactory.create(LT(1)); 5298 astFactory.addASTChild(currentAST, tmp130_AST); 5299 match(LPAREN); 5300 expression(); 5301 astFactory.addASTChild(currentAST, returnAST); 5302 AST tmp131_AST = null; 5303 tmp131_AST = astFactory.create(LT(1)); 5304 astFactory.addASTChild(currentAST, tmp131_AST); 5305 match(RPAREN); 5306 AST tmp132_AST = null; 5307 tmp132_AST = astFactory.create(LT(1)); 5308 astFactory.addASTChild(currentAST, tmp132_AST); 5309 match(SEMI); 5310 traditionalStatement_AST = (AST)currentAST.root; 5311 break; 5312 } 5313 case LITERAL_break: 5314 { 5315 AST tmp133_AST = null; 5316 tmp133_AST = astFactory.create(LT(1)); 5317 astFactory.makeASTRoot(currentAST, tmp133_AST); 5318 match(LITERAL_break); 5319 { 5320 switch ( LA(1)) { 5321 case IDENT: 5322 { 5323 AST tmp134_AST = null; 5324 tmp134_AST = astFactory.create(LT(1)); 5325 astFactory.addASTChild(currentAST, tmp134_AST); 5326 match(IDENT); 5327 break; 5328 } 5329 case SEMI: 5330 { 5331 break; 5332 } 5333 default: 5334 { 5335 throw new NoViableAltException(LT(1), getFilename()); 5336 } 5337 } 5338 } 5339 AST tmp135_AST = null; 5340 tmp135_AST = astFactory.create(LT(1)); 5341 astFactory.addASTChild(currentAST, tmp135_AST); 5342 match(SEMI); 5343 traditionalStatement_AST = (AST)currentAST.root; 5344 break; 5345 } 5346 case LITERAL_continue: 5347 { 5348 AST tmp136_AST = null; 5349 tmp136_AST = astFactory.create(LT(1)); 5350 astFactory.makeASTRoot(currentAST, tmp136_AST); 5351 match(LITERAL_continue); 5352 { 5353 switch ( LA(1)) { 5354 case IDENT: 5355 { 5356 AST tmp137_AST = null; 5357 tmp137_AST = astFactory.create(LT(1)); 5358 astFactory.addASTChild(currentAST, tmp137_AST); 5359 match(IDENT); 5360 break; 5361 } 5362 case SEMI: 5363 { 5364 break; 5365 } 5366 default: 5367 { 5368 throw new NoViableAltException(LT(1), getFilename()); 5369 } 5370 } 5371 } 5372 AST tmp138_AST = null; 5373 tmp138_AST = astFactory.create(LT(1)); 5374 astFactory.addASTChild(currentAST, tmp138_AST); 5375 match(SEMI); 5376 traditionalStatement_AST = (AST)currentAST.root; 5377 break; 5378 } 5379 case LITERAL_return: 5380 { 5381 AST tmp139_AST = null; 5382 tmp139_AST = astFactory.create(LT(1)); 5383 astFactory.makeASTRoot(currentAST, tmp139_AST); 5384 match(LITERAL_return); 5385 { 5386 switch ( LA(1)) { 5387 case LITERAL_void: 5388 case LITERAL_boolean: 5389 case LITERAL_byte: 5390 case LITERAL_char: 5391 case LITERAL_short: 5392 case LITERAL_int: 5393 case LITERAL_float: 5394 case LITERAL_long: 5395 case LITERAL_double: 5396 case IDENT: 5397 case LPAREN: 5398 case LITERAL_this: 5399 case LITERAL_super: 5400 case PLUS: 5401 case MINUS: 5402 case INC: 5403 case DEC: 5404 case BNOT: 5405 case LNOT: 5406 case LITERAL_true: 5407 case LITERAL_false: 5408 case LITERAL_null: 5409 case LITERAL_new: 5410 case NUM_INT: 5411 case CHAR_LITERAL: 5412 case STRING_LITERAL: 5413 case NUM_FLOAT: 5414 case NUM_LONG: 5415 case NUM_DOUBLE: 5416 case AT: 5417 { 5418 expression(); 5419 astFactory.addASTChild(currentAST, returnAST); 5420 break; 5421 } 5422 case SEMI: 5423 { 5424 break; 5425 } 5426 default: 5427 { 5428 throw new NoViableAltException(LT(1), getFilename()); 5429 } 5430 } 5431 } 5432 AST tmp140_AST = null; 5433 tmp140_AST = astFactory.create(LT(1)); 5434 astFactory.addASTChild(currentAST, tmp140_AST); 5435 match(SEMI); 5436 traditionalStatement_AST = (AST)currentAST.root; 5437 break; 5438 } 5439 case LITERAL_switch: 5440 { 5441 AST tmp141_AST = null; 5442 tmp141_AST = astFactory.create(LT(1)); 5443 astFactory.makeASTRoot(currentAST, tmp141_AST); 5444 match(LITERAL_switch); 5445 AST tmp142_AST = null; 5446 tmp142_AST = astFactory.create(LT(1)); 5447 astFactory.addASTChild(currentAST, tmp142_AST); 5448 match(LPAREN); 5449 expression(); 5450 astFactory.addASTChild(currentAST, returnAST); 5451 AST tmp143_AST = null; 5452 tmp143_AST = astFactory.create(LT(1)); 5453 astFactory.addASTChild(currentAST, tmp143_AST); 5454 match(RPAREN); 5455 AST tmp144_AST = null; 5456 tmp144_AST = astFactory.create(LT(1)); 5457 astFactory.addASTChild(currentAST, tmp144_AST); 5458 match(LCURLY); 5459 { 5460 _loop235: 5461 do { 5462 if ((LA(1)==LITERAL_case||LA(1)==LITERAL_default)) { 5463 casesGroup(); 5464 astFactory.addASTChild(currentAST, returnAST); 5465 } 5466 else { 5467 break _loop235; 5468 } 5469 5470 } while (true); 5471 } 5472 AST tmp145_AST = null; 5473 tmp145_AST = astFactory.create(LT(1)); 5474 astFactory.addASTChild(currentAST, tmp145_AST); 5475 match(RCURLY); 5476 traditionalStatement_AST = (AST)currentAST.root; 5477 break; 5478 } 5479 case LITERAL_try: 5480 { 5481 tryBlock(); 5482 astFactory.addASTChild(currentAST, returnAST); 5483 traditionalStatement_AST = (AST)currentAST.root; 5484 break; 5485 } 5486 case LITERAL_throw: 5487 { 5488 AST tmp146_AST = null; 5489 tmp146_AST = astFactory.create(LT(1)); 5490 astFactory.makeASTRoot(currentAST, tmp146_AST); 5491 match(LITERAL_throw); 5492 expression(); 5493 astFactory.addASTChild(currentAST, returnAST); 5494 AST tmp147_AST = null; 5495 tmp147_AST = astFactory.create(LT(1)); 5496 astFactory.addASTChild(currentAST, tmp147_AST); 5497 match(SEMI); 5498 traditionalStatement_AST = (AST)currentAST.root; 5499 break; 5500 } 5501 case SEMI: 5502 { 5503 s = LT(1); 5504 s_AST = astFactory.create(s); 5505 astFactory.addASTChild(currentAST, s_AST); 5506 match(SEMI); 5507 if ( inputState.guessing==0 ) { 5508 s_AST.setType(EMPTY_STAT); 5509 } 5510 traditionalStatement_AST = (AST)currentAST.root; 5511 break; 5512 } 5513 default: 5514 boolean synPredMatched225 = false; 5515 if (((_tokenSet_54.member(LA(1))) && (_tokenSet_55.member(LA(2))))) { 5516 int _m225 = mark(); 5517 synPredMatched225 = true; 5518 inputState.guessing++; 5519 try { 5520 { 5521 declaration(); 5522 } 5523 } 5524 catch (RecognitionException pe) { 5525 synPredMatched225 = false; 5526 } 5527 rewind(_m225); 5528inputState.guessing--; 5529 } 5530 if ( synPredMatched225 ) { 5531 declaration(); 5532 astFactory.addASTChild(currentAST, returnAST); 5533 AST tmp148_AST = null; 5534 tmp148_AST = astFactory.create(LT(1)); 5535 astFactory.addASTChild(currentAST, tmp148_AST); 5536 match(SEMI); 5537 traditionalStatement_AST = (AST)currentAST.root; 5538 } 5539 else { 5540 boolean synPredMatched228 = false; 5541 if ((((_tokenSet_14.member(LA(1))) && (_tokenSet_56.member(LA(2))))&&(LA(2) != COLON))) { 5542 int _m228 = mark(); 5543 synPredMatched228 = true; 5544 inputState.guessing++; 5545 try { 5546 { 5547 if (!(LA(2) != COLON)) 5548 throw new SemanticException("LA(2) != COLON"); 5549 expression(); 5550 { 5551 if ((LA(1)==SEMI)) { 5552 match(SEMI); 5553 } 5554 else { 5555 } 5556 5557 } 5558 } 5559 } 5560 catch (RecognitionException pe) { 5561 synPredMatched228 = false; 5562 } 5563 rewind(_m228); 5564inputState.guessing--; 5565 } 5566 if ( synPredMatched228 ) { 5567 expression(); 5568 astFactory.addASTChild(currentAST, returnAST); 5569 { 5570 if ((LA(1)==SEMI) && (_tokenSet_52.member(LA(2)))) { 5571 AST tmp149_AST = null; 5572 tmp149_AST = astFactory.create(LT(1)); 5573 astFactory.addASTChild(currentAST, tmp149_AST); 5574 match(SEMI); 5575 } 5576 else if ((_tokenSet_52.member(LA(1))) && (_tokenSet_53.member(LA(2)))) { 5577 } 5578 else { 5579 throw new NoViableAltException(LT(1), getFilename()); 5580 } 5581 5582 } 5583 traditionalStatement_AST = (AST)currentAST.root; 5584 } 5585 else if ((_tokenSet_57.member(LA(1))) && (_tokenSet_58.member(LA(2)))) { 5586 modifiers(); 5587 m_AST = (AST)returnAST; 5588 classDefinition(m_AST); 5589 astFactory.addASTChild(currentAST, returnAST); 5590 traditionalStatement_AST = (AST)currentAST.root; 5591 } 5592 else if ((LA(1)==IDENT) && (LA(2)==COLON)) { 5593 AST tmp150_AST = null; 5594 tmp150_AST = astFactory.create(LT(1)); 5595 astFactory.addASTChild(currentAST, tmp150_AST); 5596 match(IDENT); 5597 c = LT(1); 5598 c_AST = astFactory.create(c); 5599 astFactory.makeASTRoot(currentAST, c_AST); 5600 match(COLON); 5601 if ( inputState.guessing==0 ) { 5602 c_AST.setType(LABELED_STAT); 5603 } 5604 statement(); 5605 astFactory.addASTChild(currentAST, returnAST); 5606 traditionalStatement_AST = (AST)currentAST.root; 5607 } 5608 else if ((LA(1)==LITERAL_synchronized) && (LA(2)==LPAREN)) { 5609 AST tmp151_AST = null; 5610 tmp151_AST = astFactory.create(LT(1)); 5611 astFactory.makeASTRoot(currentAST, tmp151_AST); 5612 match(LITERAL_synchronized); 5613 AST tmp152_AST = null; 5614 tmp152_AST = astFactory.create(LT(1)); 5615 astFactory.addASTChild(currentAST, tmp152_AST); 5616 match(LPAREN); 5617 expression(); 5618 astFactory.addASTChild(currentAST, returnAST); 5619 AST tmp153_AST = null; 5620 tmp153_AST = astFactory.create(LT(1)); 5621 astFactory.addASTChild(currentAST, tmp153_AST); 5622 match(RPAREN); 5623 compoundStatement(); 5624 astFactory.addASTChild(currentAST, returnAST); 5625 traditionalStatement_AST = (AST)currentAST.root; 5626 } 5627 else { 5628 throw new NoViableAltException(LT(1), getFilename()); 5629 } 5630 }} 5631 returnAST = traditionalStatement_AST; 5632 } 5633 5634 public final void assertStatement() throws RecognitionException, TokenStreamException { 5635 5636 returnAST = null; 5637 ASTPair currentAST = new ASTPair(); 5638 AST assertStatement_AST = null; 5639 5640 AST tmp154_AST = null; 5641 tmp154_AST = astFactory.create(LT(1)); 5642 astFactory.makeASTRoot(currentAST, tmp154_AST); 5643 match(ASSERT); 5644 expression(); 5645 astFactory.addASTChild(currentAST, returnAST); 5646 { 5647 switch ( LA(1)) { 5648 case COLON: 5649 { 5650 AST tmp155_AST = null; 5651 tmp155_AST = astFactory.create(LT(1)); 5652 astFactory.addASTChild(currentAST, tmp155_AST); 5653 match(COLON); 5654 expression(); 5655 astFactory.addASTChild(currentAST, returnAST); 5656 break; 5657 } 5658 case SEMI: 5659 { 5660 break; 5661 } 5662 default: 5663 { 5664 throw new NoViableAltException(LT(1), getFilename()); 5665 } 5666 } 5667 } 5668 AST tmp156_AST = null; 5669 tmp156_AST = astFactory.create(LT(1)); 5670 astFactory.addASTChild(currentAST, tmp156_AST); 5671 match(SEMI); 5672 assertStatement_AST = (AST)currentAST.root; 5673 returnAST = assertStatement_AST; 5674 } 5675 5676 public final void elseStatement() throws RecognitionException, TokenStreamException { 5677 5678 returnAST = null; 5679 ASTPair currentAST = new ASTPair(); 5680 AST elseStatement_AST = null; 5681 5682 AST tmp157_AST = null; 5683 tmp157_AST = astFactory.create(LT(1)); 5684 astFactory.makeASTRoot(currentAST, tmp157_AST); 5685 match(LITERAL_else); 5686 statement(); 5687 astFactory.addASTChild(currentAST, returnAST); 5688 elseStatement_AST = (AST)currentAST.root; 5689 returnAST = elseStatement_AST; 5690 } 5691 5692 public final void forStatement() throws RecognitionException, TokenStreamException { 5693 5694 returnAST = null; 5695 ASTPair currentAST = new ASTPair(); 5696 AST forStatement_AST = null; 5697 Token f = null; 5698 AST f_AST = null; 5699 5700 f = LT(1); 5701 f_AST = astFactory.create(f); 5702 astFactory.makeASTRoot(currentAST, f_AST); 5703 match(LITERAL_for); 5704 AST tmp158_AST = null; 5705 tmp158_AST = astFactory.create(LT(1)); 5706 astFactory.addASTChild(currentAST, tmp158_AST); 5707 match(LPAREN); 5708 { 5709 boolean synPredMatched239 = false; 5710 if (((_tokenSet_59.member(LA(1))) && (_tokenSet_60.member(LA(2))))) { 5711 int _m239 = mark(); 5712 synPredMatched239 = true; 5713 inputState.guessing++; 5714 try { 5715 { 5716 forInit(); 5717 match(SEMI); 5718 } 5719 } 5720 catch (RecognitionException pe) { 5721 synPredMatched239 = false; 5722 } 5723 rewind(_m239); 5724inputState.guessing--; 5725 } 5726 if ( synPredMatched239 ) { 5727 traditionalForClause(); 5728 astFactory.addASTChild(currentAST, returnAST); 5729 } 5730 else if ((_tokenSet_54.member(LA(1))) && (_tokenSet_55.member(LA(2)))) { 5731 forEachClause(); 5732 astFactory.addASTChild(currentAST, returnAST); 5733 } 5734 else { 5735 throw new NoViableAltException(LT(1), getFilename()); 5736 } 5737 5738 } 5739 AST tmp159_AST = null; 5740 tmp159_AST = astFactory.create(LT(1)); 5741 astFactory.addASTChild(currentAST, tmp159_AST); 5742 match(RPAREN); 5743 statement(); 5744 astFactory.addASTChild(currentAST, returnAST); 5745 forStatement_AST = (AST)currentAST.root; 5746 returnAST = forStatement_AST; 5747 } 5748 5749 public final void casesGroup() throws RecognitionException, TokenStreamException { 5750 5751 returnAST = null; 5752 ASTPair currentAST = new ASTPair(); 5753 AST casesGroup_AST = null; 5754 5755 { 5756 int _cnt246=0; 5757 _loop246: 5758 do { 5759 if ((LA(1)==LITERAL_case||LA(1)==LITERAL_default) && (_tokenSet_61.member(LA(2)))) { 5760 aCase(); 5761 astFactory.addASTChild(currentAST, returnAST); 5762 } 5763 else { 5764 if ( _cnt246>=1 ) { break _loop246; } else {throw new NoViableAltException(LT(1), getFilename());} 5765 } 5766 5767 _cnt246++; 5768 } while (true); 5769 } 5770 { 5771 if ((_tokenSet_39.member(LA(1))) && (_tokenSet_62.member(LA(2)))) { 5772 caseSList(); 5773 astFactory.addASTChild(currentAST, returnAST); 5774 } 5775 else if ((_tokenSet_63.member(LA(1))) && (_tokenSet_52.member(LA(2)))) { 5776 } 5777 else { 5778 throw new NoViableAltException(LT(1), getFilename()); 5779 } 5780 5781 } 5782 if ( inputState.guessing==0 ) { 5783 casesGroup_AST = (AST)currentAST.root; 5784 casesGroup_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(CASE_GROUP,"CASE_GROUP")).add(casesGroup_AST)); 5785 currentAST.root = casesGroup_AST; 5786 currentAST.child = casesGroup_AST!=null &&casesGroup_AST.getFirstChild()!=null ? 5787 casesGroup_AST.getFirstChild() : casesGroup_AST; 5788 currentAST.advanceChildToEnd(); 5789 } 5790 casesGroup_AST = (AST)currentAST.root; 5791 returnAST = casesGroup_AST; 5792 } 5793 5794 public final void tryBlock() throws RecognitionException, TokenStreamException { 5795 5796 returnAST = null; 5797 ASTPair currentAST = new ASTPair(); 5798 AST tryBlock_AST = null; 5799 5800 AST tmp160_AST = null; 5801 tmp160_AST = astFactory.create(LT(1)); 5802 astFactory.makeASTRoot(currentAST, tmp160_AST); 5803 match(LITERAL_try); 5804 { 5805 switch ( LA(1)) { 5806 case LPAREN: 5807 { 5808 resourceSpecification(); 5809 astFactory.addASTChild(currentAST, returnAST); 5810 break; 5811 } 5812 case LCURLY: 5813 { 5814 break; 5815 } 5816 default: 5817 { 5818 throw new NoViableAltException(LT(1), getFilename()); 5819 } 5820 } 5821 } 5822 compoundStatement(); 5823 astFactory.addASTChild(currentAST, returnAST); 5824 { 5825 _loop264: 5826 do { 5827 if ((LA(1)==LITERAL_catch)) { 5828 handler(); 5829 astFactory.addASTChild(currentAST, returnAST); 5830 } 5831 else { 5832 break _loop264; 5833 } 5834 5835 } while (true); 5836 } 5837 { 5838 switch ( LA(1)) { 5839 case LITERAL_finally: 5840 { 5841 finallyHandler(); 5842 astFactory.addASTChild(currentAST, returnAST); 5843 break; 5844 } 5845 case FINAL: 5846 case ABSTRACT: 5847 case STRICTFP: 5848 case SEMI: 5849 case LITERAL_void: 5850 case LITERAL_boolean: 5851 case LITERAL_byte: 5852 case LITERAL_char: 5853 case LITERAL_short: 5854 case LITERAL_int: 5855 case LITERAL_float: 5856 case LITERAL_long: 5857 case LITERAL_double: 5858 case IDENT: 5859 case STAR: 5860 case LITERAL_private: 5861 case LITERAL_public: 5862 case LITERAL_protected: 5863 case LITERAL_static: 5864 case LITERAL_transient: 5865 case LITERAL_native: 5866 case LITERAL_synchronized: 5867 case LITERAL_volatile: 5868 case LITERAL_class: 5869 case LCURLY: 5870 case RCURLY: 5871 case LPAREN: 5872 case RPAREN: 5873 case LITERAL_this: 5874 case LITERAL_super: 5875 case COLON: 5876 case LITERAL_if: 5877 case LITERAL_while: 5878 case LITERAL_do: 5879 case LITERAL_break: 5880 case LITERAL_continue: 5881 case LITERAL_return: 5882 case LITERAL_switch: 5883 case LITERAL_throw: 5884 case LITERAL_for: 5885 case LITERAL_else: 5886 case LITERAL_case: 5887 case LITERAL_default: 5888 case LITERAL_try: 5889 case LT: 5890 case GT: 5891 case LE: 5892 case GE: 5893 case LITERAL_instanceof: 5894 case SL: 5895 case SR: 5896 case BSR: 5897 case PLUS: 5898 case MINUS: 5899 case DIV: 5900 case MOD: 5901 case INC: 5902 case DEC: 5903 case BNOT: 5904 case LNOT: 5905 case LITERAL_true: 5906 case LITERAL_false: 5907 case LITERAL_null: 5908 case LITERAL_new: 5909 case NUM_INT: 5910 case CHAR_LITERAL: 5911 case STRING_LITERAL: 5912 case NUM_FLOAT: 5913 case NUM_LONG: 5914 case NUM_DOUBLE: 5915 case ASSERT: 5916 case AT: 5917 { 5918 break; 5919 } 5920 default: 5921 { 5922 throw new NoViableAltException(LT(1), getFilename()); 5923 } 5924 } 5925 } 5926 tryBlock_AST = (AST)currentAST.root; 5927 returnAST = tryBlock_AST; 5928 } 5929 5930 public final void forInit() throws RecognitionException, TokenStreamException { 5931 5932 returnAST = null; 5933 ASTPair currentAST = new ASTPair(); 5934 AST forInit_AST = null; 5935 5936 { 5937 boolean synPredMatched256 = false; 5938 if (((_tokenSet_54.member(LA(1))) && (_tokenSet_55.member(LA(2))))) { 5939 int _m256 = mark(); 5940 synPredMatched256 = true; 5941 inputState.guessing++; 5942 try { 5943 { 5944 declaration(); 5945 } 5946 } 5947 catch (RecognitionException pe) { 5948 synPredMatched256 = false; 5949 } 5950 rewind(_m256); 5951inputState.guessing--; 5952 } 5953 if ( synPredMatched256 ) { 5954 declaration(); 5955 astFactory.addASTChild(currentAST, returnAST); 5956 } 5957 else if ((_tokenSet_14.member(LA(1))) && (_tokenSet_64.member(LA(2)))) { 5958 expressionList(); 5959 astFactory.addASTChild(currentAST, returnAST); 5960 } 5961 else if ((LA(1)==SEMI)) { 5962 } 5963 else { 5964 throw new NoViableAltException(LT(1), getFilename()); 5965 } 5966 5967 } 5968 if ( inputState.guessing==0 ) { 5969 forInit_AST = (AST)currentAST.root; 5970 forInit_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(FOR_INIT,"FOR_INIT")).add(forInit_AST)); 5971 currentAST.root = forInit_AST; 5972 currentAST.child = forInit_AST!=null &&forInit_AST.getFirstChild()!=null ? 5973 forInit_AST.getFirstChild() : forInit_AST; 5974 currentAST.advanceChildToEnd(); 5975 } 5976 forInit_AST = (AST)currentAST.root; 5977 returnAST = forInit_AST; 5978 } 5979 5980 public final void traditionalForClause() throws RecognitionException, TokenStreamException { 5981 5982 returnAST = null; 5983 ASTPair currentAST = new ASTPair(); 5984 AST traditionalForClause_AST = null; 5985 5986 forInit(); 5987 astFactory.addASTChild(currentAST, returnAST); 5988 AST tmp161_AST = null; 5989 tmp161_AST = astFactory.create(LT(1)); 5990 astFactory.addASTChild(currentAST, tmp161_AST); 5991 match(SEMI); 5992 forCond(); 5993 astFactory.addASTChild(currentAST, returnAST); 5994 AST tmp162_AST = null; 5995 tmp162_AST = astFactory.create(LT(1)); 5996 astFactory.addASTChild(currentAST, tmp162_AST); 5997 match(SEMI); 5998 forIter(); 5999 astFactory.addASTChild(currentAST, returnAST); 6000 traditionalForClause_AST = (AST)currentAST.root; 6001 returnAST = traditionalForClause_AST; 6002 } 6003 6004 public final void forEachClause() throws RecognitionException, TokenStreamException { 6005 6006 returnAST = null; 6007 ASTPair currentAST = new ASTPair(); 6008 AST forEachClause_AST = null; 6009 6010 forEachDeclarator(); 6011 astFactory.addASTChild(currentAST, returnAST); 6012 AST tmp163_AST = null; 6013 tmp163_AST = astFactory.create(LT(1)); 6014 astFactory.addASTChild(currentAST, tmp163_AST); 6015 match(COLON); 6016 expression(); 6017 astFactory.addASTChild(currentAST, returnAST); 6018 if ( inputState.guessing==0 ) { 6019 forEachClause_AST = (AST)currentAST.root; 6020 forEachClause_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(FOR_EACH_CLAUSE,"FOR_EACH_CLAUSE")).add(forEachClause_AST)); 6021 currentAST.root = forEachClause_AST; 6022 currentAST.child = forEachClause_AST!=null &&forEachClause_AST.getFirstChild()!=null ? 6023 forEachClause_AST.getFirstChild() : forEachClause_AST; 6024 currentAST.advanceChildToEnd(); 6025 } 6026 forEachClause_AST = (AST)currentAST.root; 6027 returnAST = forEachClause_AST; 6028 } 6029 6030 public final void forCond() throws RecognitionException, TokenStreamException { 6031 6032 returnAST = null; 6033 ASTPair currentAST = new ASTPair(); 6034 AST forCond_AST = null; 6035 6036 { 6037 switch ( LA(1)) { 6038 case LITERAL_void: 6039 case LITERAL_boolean: 6040 case LITERAL_byte: 6041 case LITERAL_char: 6042 case LITERAL_short: 6043 case LITERAL_int: 6044 case LITERAL_float: 6045 case LITERAL_long: 6046 case LITERAL_double: 6047 case IDENT: 6048 case LPAREN: 6049 case LITERAL_this: 6050 case LITERAL_super: 6051 case PLUS: 6052 case MINUS: 6053 case INC: 6054 case DEC: 6055 case BNOT: 6056 case LNOT: 6057 case LITERAL_true: 6058 case LITERAL_false: 6059 case LITERAL_null: 6060 case LITERAL_new: 6061 case NUM_INT: 6062 case CHAR_LITERAL: 6063 case STRING_LITERAL: 6064 case NUM_FLOAT: 6065 case NUM_LONG: 6066 case NUM_DOUBLE: 6067 case AT: 6068 { 6069 expression(); 6070 astFactory.addASTChild(currentAST, returnAST); 6071 break; 6072 } 6073 case SEMI: 6074 { 6075 break; 6076 } 6077 default: 6078 { 6079 throw new NoViableAltException(LT(1), getFilename()); 6080 } 6081 } 6082 } 6083 if ( inputState.guessing==0 ) { 6084 forCond_AST = (AST)currentAST.root; 6085 forCond_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(FOR_CONDITION,"FOR_CONDITION")).add(forCond_AST)); 6086 currentAST.root = forCond_AST; 6087 currentAST.child = forCond_AST!=null &&forCond_AST.getFirstChild()!=null ? 6088 forCond_AST.getFirstChild() : forCond_AST; 6089 currentAST.advanceChildToEnd(); 6090 } 6091 forCond_AST = (AST)currentAST.root; 6092 returnAST = forCond_AST; 6093 } 6094 6095 public final void forIter() throws RecognitionException, TokenStreamException { 6096 6097 returnAST = null; 6098 ASTPair currentAST = new ASTPair(); 6099 AST forIter_AST = null; 6100 6101 { 6102 switch ( LA(1)) { 6103 case LITERAL_void: 6104 case LITERAL_boolean: 6105 case LITERAL_byte: 6106 case LITERAL_char: 6107 case LITERAL_short: 6108 case LITERAL_int: 6109 case LITERAL_float: 6110 case LITERAL_long: 6111 case LITERAL_double: 6112 case IDENT: 6113 case LPAREN: 6114 case LITERAL_this: 6115 case LITERAL_super: 6116 case PLUS: 6117 case MINUS: 6118 case INC: 6119 case DEC: 6120 case BNOT: 6121 case LNOT: 6122 case LITERAL_true: 6123 case LITERAL_false: 6124 case LITERAL_null: 6125 case LITERAL_new: 6126 case NUM_INT: 6127 case CHAR_LITERAL: 6128 case STRING_LITERAL: 6129 case NUM_FLOAT: 6130 case NUM_LONG: 6131 case NUM_DOUBLE: 6132 case AT: 6133 { 6134 expressionList(); 6135 astFactory.addASTChild(currentAST, returnAST); 6136 break; 6137 } 6138 case RPAREN: 6139 { 6140 break; 6141 } 6142 default: 6143 { 6144 throw new NoViableAltException(LT(1), getFilename()); 6145 } 6146 } 6147 } 6148 if ( inputState.guessing==0 ) { 6149 forIter_AST = (AST)currentAST.root; 6150 forIter_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(FOR_ITERATOR,"FOR_ITERATOR")).add(forIter_AST)); 6151 currentAST.root = forIter_AST; 6152 currentAST.child = forIter_AST!=null &&forIter_AST.getFirstChild()!=null ? 6153 forIter_AST.getFirstChild() : forIter_AST; 6154 currentAST.advanceChildToEnd(); 6155 } 6156 forIter_AST = (AST)currentAST.root; 6157 returnAST = forIter_AST; 6158 } 6159 6160 public final void forEachDeclarator() throws RecognitionException, TokenStreamException { 6161 6162 returnAST = null; 6163 ASTPair currentAST = new ASTPair(); 6164 AST forEachDeclarator_AST = null; 6165 AST m_AST = null; 6166 AST t_AST = null; 6167 Token id = null; 6168 AST id_AST = null; 6169 AST d_AST = null; 6170 6171 modifiers(); 6172 m_AST = (AST)returnAST; 6173 typeSpec(false); 6174 t_AST = (AST)returnAST; 6175 id = LT(1); 6176 id_AST = astFactory.create(id); 6177 match(IDENT); 6178 declaratorBrackets(t_AST); 6179 d_AST = (AST)returnAST; 6180 if ( inputState.guessing==0 ) { 6181 forEachDeclarator_AST = (AST)currentAST.root; 6182 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)); 6183 currentAST.root = forEachDeclarator_AST; 6184 currentAST.child = forEachDeclarator_AST!=null &&forEachDeclarator_AST.getFirstChild()!=null ? 6185 forEachDeclarator_AST.getFirstChild() : forEachDeclarator_AST; 6186 currentAST.advanceChildToEnd(); 6187 } 6188 returnAST = forEachDeclarator_AST; 6189 } 6190 6191 public final void aCase() throws RecognitionException, TokenStreamException { 6192 6193 returnAST = null; 6194 ASTPair currentAST = new ASTPair(); 6195 AST aCase_AST = null; 6196 6197 { 6198 switch ( LA(1)) { 6199 case LITERAL_case: 6200 { 6201 AST tmp164_AST = null; 6202 tmp164_AST = astFactory.create(LT(1)); 6203 astFactory.makeASTRoot(currentAST, tmp164_AST); 6204 match(LITERAL_case); 6205 expression(); 6206 astFactory.addASTChild(currentAST, returnAST); 6207 break; 6208 } 6209 case LITERAL_default: 6210 { 6211 AST tmp165_AST = null; 6212 tmp165_AST = astFactory.create(LT(1)); 6213 astFactory.makeASTRoot(currentAST, tmp165_AST); 6214 match(LITERAL_default); 6215 break; 6216 } 6217 default: 6218 { 6219 throw new NoViableAltException(LT(1), getFilename()); 6220 } 6221 } 6222 } 6223 AST tmp166_AST = null; 6224 tmp166_AST = astFactory.create(LT(1)); 6225 astFactory.addASTChild(currentAST, tmp166_AST); 6226 match(COLON); 6227 aCase_AST = (AST)currentAST.root; 6228 returnAST = aCase_AST; 6229 } 6230 6231 public final void caseSList() throws RecognitionException, TokenStreamException { 6232 6233 returnAST = null; 6234 ASTPair currentAST = new ASTPair(); 6235 AST caseSList_AST = null; 6236 6237 { 6238 int _cnt252=0; 6239 _loop252: 6240 do { 6241 if (((_tokenSet_39.member(LA(1))) && (_tokenSet_62.member(LA(2))))&&(LA(1)!=LITERAL_default)) { 6242 statement(); 6243 astFactory.addASTChild(currentAST, returnAST); 6244 } 6245 else { 6246 if ( _cnt252>=1 ) { break _loop252; } else {throw new NoViableAltException(LT(1), getFilename());} 6247 } 6248 6249 _cnt252++; 6250 } while (true); 6251 } 6252 if ( inputState.guessing==0 ) { 6253 caseSList_AST = (AST)currentAST.root; 6254 caseSList_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(SLIST,"SLIST")).add(caseSList_AST)); 6255 currentAST.root = caseSList_AST; 6256 currentAST.child = caseSList_AST!=null &&caseSList_AST.getFirstChild()!=null ? 6257 caseSList_AST.getFirstChild() : caseSList_AST; 6258 currentAST.advanceChildToEnd(); 6259 } 6260 caseSList_AST = (AST)currentAST.root; 6261 returnAST = caseSList_AST; 6262 } 6263 6264 public final void expressionList() throws RecognitionException, TokenStreamException { 6265 6266 returnAST = null; 6267 ASTPair currentAST = new ASTPair(); 6268 AST expressionList_AST = null; 6269 6270 expression(); 6271 astFactory.addASTChild(currentAST, returnAST); 6272 { 6273 _loop280: 6274 do { 6275 if ((LA(1)==COMMA)) { 6276 AST tmp167_AST = null; 6277 tmp167_AST = astFactory.create(LT(1)); 6278 astFactory.addASTChild(currentAST, tmp167_AST); 6279 match(COMMA); 6280 expression(); 6281 astFactory.addASTChild(currentAST, returnAST); 6282 } 6283 else { 6284 break _loop280; 6285 } 6286 6287 } while (true); 6288 } 6289 if ( inputState.guessing==0 ) { 6290 expressionList_AST = (AST)currentAST.root; 6291 expressionList_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(ELIST,"ELIST")).add(expressionList_AST)); 6292 currentAST.root = expressionList_AST; 6293 currentAST.child = expressionList_AST!=null &&expressionList_AST.getFirstChild()!=null ? 6294 expressionList_AST.getFirstChild() : expressionList_AST; 6295 currentAST.advanceChildToEnd(); 6296 } 6297 expressionList_AST = (AST)currentAST.root; 6298 returnAST = expressionList_AST; 6299 } 6300 6301 public final void resourceSpecification() throws RecognitionException, TokenStreamException { 6302 6303 returnAST = null; 6304 ASTPair currentAST = new ASTPair(); 6305 AST resourceSpecification_AST = null; 6306 6307 AST tmp168_AST = null; 6308 tmp168_AST = astFactory.create(LT(1)); 6309 astFactory.addASTChild(currentAST, tmp168_AST); 6310 match(LPAREN); 6311 resources(); 6312 astFactory.addASTChild(currentAST, returnAST); 6313 { 6314 switch ( LA(1)) { 6315 case SEMI: 6316 { 6317 AST tmp169_AST = null; 6318 tmp169_AST = astFactory.create(LT(1)); 6319 astFactory.addASTChild(currentAST, tmp169_AST); 6320 match(SEMI); 6321 break; 6322 } 6323 case RPAREN: 6324 { 6325 break; 6326 } 6327 default: 6328 { 6329 throw new NoViableAltException(LT(1), getFilename()); 6330 } 6331 } 6332 } 6333 AST tmp170_AST = null; 6334 tmp170_AST = astFactory.create(LT(1)); 6335 astFactory.addASTChild(currentAST, tmp170_AST); 6336 match(RPAREN); 6337 if ( inputState.guessing==0 ) { 6338 resourceSpecification_AST = (AST)currentAST.root; 6339 resourceSpecification_AST = 6340 (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(RESOURCE_SPECIFICATION,"RESOURCE_SPECIFICATION")).add(resourceSpecification_AST)); 6341 currentAST.root = resourceSpecification_AST; 6342 currentAST.child = resourceSpecification_AST!=null &&resourceSpecification_AST.getFirstChild()!=null ? 6343 resourceSpecification_AST.getFirstChild() : resourceSpecification_AST; 6344 currentAST.advanceChildToEnd(); 6345 } 6346 resourceSpecification_AST = (AST)currentAST.root; 6347 returnAST = resourceSpecification_AST; 6348 } 6349 6350 public final void handler() throws RecognitionException, TokenStreamException { 6351 6352 returnAST = null; 6353 ASTPair currentAST = new ASTPair(); 6354 AST handler_AST = null; 6355 6356 AST tmp171_AST = null; 6357 tmp171_AST = astFactory.create(LT(1)); 6358 astFactory.makeASTRoot(currentAST, tmp171_AST); 6359 match(LITERAL_catch); 6360 AST tmp172_AST = null; 6361 tmp172_AST = astFactory.create(LT(1)); 6362 astFactory.addASTChild(currentAST, tmp172_AST); 6363 match(LPAREN); 6364 catchParameterDeclaration(); 6365 astFactory.addASTChild(currentAST, returnAST); 6366 AST tmp173_AST = null; 6367 tmp173_AST = astFactory.create(LT(1)); 6368 astFactory.addASTChild(currentAST, tmp173_AST); 6369 match(RPAREN); 6370 compoundStatement(); 6371 astFactory.addASTChild(currentAST, returnAST); 6372 handler_AST = (AST)currentAST.root; 6373 returnAST = handler_AST; 6374 } 6375 6376 public final void finallyHandler() throws RecognitionException, TokenStreamException { 6377 6378 returnAST = null; 6379 ASTPair currentAST = new ASTPair(); 6380 AST finallyHandler_AST = null; 6381 6382 AST tmp174_AST = null; 6383 tmp174_AST = astFactory.create(LT(1)); 6384 astFactory.makeASTRoot(currentAST, tmp174_AST); 6385 match(LITERAL_finally); 6386 compoundStatement(); 6387 astFactory.addASTChild(currentAST, returnAST); 6388 finallyHandler_AST = (AST)currentAST.root; 6389 returnAST = finallyHandler_AST; 6390 } 6391 6392 public final void resources() throws RecognitionException, TokenStreamException { 6393 6394 returnAST = null; 6395 ASTPair currentAST = new ASTPair(); 6396 AST resources_AST = null; 6397 6398 resource(); 6399 astFactory.addASTChild(currentAST, returnAST); 6400 { 6401 _loop270: 6402 do { 6403 if ((LA(1)==SEMI) && (_tokenSet_54.member(LA(2)))) { 6404 AST tmp175_AST = null; 6405 tmp175_AST = astFactory.create(LT(1)); 6406 astFactory.addASTChild(currentAST, tmp175_AST); 6407 match(SEMI); 6408 resource(); 6409 astFactory.addASTChild(currentAST, returnAST); 6410 } 6411 else { 6412 break _loop270; 6413 } 6414 6415 } while (true); 6416 } 6417 if ( inputState.guessing==0 ) { 6418 resources_AST = (AST)currentAST.root; 6419 resources_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(RESOURCES,"RESOURCES")).add(resources_AST)); 6420 currentAST.root = resources_AST; 6421 currentAST.child = resources_AST!=null &&resources_AST.getFirstChild()!=null ? 6422 resources_AST.getFirstChild() : resources_AST; 6423 currentAST.advanceChildToEnd(); 6424 } 6425 resources_AST = (AST)currentAST.root; 6426 returnAST = resources_AST; 6427 } 6428 6429 public final void resource() throws RecognitionException, TokenStreamException { 6430 6431 returnAST = null; 6432 ASTPair currentAST = new ASTPair(); 6433 AST resource_AST = null; 6434 6435 if ((LA(1)==IDENT) && (LA(2)==SEMI||LA(2)==RPAREN)) { 6436 AST tmp176_AST = null; 6437 tmp176_AST = astFactory.create(LT(1)); 6438 astFactory.addASTChild(currentAST, tmp176_AST); 6439 match(IDENT); 6440 resource_AST = (AST)currentAST.root; 6441 } 6442 else if ((_tokenSet_54.member(LA(1))) && (_tokenSet_55.member(LA(2)))) { 6443 modifiers(); 6444 astFactory.addASTChild(currentAST, returnAST); 6445 typeSpec(true); 6446 astFactory.addASTChild(currentAST, returnAST); 6447 AST tmp177_AST = null; 6448 tmp177_AST = astFactory.create(LT(1)); 6449 astFactory.addASTChild(currentAST, tmp177_AST); 6450 match(IDENT); 6451 resource_assign(); 6452 astFactory.addASTChild(currentAST, returnAST); 6453 if ( inputState.guessing==0 ) { 6454 resource_AST = (AST)currentAST.root; 6455 resource_AST = (AST)astFactory.make( (new ASTArray(2)).add(astFactory.create(RESOURCE,"RESOURCE")).add(resource_AST)); 6456 currentAST.root = resource_AST; 6457 currentAST.child = resource_AST!=null &&resource_AST.getFirstChild()!=null ? 6458 resource_AST.getFirstChild() : resource_AST; 6459 currentAST.advanceChildToEnd(); 6460 } 6461 resource_AST = (AST)currentAST.root; 6462 } 6463 else { 6464 throw new NoViableAltException(LT(1), getFilename()); 6465 } 6466 6467 returnAST = resource_AST; 6468 } 6469 6470 public final void resource_assign() throws RecognitionException, TokenStreamException { 6471 6472 returnAST = null; 6473 ASTPair currentAST = new ASTPair(); 6474 AST resource_assign_AST = null; 6475 6476 AST tmp178_AST = null; 6477 tmp178_AST = astFactory.create(LT(1)); 6478 astFactory.makeASTRoot(currentAST, tmp178_AST); 6479 match(ASSIGN); 6480 expression(); 6481 astFactory.addASTChild(currentAST, returnAST); 6482 resource_assign_AST = (AST)currentAST.root; 6483 returnAST = resource_assign_AST; 6484 } 6485 6486 public final void lambdaExpression() throws RecognitionException, TokenStreamException { 6487 6488 returnAST = null; 6489 ASTPair currentAST = new ASTPair(); 6490 AST lambdaExpression_AST = null; 6491 6492 lambdaParameters(); 6493 astFactory.addASTChild(currentAST, returnAST); 6494 AST tmp179_AST = null; 6495 tmp179_AST = astFactory.create(LT(1)); 6496 astFactory.makeASTRoot(currentAST, tmp179_AST); 6497 match(LAMBDA); 6498 lambdaBody(); 6499 astFactory.addASTChild(currentAST, returnAST); 6500 lambdaExpression_AST = (AST)currentAST.root; 6501 returnAST = lambdaExpression_AST; 6502 } 6503 6504 public final void assignmentExpression() throws RecognitionException, TokenStreamException { 6505 6506 returnAST = null; 6507 ASTPair currentAST = new ASTPair(); 6508 AST assignmentExpression_AST = null; 6509 6510 conditionalExpression(); 6511 astFactory.addASTChild(currentAST, returnAST); 6512 { 6513 switch ( LA(1)) { 6514 case ASSIGN: 6515 case PLUS_ASSIGN: 6516 case MINUS_ASSIGN: 6517 case STAR_ASSIGN: 6518 case DIV_ASSIGN: 6519 case MOD_ASSIGN: 6520 case SR_ASSIGN: 6521 case BSR_ASSIGN: 6522 case SL_ASSIGN: 6523 case BAND_ASSIGN: 6524 case BXOR_ASSIGN: 6525 case BOR_ASSIGN: 6526 { 6527 { 6528 switch ( LA(1)) { 6529 case ASSIGN: 6530 { 6531 AST tmp180_AST = null; 6532 tmp180_AST = astFactory.create(LT(1)); 6533 astFactory.makeASTRoot(currentAST, tmp180_AST); 6534 match(ASSIGN); 6535 break; 6536 } 6537 case PLUS_ASSIGN: 6538 { 6539 AST tmp181_AST = null; 6540 tmp181_AST = astFactory.create(LT(1)); 6541 astFactory.makeASTRoot(currentAST, tmp181_AST); 6542 match(PLUS_ASSIGN); 6543 break; 6544 } 6545 case MINUS_ASSIGN: 6546 { 6547 AST tmp182_AST = null; 6548 tmp182_AST = astFactory.create(LT(1)); 6549 astFactory.makeASTRoot(currentAST, tmp182_AST); 6550 match(MINUS_ASSIGN); 6551 break; 6552 } 6553 case STAR_ASSIGN: 6554 { 6555 AST tmp183_AST = null; 6556 tmp183_AST = astFactory.create(LT(1)); 6557 astFactory.makeASTRoot(currentAST, tmp183_AST); 6558 match(STAR_ASSIGN); 6559 break; 6560 } 6561 case DIV_ASSIGN: 6562 { 6563 AST tmp184_AST = null; 6564 tmp184_AST = astFactory.create(LT(1)); 6565 astFactory.makeASTRoot(currentAST, tmp184_AST); 6566 match(DIV_ASSIGN); 6567 break; 6568 } 6569 case MOD_ASSIGN: 6570 { 6571 AST tmp185_AST = null; 6572 tmp185_AST = astFactory.create(LT(1)); 6573 astFactory.makeASTRoot(currentAST, tmp185_AST); 6574 match(MOD_ASSIGN); 6575 break; 6576 } 6577 case SR_ASSIGN: 6578 { 6579 AST tmp186_AST = null; 6580 tmp186_AST = astFactory.create(LT(1)); 6581 astFactory.makeASTRoot(currentAST, tmp186_AST); 6582 match(SR_ASSIGN); 6583 break; 6584 } 6585 case BSR_ASSIGN: 6586 { 6587 AST tmp187_AST = null; 6588 tmp187_AST = astFactory.create(LT(1)); 6589 astFactory.makeASTRoot(currentAST, tmp187_AST); 6590 match(BSR_ASSIGN); 6591 break; 6592 } 6593 case SL_ASSIGN: 6594 { 6595 AST tmp188_AST = null; 6596 tmp188_AST = astFactory.create(LT(1)); 6597 astFactory.makeASTRoot(currentAST, tmp188_AST); 6598 match(SL_ASSIGN); 6599 break; 6600 } 6601 case BAND_ASSIGN: 6602 { 6603 AST tmp189_AST = null; 6604 tmp189_AST = astFactory.create(LT(1)); 6605 astFactory.makeASTRoot(currentAST, tmp189_AST); 6606 match(BAND_ASSIGN); 6607 break; 6608 } 6609 case BXOR_ASSIGN: 6610 { 6611 AST tmp190_AST = null; 6612 tmp190_AST = astFactory.create(LT(1)); 6613 astFactory.makeASTRoot(currentAST, tmp190_AST); 6614 match(BXOR_ASSIGN); 6615 break; 6616 } 6617 case BOR_ASSIGN: 6618 { 6619 AST tmp191_AST = null; 6620 tmp191_AST = astFactory.create(LT(1)); 6621 astFactory.makeASTRoot(currentAST, tmp191_AST); 6622 match(BOR_ASSIGN); 6623 break; 6624 } 6625 default: 6626 { 6627 throw new NoViableAltException(LT(1), getFilename()); 6628 } 6629 } 6630 } 6631 { 6632 boolean synPredMatched286 = false; 6633 if (((LA(1)==IDENT||LA(1)==LPAREN) && (_tokenSet_17.member(LA(2))))) { 6634 int _m286 = mark(); 6635 synPredMatched286 = true; 6636 inputState.guessing++; 6637 try { 6638 { 6639 lambdaExpression(); 6640 } 6641 } 6642 catch (RecognitionException pe) { 6643 synPredMatched286 = false; 6644 } 6645 rewind(_m286); 6646inputState.guessing--; 6647 } 6648 if ( synPredMatched286 ) { 6649 lambdaExpression(); 6650 astFactory.addASTChild(currentAST, returnAST); 6651 } 6652 else if ((_tokenSet_14.member(LA(1))) && (_tokenSet_19.member(LA(2)))) { 6653 assignmentExpression(); 6654 astFactory.addASTChild(currentAST, returnAST); 6655 } 6656 else { 6657 throw new NoViableAltException(LT(1), getFilename()); 6658 } 6659 6660 } 6661 break; 6662 } 6663 case FINAL: 6664 case ABSTRACT: 6665 case STRICTFP: 6666 case SEMI: 6667 case RBRACK: 6668 case LITERAL_void: 6669 case LITERAL_boolean: 6670 case LITERAL_byte: 6671 case LITERAL_char: 6672 case LITERAL_short: 6673 case LITERAL_int: 6674 case LITERAL_float: 6675 case LITERAL_long: 6676 case LITERAL_double: 6677 case IDENT: 6678 case STAR: 6679 case LITERAL_private: 6680 case LITERAL_public: 6681 case LITERAL_protected: 6682 case LITERAL_static: 6683 case LITERAL_transient: 6684 case LITERAL_native: 6685 case LITERAL_synchronized: 6686 case LITERAL_volatile: 6687 case LITERAL_class: 6688 case LITERAL_interface: 6689 case LCURLY: 6690 case RCURLY: 6691 case COMMA: 6692 case LPAREN: 6693 case RPAREN: 6694 case LITERAL_this: 6695 case LITERAL_super: 6696 case COLON: 6697 case LITERAL_if: 6698 case LITERAL_while: 6699 case LITERAL_do: 6700 case LITERAL_break: 6701 case LITERAL_continue: 6702 case LITERAL_return: 6703 case LITERAL_switch: 6704 case LITERAL_throw: 6705 case LITERAL_for: 6706 case LITERAL_else: 6707 case LITERAL_case: 6708 case LITERAL_default: 6709 case LITERAL_try: 6710 case LT: 6711 case GT: 6712 case LE: 6713 case GE: 6714 case LITERAL_instanceof: 6715 case SL: 6716 case SR: 6717 case BSR: 6718 case PLUS: 6719 case MINUS: 6720 case DIV: 6721 case MOD: 6722 case INC: 6723 case DEC: 6724 case BNOT: 6725 case LNOT: 6726 case LITERAL_true: 6727 case LITERAL_false: 6728 case LITERAL_null: 6729 case LITERAL_new: 6730 case NUM_INT: 6731 case CHAR_LITERAL: 6732 case STRING_LITERAL: 6733 case NUM_FLOAT: 6734 case NUM_LONG: 6735 case NUM_DOUBLE: 6736 case ASSERT: 6737 case ENUM: 6738 case AT: 6739 { 6740 break; 6741 } 6742 default: 6743 { 6744 throw new NoViableAltException(LT(1), getFilename()); 6745 } 6746 } 6747 } 6748 assignmentExpression_AST = (AST)currentAST.root; 6749 returnAST = assignmentExpression_AST; 6750 } 6751 6752 public final void logicalOrExpression() throws RecognitionException, TokenStreamException { 6753 6754 returnAST = null; 6755 ASTPair currentAST = new ASTPair(); 6756 AST logicalOrExpression_AST = null; 6757 6758 logicalAndExpression(); 6759 astFactory.addASTChild(currentAST, returnAST); 6760 { 6761 _loop297: 6762 do { 6763 if ((LA(1)==LOR)) { 6764 AST tmp192_AST = null; 6765 tmp192_AST = astFactory.create(LT(1)); 6766 astFactory.makeASTRoot(currentAST, tmp192_AST); 6767 match(LOR); 6768 logicalAndExpression(); 6769 astFactory.addASTChild(currentAST, returnAST); 6770 } 6771 else { 6772 break _loop297; 6773 } 6774 6775 } while (true); 6776 } 6777 logicalOrExpression_AST = (AST)currentAST.root; 6778 returnAST = logicalOrExpression_AST; 6779 } 6780 6781 public final void logicalAndExpression() throws RecognitionException, TokenStreamException { 6782 6783 returnAST = null; 6784 ASTPair currentAST = new ASTPair(); 6785 AST logicalAndExpression_AST = null; 6786 6787 inclusiveOrExpression(); 6788 astFactory.addASTChild(currentAST, returnAST); 6789 { 6790 _loop300: 6791 do { 6792 if ((LA(1)==LAND)) { 6793 AST tmp193_AST = null; 6794 tmp193_AST = astFactory.create(LT(1)); 6795 astFactory.makeASTRoot(currentAST, tmp193_AST); 6796 match(LAND); 6797 inclusiveOrExpression(); 6798 astFactory.addASTChild(currentAST, returnAST); 6799 } 6800 else { 6801 break _loop300; 6802 } 6803 6804 } while (true); 6805 } 6806 logicalAndExpression_AST = (AST)currentAST.root; 6807 returnAST = logicalAndExpression_AST; 6808 } 6809 6810 public final void inclusiveOrExpression() throws RecognitionException, TokenStreamException { 6811 6812 returnAST = null; 6813 ASTPair currentAST = new ASTPair(); 6814 AST inclusiveOrExpression_AST = null; 6815 6816 exclusiveOrExpression(); 6817 astFactory.addASTChild(currentAST, returnAST); 6818 { 6819 _loop303: 6820 do { 6821 if ((LA(1)==BOR)) { 6822 AST tmp194_AST = null; 6823 tmp194_AST = astFactory.create(LT(1)); 6824 astFactory.makeASTRoot(currentAST, tmp194_AST); 6825 match(BOR); 6826 exclusiveOrExpression(); 6827 astFactory.addASTChild(currentAST, returnAST); 6828 } 6829 else { 6830 break _loop303; 6831 } 6832 6833 } while (true); 6834 } 6835 inclusiveOrExpression_AST = (AST)currentAST.root; 6836 returnAST = inclusiveOrExpression_AST; 6837 } 6838 6839 public final void exclusiveOrExpression() throws RecognitionException, TokenStreamException { 6840 6841 returnAST = null; 6842 ASTPair currentAST = new ASTPair(); 6843 AST exclusiveOrExpression_AST = null; 6844 6845 andExpression(); 6846 astFactory.addASTChild(currentAST, returnAST); 6847 { 6848 _loop306: 6849 do { 6850 if ((LA(1)==BXOR)) { 6851 AST tmp195_AST = null; 6852 tmp195_AST = astFactory.create(LT(1)); 6853 astFactory.makeASTRoot(currentAST, tmp195_AST); 6854 match(BXOR); 6855 andExpression(); 6856 astFactory.addASTChild(currentAST, returnAST); 6857 } 6858 else { 6859 break _loop306; 6860 } 6861 6862 } while (true); 6863 } 6864 exclusiveOrExpression_AST = (AST)currentAST.root; 6865 returnAST = exclusiveOrExpression_AST; 6866 } 6867 6868 public final void andExpression() throws RecognitionException, TokenStreamException { 6869 6870 returnAST = null; 6871 ASTPair currentAST = new ASTPair(); 6872 AST andExpression_AST = null; 6873 6874 equalityExpression(); 6875 astFactory.addASTChild(currentAST, returnAST); 6876 { 6877 _loop309: 6878 do { 6879 if ((LA(1)==BAND)) { 6880 AST tmp196_AST = null; 6881 tmp196_AST = astFactory.create(LT(1)); 6882 astFactory.makeASTRoot(currentAST, tmp196_AST); 6883 match(BAND); 6884 equalityExpression(); 6885 astFactory.addASTChild(currentAST, returnAST); 6886 } 6887 else { 6888 break _loop309; 6889 } 6890 6891 } while (true); 6892 } 6893 andExpression_AST = (AST)currentAST.root; 6894 returnAST = andExpression_AST; 6895 } 6896 6897 public final void equalityExpression() throws RecognitionException, TokenStreamException { 6898 6899 returnAST = null; 6900 ASTPair currentAST = new ASTPair(); 6901 AST equalityExpression_AST = null; 6902 6903 relationalExpression(); 6904 astFactory.addASTChild(currentAST, returnAST); 6905 { 6906 _loop313: 6907 do { 6908 if ((LA(1)==NOT_EQUAL||LA(1)==EQUAL)) { 6909 { 6910 switch ( LA(1)) { 6911 case NOT_EQUAL: 6912 { 6913 AST tmp197_AST = null; 6914 tmp197_AST = astFactory.create(LT(1)); 6915 astFactory.makeASTRoot(currentAST, tmp197_AST); 6916 match(NOT_EQUAL); 6917 break; 6918 } 6919 case EQUAL: 6920 { 6921 AST tmp198_AST = null; 6922 tmp198_AST = astFactory.create(LT(1)); 6923 astFactory.makeASTRoot(currentAST, tmp198_AST); 6924 match(EQUAL); 6925 break; 6926 } 6927 default: 6928 { 6929 throw new NoViableAltException(LT(1), getFilename()); 6930 } 6931 } 6932 } 6933 relationalExpression(); 6934 astFactory.addASTChild(currentAST, returnAST); 6935 } 6936 else { 6937 break _loop313; 6938 } 6939 6940 } while (true); 6941 } 6942 equalityExpression_AST = (AST)currentAST.root; 6943 returnAST = equalityExpression_AST; 6944 } 6945 6946 public final void relationalExpression() throws RecognitionException, TokenStreamException { 6947 6948 returnAST = null; 6949 ASTPair currentAST = new ASTPair(); 6950 AST relationalExpression_AST = null; 6951 6952 shiftExpression(); 6953 astFactory.addASTChild(currentAST, returnAST); 6954 { 6955 if ((LA(1)==LITERAL_instanceof) && (_tokenSet_10.member(LA(2)))) { 6956 AST tmp199_AST = null; 6957 tmp199_AST = astFactory.create(LT(1)); 6958 astFactory.makeASTRoot(currentAST, tmp199_AST); 6959 match(LITERAL_instanceof); 6960 typeSpec(true); 6961 astFactory.addASTChild(currentAST, returnAST); 6962 } 6963 else if ((_tokenSet_65.member(LA(1))) && (_tokenSet_49.member(LA(2)))) { 6964 } 6965 else { 6966 throw new NoViableAltException(LT(1), getFilename()); 6967 } 6968 6969 } 6970 { 6971 { 6972 _loop319: 6973 do { 6974 if (((LA(1) >= LT && LA(1) <= GE)) && (_tokenSet_14.member(LA(2)))) { 6975 { 6976 switch ( LA(1)) { 6977 case LT: 6978 { 6979 AST tmp200_AST = null; 6980 tmp200_AST = astFactory.create(LT(1)); 6981 astFactory.makeASTRoot(currentAST, tmp200_AST); 6982 match(LT); 6983 break; 6984 } 6985 case GT: 6986 { 6987 AST tmp201_AST = null; 6988 tmp201_AST = astFactory.create(LT(1)); 6989 astFactory.makeASTRoot(currentAST, tmp201_AST); 6990 match(GT); 6991 break; 6992 } 6993 case LE: 6994 { 6995 AST tmp202_AST = null; 6996 tmp202_AST = astFactory.create(LT(1)); 6997 astFactory.makeASTRoot(currentAST, tmp202_AST); 6998 match(LE); 6999 break; 7000 } 7001 case GE: 7002 { 7003 AST tmp203_AST = null; 7004 tmp203_AST = astFactory.create(LT(1)); 7005 astFactory.makeASTRoot(currentAST, tmp203_AST); 7006 match(GE); 7007 break; 7008 } 7009 default: 7010 { 7011 throw new NoViableAltException(LT(1), getFilename()); 7012 } 7013 } 7014 } 7015 shiftExpression(); 7016 astFactory.addASTChild(currentAST, returnAST); 7017 } 7018 else { 7019 break _loop319; 7020 } 7021 7022 } while (true); 7023 } 7024 } 7025 relationalExpression_AST = (AST)currentAST.root; 7026 returnAST = relationalExpression_AST; 7027 } 7028 7029 public final void shiftExpression() throws RecognitionException, TokenStreamException { 7030 7031 returnAST = null; 7032 ASTPair currentAST = new ASTPair(); 7033 AST shiftExpression_AST = null; 7034 7035 additiveExpression(); 7036 astFactory.addASTChild(currentAST, returnAST); 7037 { 7038 _loop323: 7039 do { 7040 if (((LA(1) >= SL && LA(1) <= BSR)) && (_tokenSet_14.member(LA(2)))) { 7041 { 7042 switch ( LA(1)) { 7043 case SL: 7044 { 7045 AST tmp204_AST = null; 7046 tmp204_AST = astFactory.create(LT(1)); 7047 astFactory.makeASTRoot(currentAST, tmp204_AST); 7048 match(SL); 7049 break; 7050 } 7051 case SR: 7052 { 7053 AST tmp205_AST = null; 7054 tmp205_AST = astFactory.create(LT(1)); 7055 astFactory.makeASTRoot(currentAST, tmp205_AST); 7056 match(SR); 7057 break; 7058 } 7059 case BSR: 7060 { 7061 AST tmp206_AST = null; 7062 tmp206_AST = astFactory.create(LT(1)); 7063 astFactory.makeASTRoot(currentAST, tmp206_AST); 7064 match(BSR); 7065 break; 7066 } 7067 default: 7068 { 7069 throw new NoViableAltException(LT(1), getFilename()); 7070 } 7071 } 7072 } 7073 additiveExpression(); 7074 astFactory.addASTChild(currentAST, returnAST); 7075 } 7076 else { 7077 break _loop323; 7078 } 7079 7080 } while (true); 7081 } 7082 shiftExpression_AST = (AST)currentAST.root; 7083 returnAST = shiftExpression_AST; 7084 } 7085 7086 public final void additiveExpression() throws RecognitionException, TokenStreamException { 7087 7088 returnAST = null; 7089 ASTPair currentAST = new ASTPair(); 7090 AST additiveExpression_AST = null; 7091 7092 multiplicativeExpression(); 7093 astFactory.addASTChild(currentAST, returnAST); 7094 { 7095 _loop327: 7096 do { 7097 if ((LA(1)==PLUS||LA(1)==MINUS) && (_tokenSet_14.member(LA(2)))) { 7098 { 7099 switch ( LA(1)) { 7100 case PLUS: 7101 { 7102 AST tmp207_AST = null; 7103 tmp207_AST = astFactory.create(LT(1)); 7104 astFactory.makeASTRoot(currentAST, tmp207_AST); 7105 match(PLUS); 7106 break; 7107 } 7108 case MINUS: 7109 { 7110 AST tmp208_AST = null; 7111 tmp208_AST = astFactory.create(LT(1)); 7112 astFactory.makeASTRoot(currentAST, tmp208_AST); 7113 match(MINUS); 7114 break; 7115 } 7116 default: 7117 { 7118 throw new NoViableAltException(LT(1), getFilename()); 7119 } 7120 } 7121 } 7122 multiplicativeExpression(); 7123 astFactory.addASTChild(currentAST, returnAST); 7124 } 7125 else { 7126 break _loop327; 7127 } 7128 7129 } while (true); 7130 } 7131 additiveExpression_AST = (AST)currentAST.root; 7132 returnAST = additiveExpression_AST; 7133 } 7134 7135 public final void multiplicativeExpression() throws RecognitionException, TokenStreamException { 7136 7137 returnAST = null; 7138 ASTPair currentAST = new ASTPair(); 7139 AST multiplicativeExpression_AST = null; 7140 7141 unaryExpression(); 7142 astFactory.addASTChild(currentAST, returnAST); 7143 { 7144 _loop331: 7145 do { 7146 if ((_tokenSet_66.member(LA(1))) && (_tokenSet_14.member(LA(2)))) { 7147 { 7148 switch ( LA(1)) { 7149 case STAR: 7150 { 7151 AST tmp209_AST = null; 7152 tmp209_AST = astFactory.create(LT(1)); 7153 astFactory.makeASTRoot(currentAST, tmp209_AST); 7154 match(STAR); 7155 break; 7156 } 7157 case DIV: 7158 { 7159 AST tmp210_AST = null; 7160 tmp210_AST = astFactory.create(LT(1)); 7161 astFactory.makeASTRoot(currentAST, tmp210_AST); 7162 match(DIV); 7163 break; 7164 } 7165 case MOD: 7166 { 7167 AST tmp211_AST = null; 7168 tmp211_AST = astFactory.create(LT(1)); 7169 astFactory.makeASTRoot(currentAST, tmp211_AST); 7170 match(MOD); 7171 break; 7172 } 7173 default: 7174 { 7175 throw new NoViableAltException(LT(1), getFilename()); 7176 } 7177 } 7178 } 7179 unaryExpression(); 7180 astFactory.addASTChild(currentAST, returnAST); 7181 } 7182 else { 7183 break _loop331; 7184 } 7185 7186 } while (true); 7187 } 7188 multiplicativeExpression_AST = (AST)currentAST.root; 7189 returnAST = multiplicativeExpression_AST; 7190 } 7191 7192 public final void unaryExpression() throws RecognitionException, TokenStreamException { 7193 7194 returnAST = null; 7195 ASTPair currentAST = new ASTPair(); 7196 AST unaryExpression_AST = null; 7197 7198 switch ( LA(1)) { 7199 case INC: 7200 { 7201 AST tmp212_AST = null; 7202 tmp212_AST = astFactory.create(LT(1)); 7203 astFactory.makeASTRoot(currentAST, tmp212_AST); 7204 match(INC); 7205 unaryExpression(); 7206 astFactory.addASTChild(currentAST, returnAST); 7207 unaryExpression_AST = (AST)currentAST.root; 7208 break; 7209 } 7210 case DEC: 7211 { 7212 AST tmp213_AST = null; 7213 tmp213_AST = astFactory.create(LT(1)); 7214 astFactory.makeASTRoot(currentAST, tmp213_AST); 7215 match(DEC); 7216 unaryExpression(); 7217 astFactory.addASTChild(currentAST, returnAST); 7218 unaryExpression_AST = (AST)currentAST.root; 7219 break; 7220 } 7221 case MINUS: 7222 { 7223 AST tmp214_AST = null; 7224 tmp214_AST = astFactory.create(LT(1)); 7225 astFactory.makeASTRoot(currentAST, tmp214_AST); 7226 match(MINUS); 7227 if ( inputState.guessing==0 ) { 7228 tmp214_AST.setType(UNARY_MINUS); 7229 } 7230 unaryExpression(); 7231 astFactory.addASTChild(currentAST, returnAST); 7232 unaryExpression_AST = (AST)currentAST.root; 7233 break; 7234 } 7235 case PLUS: 7236 { 7237 AST tmp215_AST = null; 7238 tmp215_AST = astFactory.create(LT(1)); 7239 astFactory.makeASTRoot(currentAST, tmp215_AST); 7240 match(PLUS); 7241 if ( inputState.guessing==0 ) { 7242 tmp215_AST.setType(UNARY_PLUS); 7243 } 7244 unaryExpression(); 7245 astFactory.addASTChild(currentAST, returnAST); 7246 unaryExpression_AST = (AST)currentAST.root; 7247 break; 7248 } 7249 case LITERAL_void: 7250 case LITERAL_boolean: 7251 case LITERAL_byte: 7252 case LITERAL_char: 7253 case LITERAL_short: 7254 case LITERAL_int: 7255 case LITERAL_float: 7256 case LITERAL_long: 7257 case LITERAL_double: 7258 case IDENT: 7259 case LPAREN: 7260 case LITERAL_this: 7261 case LITERAL_super: 7262 case BNOT: 7263 case LNOT: 7264 case LITERAL_true: 7265 case LITERAL_false: 7266 case LITERAL_null: 7267 case LITERAL_new: 7268 case NUM_INT: 7269 case CHAR_LITERAL: 7270 case STRING_LITERAL: 7271 case NUM_FLOAT: 7272 case NUM_LONG: 7273 case NUM_DOUBLE: 7274 case AT: 7275 { 7276 unaryExpressionNotPlusMinus(); 7277 astFactory.addASTChild(currentAST, returnAST); 7278 unaryExpression_AST = (AST)currentAST.root; 7279 break; 7280 } 7281 default: 7282 { 7283 throw new NoViableAltException(LT(1), getFilename()); 7284 } 7285 } 7286 returnAST = unaryExpression_AST; 7287 } 7288 7289 public final void unaryExpressionNotPlusMinus() throws RecognitionException, TokenStreamException { 7290 7291 returnAST = null; 7292 ASTPair currentAST = new ASTPair(); 7293 AST unaryExpressionNotPlusMinus_AST = null; 7294 Token lpb = null; 7295 AST lpb_AST = null; 7296 Token lp = null; 7297 AST lp_AST = null; 7298 Token lpl = null; 7299 AST lpl_AST = null; 7300 7301 switch ( LA(1)) { 7302 case BNOT: 7303 { 7304 AST tmp216_AST = null; 7305 tmp216_AST = astFactory.create(LT(1)); 7306 astFactory.makeASTRoot(currentAST, tmp216_AST); 7307 match(BNOT); 7308 unaryExpression(); 7309 astFactory.addASTChild(currentAST, returnAST); 7310 unaryExpressionNotPlusMinus_AST = (AST)currentAST.root; 7311 break; 7312 } 7313 case LNOT: 7314 { 7315 AST tmp217_AST = null; 7316 tmp217_AST = astFactory.create(LT(1)); 7317 astFactory.makeASTRoot(currentAST, tmp217_AST); 7318 match(LNOT); 7319 unaryExpression(); 7320 astFactory.addASTChild(currentAST, returnAST); 7321 unaryExpressionNotPlusMinus_AST = (AST)currentAST.root; 7322 break; 7323 } 7324 case LITERAL_void: 7325 case LITERAL_boolean: 7326 case LITERAL_byte: 7327 case LITERAL_char: 7328 case LITERAL_short: 7329 case LITERAL_int: 7330 case LITERAL_float: 7331 case LITERAL_long: 7332 case LITERAL_double: 7333 case IDENT: 7334 case LPAREN: 7335 case LITERAL_this: 7336 case LITERAL_super: 7337 case LITERAL_true: 7338 case LITERAL_false: 7339 case LITERAL_null: 7340 case LITERAL_new: 7341 case NUM_INT: 7342 case CHAR_LITERAL: 7343 case STRING_LITERAL: 7344 case NUM_FLOAT: 7345 case NUM_LONG: 7346 case NUM_DOUBLE: 7347 case AT: 7348 { 7349 { 7350 boolean synPredMatched336 = false; 7351 if (((LA(1)==LPAREN) && ((LA(2) >= LITERAL_void && LA(2) <= LITERAL_double)))) { 7352 int _m336 = mark(); 7353 synPredMatched336 = true; 7354 inputState.guessing++; 7355 try { 7356 { 7357 match(LPAREN); 7358 builtInTypeSpec(true); 7359 match(RPAREN); 7360 unaryExpression(); 7361 } 7362 } 7363 catch (RecognitionException pe) { 7364 synPredMatched336 = false; 7365 } 7366 rewind(_m336); 7367inputState.guessing--; 7368 } 7369 if ( synPredMatched336 ) { 7370 lpb = LT(1); 7371 lpb_AST = astFactory.create(lpb); 7372 astFactory.makeASTRoot(currentAST, lpb_AST); 7373 match(LPAREN); 7374 if ( inputState.guessing==0 ) { 7375 lpb_AST.setType(TYPECAST); 7376 } 7377 builtInTypeSpec(true); 7378 astFactory.addASTChild(currentAST, returnAST); 7379 AST tmp218_AST = null; 7380 tmp218_AST = astFactory.create(LT(1)); 7381 astFactory.addASTChild(currentAST, tmp218_AST); 7382 match(RPAREN); 7383 unaryExpression(); 7384 astFactory.addASTChild(currentAST, returnAST); 7385 } 7386 else { 7387 boolean synPredMatched338 = false; 7388 if (((LA(1)==LPAREN) && (LA(2)==IDENT||LA(2)==AT))) { 7389 int _m338 = mark(); 7390 synPredMatched338 = true; 7391 inputState.guessing++; 7392 try { 7393 { 7394 match(LPAREN); 7395 typeCastParameters(); 7396 match(RPAREN); 7397 unaryExpressionNotPlusMinus(); 7398 } 7399 } 7400 catch (RecognitionException pe) { 7401 synPredMatched338 = false; 7402 } 7403 rewind(_m338); 7404inputState.guessing--; 7405 } 7406 if ( synPredMatched338 ) { 7407 lp = LT(1); 7408 lp_AST = astFactory.create(lp); 7409 astFactory.makeASTRoot(currentAST, lp_AST); 7410 match(LPAREN); 7411 if ( inputState.guessing==0 ) { 7412 lp_AST.setType(TYPECAST); 7413 } 7414 typeCastParameters(); 7415 astFactory.addASTChild(currentAST, returnAST); 7416 AST tmp219_AST = null; 7417 tmp219_AST = astFactory.create(LT(1)); 7418 astFactory.addASTChild(currentAST, tmp219_AST); 7419 match(RPAREN); 7420 unaryExpressionNotPlusMinus(); 7421 astFactory.addASTChild(currentAST, returnAST); 7422 } 7423 else { 7424 boolean synPredMatched340 = false; 7425 if (((LA(1)==LPAREN) && (LA(2)==IDENT||LA(2)==AT))) { 7426 int _m340 = mark(); 7427 synPredMatched340 = true; 7428 inputState.guessing++; 7429 try { 7430 { 7431 match(LPAREN); 7432 typeCastParameters(); 7433 match(RPAREN); 7434 lambdaExpression(); 7435 } 7436 } 7437 catch (RecognitionException pe) { 7438 synPredMatched340 = false; 7439 } 7440 rewind(_m340); 7441inputState.guessing--; 7442 } 7443 if ( synPredMatched340 ) { 7444 lpl = LT(1); 7445 lpl_AST = astFactory.create(lpl); 7446 astFactory.makeASTRoot(currentAST, lpl_AST); 7447 match(LPAREN); 7448 if ( inputState.guessing==0 ) { 7449 lpl_AST.setType(TYPECAST); 7450 } 7451 typeCastParameters(); 7452 astFactory.addASTChild(currentAST, returnAST); 7453 AST tmp220_AST = null; 7454 tmp220_AST = astFactory.create(LT(1)); 7455 astFactory.addASTChild(currentAST, tmp220_AST); 7456 match(RPAREN); 7457 lambdaExpression(); 7458 astFactory.addASTChild(currentAST, returnAST); 7459 } 7460 else if ((_tokenSet_46.member(LA(1))) && (_tokenSet_19.member(LA(2)))) { 7461 postfixExpression(); 7462 astFactory.addASTChild(currentAST, returnAST); 7463 } 7464 else { 7465 throw new NoViableAltException(LT(1), getFilename()); 7466 } 7467 }} 7468 } 7469 unaryExpressionNotPlusMinus_AST = (AST)currentAST.root; 7470 break; 7471 } 7472 default: 7473 { 7474 throw new NoViableAltException(LT(1), getFilename()); 7475 } 7476 } 7477 returnAST = unaryExpressionNotPlusMinus_AST; 7478 } 7479 7480 public final void typeCastParameters() throws RecognitionException, TokenStreamException { 7481 7482 returnAST = null; 7483 ASTPair currentAST = new ASTPair(); 7484 AST typeCastParameters_AST = null; 7485 Token b = null; 7486 AST b_AST = null; 7487 7488 classTypeSpec(true); 7489 astFactory.addASTChild(currentAST, returnAST); 7490 { 7491 _loop343: 7492 do { 7493 if ((LA(1)==BAND)) { 7494 b = LT(1); 7495 b_AST = astFactory.create(b); 7496 astFactory.addASTChild(currentAST, b_AST); 7497 match(BAND); 7498 if ( inputState.guessing==0 ) { 7499 b_AST.setType(TYPE_EXTENSION_AND); 7500 } 7501 classTypeSpec(true); 7502 astFactory.addASTChild(currentAST, returnAST); 7503 } 7504 else { 7505 break _loop343; 7506 } 7507 7508 } while (true); 7509 } 7510 typeCastParameters_AST = (AST)currentAST.root; 7511 returnAST = typeCastParameters_AST; 7512 } 7513 7514 public final void postfixExpression() throws RecognitionException, TokenStreamException { 7515 7516 returnAST = null; 7517 ASTPair currentAST = new ASTPair(); 7518 AST postfixExpression_AST = null; 7519 Token dc = null; 7520 AST dc_AST = null; 7521 Token lbc = null; 7522 AST lbc_AST = null; 7523 Token lb = null; 7524 AST lb_AST = null; 7525 Token lp = null; 7526 AST lp_AST = null; 7527 Token in = null; 7528 AST in_AST = null; 7529 Token de = null; 7530 AST de_AST = null; 7531 7532 primaryExpression(); 7533 astFactory.addASTChild(currentAST, returnAST); 7534 { 7535 _loop355: 7536 do { 7537 switch ( LA(1)) { 7538 case DOT: 7539 { 7540 AST tmp221_AST = null; 7541 tmp221_AST = astFactory.create(LT(1)); 7542 astFactory.makeASTRoot(currentAST, tmp221_AST); 7543 match(DOT); 7544 { 7545 switch ( LA(1)) { 7546 case IDENT: 7547 case LITERAL_this: 7548 case LITERAL_super: 7549 case LT: 7550 { 7551 { 7552 switch ( LA(1)) { 7553 case LT: 7554 { 7555 typeArguments(false); 7556 astFactory.addASTChild(currentAST, returnAST); 7557 break; 7558 } 7559 case IDENT: 7560 case LITERAL_this: 7561 case LITERAL_super: 7562 { 7563 break; 7564 } 7565 default: 7566 { 7567 throw new NoViableAltException(LT(1), getFilename()); 7568 } 7569 } 7570 } 7571 { 7572 switch ( LA(1)) { 7573 case IDENT: 7574 { 7575 AST tmp222_AST = null; 7576 tmp222_AST = astFactory.create(LT(1)); 7577 astFactory.addASTChild(currentAST, tmp222_AST); 7578 match(IDENT); 7579 break; 7580 } 7581 case LITERAL_this: 7582 { 7583 AST tmp223_AST = null; 7584 tmp223_AST = astFactory.create(LT(1)); 7585 astFactory.addASTChild(currentAST, tmp223_AST); 7586 match(LITERAL_this); 7587 break; 7588 } 7589 case LITERAL_super: 7590 { 7591 AST tmp224_AST = null; 7592 tmp224_AST = astFactory.create(LT(1)); 7593 astFactory.addASTChild(currentAST, tmp224_AST); 7594 match(LITERAL_super); 7595 break; 7596 } 7597 default: 7598 { 7599 throw new NoViableAltException(LT(1), getFilename()); 7600 } 7601 } 7602 } 7603 break; 7604 } 7605 case LITERAL_class: 7606 { 7607 AST tmp225_AST = null; 7608 tmp225_AST = astFactory.create(LT(1)); 7609 astFactory.addASTChild(currentAST, tmp225_AST); 7610 match(LITERAL_class); 7611 break; 7612 } 7613 case LITERAL_new: 7614 { 7615 newExpression(); 7616 astFactory.addASTChild(currentAST, returnAST); 7617 break; 7618 } 7619 default: 7620 { 7621 throw new NoViableAltException(LT(1), getFilename()); 7622 } 7623 } 7624 } 7625 break; 7626 } 7627 case DOUBLE_COLON: 7628 { 7629 dc = LT(1); 7630 dc_AST = astFactory.create(dc); 7631 astFactory.makeASTRoot(currentAST, dc_AST); 7632 match(DOUBLE_COLON); 7633 if ( inputState.guessing==0 ) { 7634 dc_AST.setType(METHOD_REF); 7635 } 7636 { 7637 { 7638 switch ( LA(1)) { 7639 case LT: 7640 { 7641 typeArguments(false); 7642 astFactory.addASTChild(currentAST, returnAST); 7643 break; 7644 } 7645 case IDENT: 7646 case LITERAL_new: 7647 { 7648 break; 7649 } 7650 default: 7651 { 7652 throw new NoViableAltException(LT(1), getFilename()); 7653 } 7654 } 7655 } 7656 { 7657 switch ( LA(1)) { 7658 case IDENT: 7659 { 7660 AST tmp226_AST = null; 7661 tmp226_AST = astFactory.create(LT(1)); 7662 astFactory.addASTChild(currentAST, tmp226_AST); 7663 match(IDENT); 7664 break; 7665 } 7666 case LITERAL_new: 7667 { 7668 AST tmp227_AST = null; 7669 tmp227_AST = astFactory.create(LT(1)); 7670 astFactory.addASTChild(currentAST, tmp227_AST); 7671 match(LITERAL_new); 7672 break; 7673 } 7674 default: 7675 { 7676 throw new NoViableAltException(LT(1), getFilename()); 7677 } 7678 } 7679 } 7680 } 7681 break; 7682 } 7683 default: 7684 if ((LA(1)==LBRACK) && (LA(2)==RBRACK)) { 7685 { 7686 int _cnt353=0; 7687 _loop353: 7688 do { 7689 if ((LA(1)==LBRACK) && (LA(2)==RBRACK)) { 7690 lbc = LT(1); 7691 lbc_AST = astFactory.create(lbc); 7692 astFactory.makeASTRoot(currentAST, lbc_AST); 7693 match(LBRACK); 7694 if ( inputState.guessing==0 ) { 7695 lbc_AST.setType(ARRAY_DECLARATOR); 7696 } 7697 AST tmp228_AST = null; 7698 tmp228_AST = astFactory.create(LT(1)); 7699 astFactory.addASTChild(currentAST, tmp228_AST); 7700 match(RBRACK); 7701 } 7702 else { 7703 if ( _cnt353>=1 ) { break _loop353; } else {throw new NoViableAltException(LT(1), getFilename());} 7704 } 7705 7706 _cnt353++; 7707 } while (true); 7708 } 7709 { 7710 if ((LA(1)==DOT) && (LA(2)==LITERAL_class)) { 7711 AST tmp229_AST = null; 7712 tmp229_AST = astFactory.create(LT(1)); 7713 astFactory.makeASTRoot(currentAST, tmp229_AST); 7714 match(DOT); 7715 AST tmp230_AST = null; 7716 tmp230_AST = astFactory.create(LT(1)); 7717 astFactory.addASTChild(currentAST, tmp230_AST); 7718 match(LITERAL_class); 7719 } 7720 else if ((_tokenSet_19.member(LA(1))) && (_tokenSet_49.member(LA(2)))) { 7721 } 7722 else { 7723 throw new NoViableAltException(LT(1), getFilename()); 7724 } 7725 7726 } 7727 } 7728 else if ((LA(1)==LBRACK) && (_tokenSet_14.member(LA(2)))) { 7729 lb = LT(1); 7730 lb_AST = astFactory.create(lb); 7731 astFactory.makeASTRoot(currentAST, lb_AST); 7732 match(LBRACK); 7733 if ( inputState.guessing==0 ) { 7734 lb_AST.setType(INDEX_OP); 7735 } 7736 expression(); 7737 astFactory.addASTChild(currentAST, returnAST); 7738 AST tmp231_AST = null; 7739 tmp231_AST = astFactory.create(LT(1)); 7740 astFactory.addASTChild(currentAST, tmp231_AST); 7741 match(RBRACK); 7742 } 7743 else if ((LA(1)==LPAREN) && (_tokenSet_67.member(LA(2)))) { 7744 lp = LT(1); 7745 lp_AST = astFactory.create(lp); 7746 astFactory.makeASTRoot(currentAST, lp_AST); 7747 match(LPAREN); 7748 if ( inputState.guessing==0 ) { 7749 lp_AST.setType(METHOD_CALL); 7750 } 7751 argList(); 7752 astFactory.addASTChild(currentAST, returnAST); 7753 AST tmp232_AST = null; 7754 tmp232_AST = astFactory.create(LT(1)); 7755 astFactory.addASTChild(currentAST, tmp232_AST); 7756 match(RPAREN); 7757 } 7758 else { 7759 break _loop355; 7760 } 7761 } 7762 } while (true); 7763 } 7764 { 7765 if ((LA(1)==INC) && (_tokenSet_65.member(LA(2)))) { 7766 in = LT(1); 7767 in_AST = astFactory.create(in); 7768 astFactory.makeASTRoot(currentAST, in_AST); 7769 match(INC); 7770 if ( inputState.guessing==0 ) { 7771 in_AST.setType(POST_INC); 7772 } 7773 } 7774 else if ((LA(1)==DEC) && (_tokenSet_65.member(LA(2)))) { 7775 de = LT(1); 7776 de_AST = astFactory.create(de); 7777 astFactory.makeASTRoot(currentAST, de_AST); 7778 match(DEC); 7779 if ( inputState.guessing==0 ) { 7780 de_AST.setType(POST_DEC); 7781 } 7782 } 7783 else if ((_tokenSet_65.member(LA(1))) && (_tokenSet_49.member(LA(2)))) { 7784 } 7785 else { 7786 throw new NoViableAltException(LT(1), getFilename()); 7787 } 7788 7789 } 7790 postfixExpression_AST = (AST)currentAST.root; 7791 returnAST = postfixExpression_AST; 7792 } 7793 7794/** object instantiation. 7795 * Trees are built as illustrated by the following input/tree pairs: 7796 * 7797 * new T() 7798 * 7799 * new 7800 * | 7801 * T -- ELIST 7802 * | 7803 * arg1 -- arg2 -- .. -- argn 7804 * 7805 * new int[] 7806 * 7807 * new 7808 * | 7809 * int -- ARRAY_DECLARATOR 7810 * 7811 * new int[] {1,2} 7812 * 7813 * new 7814 * | 7815 * int -- ARRAY_DECLARATOR -- ARRAY_INIT 7816 * | 7817 * EXPR -- EXPR 7818 * | | 7819 * 1 2 7820 * 7821 * new int[3] 7822 * new 7823 * | 7824 * int -- ARRAY_DECLARATOR 7825 * | 7826 * EXPR 7827 * | 7828 * 3 7829 * 7830 * new int[1][2] 7831 * 7832 * new 7833 * | 7834 * int -- ARRAY_DECLARATOR 7835 * | 7836 * ARRAY_DECLARATOR -- EXPR 7837 * | | 7838 * EXPR 1 7839 * | 7840 * 2 7841 * 7842 * 7843 * @throws RecognitionException if recognition problem occurs. 7844 * @throws TokenStreamException if problem occurs while generating a stream of tokens. 7845 */ 7846 public final void newExpression() throws RecognitionException, TokenStreamException { 7847 7848 returnAST = null; 7849 ASTPair currentAST = new ASTPair(); 7850 AST newExpression_AST = null; 7851 7852 AST tmp233_AST = null; 7853 tmp233_AST = astFactory.create(LT(1)); 7854 astFactory.makeASTRoot(currentAST, tmp233_AST); 7855 match(LITERAL_new); 7856 { 7857 switch ( LA(1)) { 7858 case LT: 7859 { 7860 typeArguments(false); 7861 astFactory.addASTChild(currentAST, returnAST); 7862 break; 7863 } 7864 case LITERAL_void: 7865 case LITERAL_boolean: 7866 case LITERAL_byte: 7867 case LITERAL_char: 7868 case LITERAL_short: 7869 case LITERAL_int: 7870 case LITERAL_float: 7871 case LITERAL_long: 7872 case LITERAL_double: 7873 case IDENT: 7874 case AT: 7875 { 7876 break; 7877 } 7878 default: 7879 { 7880 throw new NoViableAltException(LT(1), getFilename()); 7881 } 7882 } 7883 } 7884 type(); 7885 astFactory.addASTChild(currentAST, returnAST); 7886 { 7887 switch ( LA(1)) { 7888 case LPAREN: 7889 { 7890 AST tmp234_AST = null; 7891 tmp234_AST = astFactory.create(LT(1)); 7892 astFactory.addASTChild(currentAST, tmp234_AST); 7893 match(LPAREN); 7894 argList(); 7895 astFactory.addASTChild(currentAST, returnAST); 7896 AST tmp235_AST = null; 7897 tmp235_AST = astFactory.create(LT(1)); 7898 astFactory.addASTChild(currentAST, tmp235_AST); 7899 match(RPAREN); 7900 { 7901 if ((LA(1)==LCURLY) && (_tokenSet_31.member(LA(2)))) { 7902 classBlock(); 7903 astFactory.addASTChild(currentAST, returnAST); 7904 } 7905 else if ((_tokenSet_19.member(LA(1))) && (_tokenSet_49.member(LA(2)))) { 7906 } 7907 else { 7908 throw new NoViableAltException(LT(1), getFilename()); 7909 } 7910 7911 } 7912 break; 7913 } 7914 case LBRACK: 7915 case AT: 7916 { 7917 newArrayDeclarator(); 7918 astFactory.addASTChild(currentAST, returnAST); 7919 { 7920 if ((LA(1)==LCURLY) && (_tokenSet_68.member(LA(2)))) { 7921 arrayInitializer(); 7922 astFactory.addASTChild(currentAST, returnAST); 7923 } 7924 else if ((_tokenSet_19.member(LA(1))) && (_tokenSet_49.member(LA(2)))) { 7925 } 7926 else { 7927 throw new NoViableAltException(LT(1), getFilename()); 7928 } 7929 7930 } 7931 break; 7932 } 7933 default: 7934 { 7935 throw new NoViableAltException(LT(1), getFilename()); 7936 } 7937 } 7938 } 7939 newExpression_AST = (AST)currentAST.root; 7940 returnAST = newExpression_AST; 7941 } 7942 7943 public final void constant() throws RecognitionException, TokenStreamException { 7944 7945 returnAST = null; 7946 ASTPair currentAST = new ASTPair(); 7947 AST constant_AST = null; 7948 7949 switch ( LA(1)) { 7950 case NUM_INT: 7951 { 7952 AST tmp236_AST = null; 7953 tmp236_AST = astFactory.create(LT(1)); 7954 astFactory.addASTChild(currentAST, tmp236_AST); 7955 match(NUM_INT); 7956 constant_AST = (AST)currentAST.root; 7957 break; 7958 } 7959 case NUM_LONG: 7960 { 7961 AST tmp237_AST = null; 7962 tmp237_AST = astFactory.create(LT(1)); 7963 astFactory.addASTChild(currentAST, tmp237_AST); 7964 match(NUM_LONG); 7965 constant_AST = (AST)currentAST.root; 7966 break; 7967 } 7968 case NUM_FLOAT: 7969 { 7970 AST tmp238_AST = null; 7971 tmp238_AST = astFactory.create(LT(1)); 7972 astFactory.addASTChild(currentAST, tmp238_AST); 7973 match(NUM_FLOAT); 7974 constant_AST = (AST)currentAST.root; 7975 break; 7976 } 7977 case NUM_DOUBLE: 7978 { 7979 AST tmp239_AST = null; 7980 tmp239_AST = astFactory.create(LT(1)); 7981 astFactory.addASTChild(currentAST, tmp239_AST); 7982 match(NUM_DOUBLE); 7983 constant_AST = (AST)currentAST.root; 7984 break; 7985 } 7986 case CHAR_LITERAL: 7987 { 7988 AST tmp240_AST = null; 7989 tmp240_AST = astFactory.create(LT(1)); 7990 astFactory.addASTChild(currentAST, tmp240_AST); 7991 match(CHAR_LITERAL); 7992 constant_AST = (AST)currentAST.root; 7993 break; 7994 } 7995 case STRING_LITERAL: 7996 { 7997 AST tmp241_AST = null; 7998 tmp241_AST = astFactory.create(LT(1)); 7999 astFactory.addASTChild(currentAST, tmp241_AST); 8000 match(STRING_LITERAL); 8001 constant_AST = (AST)currentAST.root; 8002 break; 8003 } 8004 default: 8005 { 8006 throw new NoViableAltException(LT(1), getFilename()); 8007 } 8008 } 8009 returnAST = constant_AST; 8010 } 8011 8012 public final void newArrayDeclarator() throws RecognitionException, TokenStreamException { 8013 8014 returnAST = null; 8015 ASTPair currentAST = new ASTPair(); 8016 AST newArrayDeclarator_AST = null; 8017 Token lb = null; 8018 AST lb_AST = null; 8019 8020 { 8021 int _cnt377=0; 8022 _loop377: 8023 do { 8024 if ((LA(1)==LBRACK||LA(1)==AT) && (_tokenSet_69.member(LA(2)))) { 8025 { 8026 if (((LA(1)==LBRACK||LA(1)==AT) && (_tokenSet_69.member(LA(2))))&&(LA(1) == AT)) { 8027 annotations(); 8028 astFactory.addASTChild(currentAST, returnAST); 8029 } 8030 else if ((LA(1)==LBRACK) && (_tokenSet_69.member(LA(2)))) { 8031 } 8032 else { 8033 throw new NoViableAltException(LT(1), getFilename()); 8034 } 8035 8036 } 8037 lb = LT(1); 8038 lb_AST = astFactory.create(lb); 8039 astFactory.makeASTRoot(currentAST, lb_AST); 8040 match(LBRACK); 8041 if ( inputState.guessing==0 ) { 8042 lb_AST.setType(ARRAY_DECLARATOR); 8043 } 8044 { 8045 switch ( LA(1)) { 8046 case LITERAL_void: 8047 case LITERAL_boolean: 8048 case LITERAL_byte: 8049 case LITERAL_char: 8050 case LITERAL_short: 8051 case LITERAL_int: 8052 case LITERAL_float: 8053 case LITERAL_long: 8054 case LITERAL_double: 8055 case IDENT: 8056 case LPAREN: 8057 case LITERAL_this: 8058 case LITERAL_super: 8059 case PLUS: 8060 case MINUS: 8061 case INC: 8062 case DEC: 8063 case BNOT: 8064 case LNOT: 8065 case LITERAL_true: 8066 case LITERAL_false: 8067 case LITERAL_null: 8068 case LITERAL_new: 8069 case NUM_INT: 8070 case CHAR_LITERAL: 8071 case STRING_LITERAL: 8072 case NUM_FLOAT: 8073 case NUM_LONG: 8074 case NUM_DOUBLE: 8075 case AT: 8076 { 8077 expression(); 8078 astFactory.addASTChild(currentAST, returnAST); 8079 break; 8080 } 8081 case RBRACK: 8082 { 8083 break; 8084 } 8085 default: 8086 { 8087 throw new NoViableAltException(LT(1), getFilename()); 8088 } 8089 } 8090 } 8091 AST tmp242_AST = null; 8092 tmp242_AST = astFactory.create(LT(1)); 8093 astFactory.addASTChild(currentAST, tmp242_AST); 8094 match(RBRACK); 8095 } 8096 else { 8097 if ( _cnt377>=1 ) { break _loop377; } else {throw new NoViableAltException(LT(1), getFilename());} 8098 } 8099 8100 _cnt377++; 8101 } while (true); 8102 } 8103 newArrayDeclarator_AST = (AST)currentAST.root; 8104 returnAST = newArrayDeclarator_AST; 8105 } 8106 8107 public final void lambdaParameters() throws RecognitionException, TokenStreamException { 8108 8109 returnAST = null; 8110 ASTPair currentAST = new ASTPair(); 8111 AST lambdaParameters_AST = null; 8112 8113 switch ( LA(1)) { 8114 case IDENT: 8115 { 8116 AST tmp243_AST = null; 8117 tmp243_AST = astFactory.create(LT(1)); 8118 astFactory.addASTChild(currentAST, tmp243_AST); 8119 match(IDENT); 8120 lambdaParameters_AST = (AST)currentAST.root; 8121 break; 8122 } 8123 case LPAREN: 8124 { 8125 AST tmp244_AST = null; 8126 tmp244_AST = astFactory.create(LT(1)); 8127 astFactory.addASTChild(currentAST, tmp244_AST); 8128 match(LPAREN); 8129 { 8130 if ((_tokenSet_70.member(LA(1))) && (_tokenSet_71.member(LA(2)))) { 8131 parameterDeclarationList(); 8132 astFactory.addASTChild(currentAST, returnAST); 8133 } 8134 else if ((LA(1)==RPAREN) && (LA(2)==LAMBDA)) { 8135 } 8136 else { 8137 throw new NoViableAltException(LT(1), getFilename()); 8138 } 8139 8140 } 8141 AST tmp245_AST = null; 8142 tmp245_AST = astFactory.create(LT(1)); 8143 astFactory.addASTChild(currentAST, tmp245_AST); 8144 match(RPAREN); 8145 lambdaParameters_AST = (AST)currentAST.root; 8146 break; 8147 } 8148 default: 8149 { 8150 throw new NoViableAltException(LT(1), getFilename()); 8151 } 8152 } 8153 returnAST = lambdaParameters_AST; 8154 } 8155 8156 public final void lambdaBody() throws RecognitionException, TokenStreamException { 8157 8158 returnAST = null; 8159 ASTPair currentAST = new ASTPair(); 8160 AST lambdaBody_AST = null; 8161 8162 { 8163 if ((_tokenSet_14.member(LA(1))) && (_tokenSet_72.member(LA(2)))) { 8164 expression(); 8165 astFactory.addASTChild(currentAST, returnAST); 8166 } 8167 else if ((_tokenSet_39.member(LA(1))) && (_tokenSet_72.member(LA(2)))) { 8168 statement(); 8169 astFactory.addASTChild(currentAST, returnAST); 8170 } 8171 else { 8172 throw new NoViableAltException(LT(1), getFilename()); 8173 } 8174 8175 } 8176 lambdaBody_AST = (AST)currentAST.root; 8177 returnAST = lambdaBody_AST; 8178 } 8179 8180 8181 public static final String[] _tokenNames = { 8182 "<0>", 8183 "EOF", 8184 "<2>", 8185 "NULL_TREE_LOOKAHEAD", 8186 "BLOCK", 8187 "MODIFIERS", 8188 "OBJBLOCK", 8189 "SLIST", 8190 "CTOR_DEF", 8191 "METHOD_DEF", 8192 "VARIABLE_DEF", 8193 "INSTANCE_INIT", 8194 "STATIC_INIT", 8195 "TYPE", 8196 "CLASS_DEF", 8197 "INTERFACE_DEF", 8198 "PACKAGE_DEF", 8199 "ARRAY_DECLARATOR", 8200 "EXTENDS_CLAUSE", 8201 "IMPLEMENTS_CLAUSE", 8202 "PARAMETERS", 8203 "PARAMETER_DEF", 8204 "LABELED_STAT", 8205 "TYPECAST", 8206 "INDEX_OP", 8207 "POST_INC", 8208 "POST_DEC", 8209 "METHOD_CALL", 8210 "EXPR", 8211 "ARRAY_INIT", 8212 "IMPORT", 8213 "UNARY_MINUS", 8214 "UNARY_PLUS", 8215 "CASE_GROUP", 8216 "ELIST", 8217 "FOR_INIT", 8218 "FOR_CONDITION", 8219 "FOR_ITERATOR", 8220 "EMPTY_STAT", 8221 "\"final\"", 8222 "\"abstract\"", 8223 "\"strictfp\"", 8224 "SUPER_CTOR_CALL", 8225 "CTOR_CALL", 8226 "\"package\"", 8227 "SEMI", 8228 "\"import\"", 8229 "LBRACK", 8230 "RBRACK", 8231 "\"void\"", 8232 "\"boolean\"", 8233 "\"byte\"", 8234 "\"char\"", 8235 "\"short\"", 8236 "\"int\"", 8237 "\"float\"", 8238 "\"long\"", 8239 "\"double\"", 8240 "IDENT", 8241 "DOT", 8242 "STAR", 8243 "\"private\"", 8244 "\"public\"", 8245 "\"protected\"", 8246 "\"static\"", 8247 "\"transient\"", 8248 "\"native\"", 8249 "\"synchronized\"", 8250 "\"volatile\"", 8251 "\"class\"", 8252 "\"extends\"", 8253 "\"interface\"", 8254 "LCURLY", 8255 "RCURLY", 8256 "COMMA", 8257 "\"implements\"", 8258 "LPAREN", 8259 "RPAREN", 8260 "\"this\"", 8261 "\"super\"", 8262 "ASSIGN", 8263 "\"throws\"", 8264 "COLON", 8265 "\"if\"", 8266 "\"while\"", 8267 "\"do\"", 8268 "\"break\"", 8269 "\"continue\"", 8270 "\"return\"", 8271 "\"switch\"", 8272 "\"throw\"", 8273 "\"for\"", 8274 "\"else\"", 8275 "\"case\"", 8276 "\"default\"", 8277 "\"try\"", 8278 "\"catch\"", 8279 "\"finally\"", 8280 "PLUS_ASSIGN", 8281 "MINUS_ASSIGN", 8282 "STAR_ASSIGN", 8283 "DIV_ASSIGN", 8284 "MOD_ASSIGN", 8285 "SR_ASSIGN", 8286 "BSR_ASSIGN", 8287 "SL_ASSIGN", 8288 "BAND_ASSIGN", 8289 "BXOR_ASSIGN", 8290 "BOR_ASSIGN", 8291 "QUESTION", 8292 "LOR", 8293 "LAND", 8294 "BOR", 8295 "BXOR", 8296 "BAND", 8297 "NOT_EQUAL", 8298 "EQUAL", 8299 "LT", 8300 "GT", 8301 "LE", 8302 "GE", 8303 "\"instanceof\"", 8304 "SL", 8305 "SR", 8306 "BSR", 8307 "PLUS", 8308 "MINUS", 8309 "DIV", 8310 "MOD", 8311 "INC", 8312 "DEC", 8313 "BNOT", 8314 "LNOT", 8315 "\"true\"", 8316 "\"false\"", 8317 "\"null\"", 8318 "\"new\"", 8319 "NUM_INT", 8320 "CHAR_LITERAL", 8321 "STRING_LITERAL", 8322 "NUM_FLOAT", 8323 "NUM_LONG", 8324 "NUM_DOUBLE", 8325 "WS", 8326 "SINGLE_LINE_COMMENT", 8327 "BLOCK_COMMENT_BEGIN", 8328 "ESC", 8329 "HEX_DIGIT", 8330 "VOCAB", 8331 "EXPONENT", 8332 "FLOAT_SUFFIX", 8333 "ASSERT", 8334 "STATIC_IMPORT", 8335 "ENUM", 8336 "ENUM_DEF", 8337 "ENUM_CONSTANT_DEF", 8338 "FOR_EACH_CLAUSE", 8339 "ANNOTATION_DEF", 8340 "ANNOTATIONS", 8341 "ANNOTATION", 8342 "ANNOTATION_MEMBER_VALUE_PAIR", 8343 "ANNOTATION_FIELD_DEF", 8344 "ANNOTATION_ARRAY_INIT", 8345 "TYPE_ARGUMENTS", 8346 "TYPE_ARGUMENT", 8347 "TYPE_PARAMETERS", 8348 "TYPE_PARAMETER", 8349 "WILDCARD_TYPE", 8350 "TYPE_UPPER_BOUNDS", 8351 "TYPE_LOWER_BOUNDS", 8352 "AT", 8353 "ELLIPSIS", 8354 "GENERIC_START", 8355 "GENERIC_END", 8356 "TYPE_EXTENSION_AND", 8357 "DO_WHILE", 8358 "RESOURCE_SPECIFICATION", 8359 "RESOURCES", 8360 "RESOURCE", 8361 "DOUBLE_COLON", 8362 "METHOD_REF", 8363 "LAMBDA", 8364 "BLOCK_COMMENT_END", 8365 "COMMENT_CONTENT", 8366 "SINGLE_LINE_COMMENT_CONTENT", 8367 "BLOCK_COMMENT_CONTENT", 8368 "STD_ESC", 8369 "BINARY_DIGIT", 8370 "ID_START", 8371 "ID_PART", 8372 "INT_LITERAL", 8373 "LONG_LITERAL", 8374 "FLOAT_LITERAL", 8375 "DOUBLE_LITERAL", 8376 "HEX_FLOAT_LITERAL", 8377 "HEX_DOUBLE_LITERAL", 8378 "SIGNED_INTEGER", 8379 "BINARY_EXPONENT" 8380 }; 8381 8382 protected void buildTokenTypeASTClassMap() { 8383 tokenTypeToASTClassMap=null; 8384 }; 8385 8386 private static final long[] mk_tokenSet_0() { 8387 long[] data = { -2305733607806730238L, 1073742015L, 4398080065536L, 0L, 0L, 0L}; 8388 return data; 8389 } 8390 public static final BitSet _tokenSet_0 = new BitSet(mk_tokenSet_0()); 8391 private static final long[] mk_tokenSet_1() { 8392 long[] data = { -2017503231655018494L, 1073742015L, 4398080065536L, 0L, 0L, 0L}; 8393 return data; 8394 } 8395 public static final BitSet _tokenSet_1 = new BitSet(mk_tokenSet_1()); 8396 private static final long[] mk_tokenSet_2() { 8397 long[] data = { -2305803976550907904L, 1073742015L, 4398080065536L, 0L, 0L, 0L}; 8398 return data; 8399 } 8400 public static final BitSet _tokenSet_2 = new BitSet(mk_tokenSet_2()); 8401 private static final long[] mk_tokenSet_3() { 8402 long[] data = { -2305803976550907902L, 1073742015L, 4398080065536L, 0L, 0L, 0L}; 8403 return data; 8404 } 8405 public static final BitSet _tokenSet_3 = new BitSet(mk_tokenSet_3()); 8406 private static final long[] mk_tokenSet_4() { 8407 long[] data = { -2305839160922996736L, 1073741855L, 0L, 0L}; 8408 return data; 8409 } 8410 public static final BitSet _tokenSet_4 = new BitSet(mk_tokenSet_4()); 8411 private static final long[] mk_tokenSet_5() { 8412 long[] data = { 140737488355328L, 0L, 13194139533312L, 0L, 0L, 0L}; 8413 return data; 8414 } 8415 public static final BitSet _tokenSet_5 = new BitSet(mk_tokenSet_5()); 8416 private static final long[] mk_tokenSet_6() { 8417 long[] data = { -101704825569280L, -12885032961L, 2264993995194367L, 0L, 0L, 0L}; 8418 return data; 8419 } 8420 public static final BitSet _tokenSet_6 = new BitSet(mk_tokenSet_6()); 8421 private static final long[] mk_tokenSet_7() { 8422 long[] data = { -84112639524862L, -131073L, 11272193249935359L, 0L, 0L, 0L}; 8423 return data; 8424 } 8425 public static final BitSet _tokenSet_7 = new BitSet(mk_tokenSet_7()); 8426 private static final long[] mk_tokenSet_8() { 8427 long[] data = { 575897802350002176L, 35184372088832L, 4398046511104L, 0L, 0L, 0L}; 8428 return data; 8429 } 8430 public static final BitSet _tokenSet_8 = new BitSet(mk_tokenSet_8()); 8431 private static final long[] mk_tokenSet_9() { 8432 long[] data = { 0L, 1747396655419752448L, 0L, 0L}; 8433 return data; 8434 } 8435 public static final BitSet _tokenSet_9 = new BitSet(mk_tokenSet_9()); 8436 private static final long[] mk_tokenSet_10() { 8437 long[] data = { 575897802350002176L, 0L, 4398046511104L, 0L, 0L, 0L}; 8438 return data; 8439 } 8440 public static final BitSet _tokenSet_10 = new BitSet(mk_tokenSet_10()); 8441 private static final long[] mk_tokenSet_11() { 8442 long[] data = { 864831865943490560L, 9007199254745088L, 4398046511104L, 0L, 0L, 0L}; 8443 return data; 8444 } 8445 public static final BitSet _tokenSet_11 = new BitSet(mk_tokenSet_11()); 8446 private static final long[] mk_tokenSet_12() { 8447 long[] data = { 575897802350002176L, 6917529027641135360L, 4398046543870L, 0L, 0L, 0L}; 8448 return data; 8449 } 8450 public static final BitSet _tokenSet_12 = new BitSet(mk_tokenSet_12()); 8451 private static final long[] mk_tokenSet_13() { 8452 long[] data = { 2305420796748627968L, -35184372026880L, 2256197860229119L, 0L, 0L, 0L}; 8453 return data; 8454 } 8455 public static final BitSet _tokenSet_13 = new BitSet(mk_tokenSet_13()); 8456 private static final long[] mk_tokenSet_14() { 8457 long[] data = { 575897802350002176L, 6917529027641135104L, 4398046543870L, 0L, 0L, 0L}; 8458 return data; 8459 } 8460 public static final BitSet _tokenSet_14 = new BitSet(mk_tokenSet_14()); 8461 private static final long[] mk_tokenSet_15() { 8462 long[] data = { 2305455981120716800L, -35184372026368L, 2256197860229119L, 0L, 0L, 0L}; 8463 return data; 8464 } 8465 public static final BitSet _tokenSet_15 = new BitSet(mk_tokenSet_15()); 8466 private static final long[] mk_tokenSet_16() { 8467 long[] data = { 2305420796748627968L, -35184372034048L, 2256197860229119L, 0L, 0L, 0L}; 8468 return data; 8469 } 8470 public static final BitSet _tokenSet_16 = new BitSet(mk_tokenSet_16()); 8471 private static final long[] mk_tokenSet_17() { 8472 long[] data = { 575898352105816064L, 24576L, 9011597301252096L, 0L, 0L, 0L}; 8473 return data; 8474 } 8475 public static final BitSet _tokenSet_17 = new BitSet(mk_tokenSet_17()); 8476 private static final long[] mk_tokenSet_18() { 8477 long[] data = { 2305420796748627968L, -17179488256L, 2256197860229119L, 0L, 0L, 0L}; 8478 return data; 8479 } 8480 public static final BitSet _tokenSet_18 = new BitSet(mk_tokenSet_18()); 8481 private static final long[] mk_tokenSet_19() { 8482 long[] data = { -101704825569280L, -12885035073L, 2256197902172159L, 0L, 0L, 0L}; 8483 return data; 8484 } 8485 public static final BitSet _tokenSet_19 = new BitSet(mk_tokenSet_19()); 8486 private static final long[] mk_tokenSet_20() { 8487 long[] data = { 575897802350002176L, 1747396655419755840L, 4398046511104L, 0L, 0L, 0L}; 8488 return data; 8489 } 8490 public static final BitSet _tokenSet_20 = new BitSet(mk_tokenSet_20()); 8491 private static final long[] mk_tokenSet_21() { 8492 long[] data = { -1153304684409126912L, 9007200328489983L, 4398080065536L, 0L, 0L, 0L}; 8493 return data; 8494 } 8495 public static final BitSet _tokenSet_21 = new BitSet(mk_tokenSet_21()); 8496 private static final long[] mk_tokenSet_22() { 8497 long[] data = { 0L, 160L, 4398080065536L, 0L, 0L, 0L}; 8498 return data; 8499 } 8500 public static final BitSet _tokenSet_22 = new BitSet(mk_tokenSet_22()); 8501 private static final long[] mk_tokenSet_23() { 8502 long[] data = { 864831865943490560L, 9007199254740992L, 4398046511104L, 0L, 0L, 0L}; 8503 return data; 8504 } 8505 public static final BitSet _tokenSet_23 = new BitSet(mk_tokenSet_23()); 8506 private static final long[] mk_tokenSet_24() { 8507 long[] data = { 175921860444160L, 66560L, 4398046511104L, 0L, 0L, 0L}; 8508 return data; 8509 } 8510 public static final BitSet _tokenSet_24 = new BitSet(mk_tokenSet_24()); 8511 private static final long[] mk_tokenSet_25() { 8512 long[] data = { -1729906174200905728L, 9007200328951743L, 4398080065536L, 0L, 0L, 0L}; 8513 return data; 8514 } 8515 public static final BitSet _tokenSet_25 = new BitSet(mk_tokenSet_25()); 8516 private static final long[] mk_tokenSet_26() { 8517 long[] data = { -101704825569278L, -12884904001L, 11263397156913151L, 0L, 0L, 0L}; 8518 return data; 8519 } 8520 public static final BitSet _tokenSet_26 = new BitSet(mk_tokenSet_26()); 8521 private static final long[] mk_tokenSet_27() { 8522 long[] data = { -1729941358572994560L, 9007200328483007L, 4398080065536L, 0L, 0L, 0L}; 8523 return data; 8524 } 8525 public static final BitSet _tokenSet_27 = new BitSet(mk_tokenSet_27()); 8526 private static final long[] mk_tokenSet_28() { 8527 long[] data = { -1153339868781215744L, 9007200328487103L, 4398080065536L, 0L, 0L, 0L}; 8528 return data; 8529 } 8530 public static final BitSet _tokenSet_28 = new BitSet(mk_tokenSet_28()); 8531 private static final long[] mk_tokenSet_29() { 8532 long[] data = { 575897802350002176L, 9007199254740992L, 4398046511104L, 0L, 0L, 0L}; 8533 return data; 8534 } 8535 public static final BitSet _tokenSet_29 = new BitSet(mk_tokenSet_29()); 8536 private static final long[] mk_tokenSet_30() { 8537 long[] data = { -1729765436712550400L, 9007200328550335L, 4398080065536L, 0L, 0L, 0L}; 8538 return data; 8539 } 8540 public static final BitSet _tokenSet_30 = new BitSet(mk_tokenSet_30()); 8541 private static final long[] mk_tokenSet_31() { 8542 long[] data = { -1729906174200905728L, 9007200328483775L, 4398080065536L, 0L, 0L, 0L}; 8543 return data; 8544 } 8545 public static final BitSet _tokenSet_31 = new BitSet(mk_tokenSet_31()); 8546 private static final long[] mk_tokenSet_32() { 8547 long[] data = { -101704825569278L, -12885035073L, 2256197902172159L, 0L, 0L, 0L}; 8548 return data; 8549 } 8550 public static final BitSet _tokenSet_32 = new BitSet(mk_tokenSet_32()); 8551 private static final long[] mk_tokenSet_33() { 8552 long[] data = { 575898352105816064L, 16384L, 4398046511104L, 0L, 0L, 0L}; 8553 return data; 8554 } 8555 public static final BitSet _tokenSet_33 = new BitSet(mk_tokenSet_33()); 8556 private static final long[] mk_tokenSet_34() { 8557 long[] data = { 1152499292141780992L, 9007199254766592L, 4398046511104L, 0L, 0L, 0L}; 8558 return data; 8559 } 8560 public static final BitSet _tokenSet_34 = new BitSet(mk_tokenSet_34()); 8561 private static final long[] mk_tokenSet_35() { 8562 long[] data = { 575898352105816064L, 0L, 4398046511104L, 0L, 0L, 0L}; 8563 return data; 8564 } 8565 public static final BitSet _tokenSet_35 = new BitSet(mk_tokenSet_35()); 8566 private static final long[] mk_tokenSet_36() { 8567 long[] data = { 1152499292141780992L, 9007199254740992L, 13194139533312L, 0L, 0L, 0L}; 8568 return data; 8569 } 8570 public static final BitSet _tokenSet_36 = new BitSet(mk_tokenSet_36()); 8571 private static final long[] mk_tokenSet_37() { 8572 long[] data = { 864726312827224064L, 1280L, 0L, 0L}; 8573 return data; 8574 } 8575 public static final BitSet _tokenSet_37 = new BitSet(mk_tokenSet_37()); 8576 private static final long[] mk_tokenSet_38() { 8577 long[] data = { 576495936675512320L, 1280L, 0L, 0L}; 8578 return data; 8579 } 8580 public static final BitSet _tokenSet_38 = new BitSet(mk_tokenSet_38()); 8581 private static final long[] mk_tokenSet_39() { 8582 long[] data = { -1729906174200905728L, 6917529031130272063L, 4398054932478L, 0L, 0L, 0L}; 8583 return data; 8584 } 8585 public static final BitSet _tokenSet_39 = new BitSet(mk_tokenSet_39()); 8586 private static final long[] mk_tokenSet_40() { 8587 long[] data = { 575897802350002176L, 9007199254794240L, 4398046543840L, 0L, 0L, 0L}; 8588 return data; 8589 } 8590 public static final BitSet _tokenSet_40 = new BitSet(mk_tokenSet_40()); 8591 private static final long[] mk_tokenSet_41() { 8592 long[] data = { 1152499292141780992L, 8673968066687717376L, 4398046543870L, 0L, 0L, 0L}; 8593 return data; 8594 } 8595 public static final BitSet _tokenSet_41 = new BitSet(mk_tokenSet_41()); 8596 private static final long[] mk_tokenSet_42() { 8597 long[] data = { -1729906174200905728L, 6917529031130272575L, 4398054932478L, 0L, 0L, 0L}; 8598 return data; 8599 } 8600 public static final BitSet _tokenSet_42 = new BitSet(mk_tokenSet_42()); 8601 private static final long[] mk_tokenSet_43() { 8602 long[] data = { -383179802279936L, -13690342465L, 11263397156913151L, 0L, 0L, 0L}; 8603 return data; 8604 } 8605 public static final BitSet _tokenSet_43 = new BitSet(mk_tokenSet_43()); 8606 private static final long[] mk_tokenSet_44() { 8607 long[] data = { 0L, 9007199254790144L, 0L, 0L}; 8608 return data; 8609 } 8610 public static final BitSet _tokenSet_44 = new BitSet(mk_tokenSet_44()); 8611 private static final long[] mk_tokenSet_45() { 8612 long[] data = { 575897802350002176L, 1747431839791894528L, 4398046511104L, 0L, 0L, 0L}; 8613 return data; 8614 } 8615 public static final BitSet _tokenSet_45 = new BitSet(mk_tokenSet_45()); 8616 private static final long[] mk_tokenSet_46() { 8617 long[] data = { 575897802350002176L, 53248L, 4398046543840L, 0L, 0L, 0L}; 8618 return data; 8619 } 8620 public static final BitSet _tokenSet_46 = new BitSet(mk_tokenSet_46()); 8621 private static final long[] mk_tokenSet_47() { 8622 long[] data = { 1152499292141780992L, 6926536226895876096L, 4398046543870L, 0L, 0L, 0L}; 8623 return data; 8624 } 8625 public static final BitSet _tokenSet_47 = new BitSet(mk_tokenSet_47()); 8626 private static final long[] mk_tokenSet_48() { 8627 long[] data = { 2305420796748627968L, -17179742208L, 2256197860229119L, 0L, 0L, 0L}; 8628 return data; 8629 } 8630 public static final BitSet _tokenSet_48 = new BitSet(mk_tokenSet_48()); 8631 private static final long[] mk_tokenSet_49() { 8632 long[] data = { -84112639524862L, -133185L, 11272193249935359L, 0L, 0L, 0L}; 8633 return data; 8634 } 8635 public static final BitSet _tokenSet_49 = new BitSet(mk_tokenSet_49()); 8636 private static final long[] mk_tokenSet_50() { 8637 long[] data = { 864831865943490560L, 9007199254757376L, 4398046511104L, 0L, 0L, 0L}; 8638 return data; 8639 } 8640 public static final BitSet _tokenSet_50 = new BitSet(mk_tokenSet_50()); 8641 private static final long[] mk_tokenSet_51() { 8642 long[] data = { 576601489791778816L, 9216L, 4398046511104L, 0L, 0L, 0L}; 8643 return data; 8644 } 8645 public static final BitSet _tokenSet_51 = new BitSet(mk_tokenSet_51()); 8646 private static final long[] mk_tokenSet_52() { 8647 long[] data = { -576984669594058752L, -9007194959973569L, 4398054932479L, 0L, 0L, 0L}; 8648 return data; 8649 } 8650 public static final BitSet _tokenSet_52 = new BitSet(mk_tokenSet_52()); 8651 private static final long[] mk_tokenSet_53() { 8652 long[] data = { -101704825569280L, -133185L, 11263397156913151L, 0L, 0L, 0L}; 8653 return data; 8654 } 8655 public static final BitSet _tokenSet_53 = new BitSet(mk_tokenSet_53()); 8656 private static final long[] mk_tokenSet_54() { 8657 long[] data = { -1729941358572994560L, 1073741855L, 4398046511104L, 0L, 0L, 0L}; 8658 return data; 8659 } 8660 public static final BitSet _tokenSet_54 = new BitSet(mk_tokenSet_54()); 8661 private static final long[] mk_tokenSet_55() { 8662 long[] data = { -1153339868781215744L, 9007200328482847L, 4398046511104L, 0L, 0L, 0L}; 8663 return data; 8664 } 8665 public static final BitSet _tokenSet_55 = new BitSet(mk_tokenSet_55()); 8666 private static final long[] mk_tokenSet_56() { 8667 long[] data = { -383179802279936L, -12885036225L, 11263397123358719L, 0L, 0L, 0L}; 8668 return data; 8669 } 8670 public static final BitSet _tokenSet_56 = new BitSet(mk_tokenSet_56()); 8671 private static final long[] mk_tokenSet_57() { 8672 long[] data = { -2305839160922996736L, 1073741887L, 4398046511104L, 0L, 0L, 0L}; 8673 return data; 8674 } 8675 public static final BitSet _tokenSet_57 = new BitSet(mk_tokenSet_57()); 8676 private static final long[] mk_tokenSet_58() { 8677 long[] data = { -2017608784771284992L, 1073741887L, 4398046511104L, 0L, 0L, 0L}; 8678 return data; 8679 } 8680 public static final BitSet _tokenSet_58 = new BitSet(mk_tokenSet_58()); 8681 private static final long[] mk_tokenSet_59() { 8682 long[] data = { -1729906174200905728L, 6917529028714876959L, 4398046543870L, 0L, 0L, 0L}; 8683 return data; 8684 } 8685 public static final BitSet _tokenSet_59 = new BitSet(mk_tokenSet_59()); 8686 private static final long[] mk_tokenSet_60() { 8687 long[] data = { -383179802279936L, -16105999329L, 11263397114970111L, 0L, 0L, 0L}; 8688 return data; 8689 } 8690 public static final BitSet _tokenSet_60 = new BitSet(mk_tokenSet_60()); 8691 private static final long[] mk_tokenSet_61() { 8692 long[] data = { 575897802350002176L, 6917529027641397248L, 4398046543870L, 0L, 0L, 0L}; 8693 return data; 8694 } 8695 public static final BitSet _tokenSet_61 = new BitSet(mk_tokenSet_61()); 8696 private static final long[] mk_tokenSet_62() { 8697 long[] data = { -383179802279936L, -13153471681L, 11263397123358719L, 0L, 0L, 0L}; 8698 return data; 8699 } 8700 public static final BitSet _tokenSet_62 = new BitSet(mk_tokenSet_62()); 8701 private static final long[] mk_tokenSet_63() { 8702 long[] data = { 0L, 1610613248L, 0L, 0L}; 8703 return data; 8704 } 8705 public static final BitSet _tokenSet_63 = new BitSet(mk_tokenSet_63()); 8706 private static final long[] mk_tokenSet_64() { 8707 long[] data = { 2305456530876530688L, -17179741184L, 11263397114970111L, 0L, 0L, 0L}; 8708 return data; 8709 } 8710 public static final BitSet _tokenSet_64 = new BitSet(mk_tokenSet_64()); 8711 private static final long[] mk_tokenSet_65() { 8712 long[] data = { -576703194617348096L, -12885035073L, 4398088486911L, 0L, 0L, 0L}; 8713 return data; 8714 } 8715 public static final BitSet _tokenSet_65 = new BitSet(mk_tokenSet_65()); 8716 private static final long[] mk_tokenSet_66() { 8717 long[] data = { 1152921504606846976L, -9223372036854775808L, 1L, 0L, 0L, 0L}; 8718 return data; 8719 } 8720 public static final BitSet _tokenSet_66 = new BitSet(mk_tokenSet_66()); 8721 private static final long[] mk_tokenSet_67() { 8722 long[] data = { 575897802350002176L, 6917529027641143296L, 4398046543870L, 0L, 0L, 0L}; 8723 return data; 8724 } 8725 public static final BitSet _tokenSet_67 = new BitSet(mk_tokenSet_67()); 8726 private static final long[] mk_tokenSet_68() { 8727 long[] data = { 575897802350002176L, 6917529027641136896L, 4398046543870L, 0L, 0L, 0L}; 8728 return data; 8729 } 8730 public static final BitSet _tokenSet_68 = new BitSet(mk_tokenSet_68()); 8731 private static final long[] mk_tokenSet_69() { 8732 long[] data = { 576179277326712832L, 6917529027641135104L, 4398046543870L, 0L, 0L, 0L}; 8733 return data; 8734 } 8735 public static final BitSet _tokenSet_69 = new BitSet(mk_tokenSet_69()); 8736 private static final long[] mk_tokenSet_70() { 8737 long[] data = { 575898352105816064L, 24576L, 4398046511104L, 0L, 0L, 0L}; 8738 return data; 8739 } 8740 public static final BitSet _tokenSet_70 = new BitSet(mk_tokenSet_70()); 8741 private static final long[] mk_tokenSet_71() { 8742 long[] data = { 1152499292141780992L, 9007199254766592L, 9020393394274304L, 0L, 0L, 0L}; 8743 return data; 8744 } 8745 public static final BitSet _tokenSet_71 = new BitSet(mk_tokenSet_71()); 8746 private static final long[] mk_tokenSet_72() { 8747 long[] data = { -101704825569280L, -12885035073L, 11263397156913151L, 0L, 0L, 0L}; 8748 return data; 8749 } 8750 public static final BitSet _tokenSet_72 = new BitSet(mk_tokenSet_72()); 8751 8752 }