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