1/* Generated By:JavaCC: Do not edit this line. ASTParser.java */ 2/* 3 * 4 * This file is part of Java 1.8 parser and Abstract Syntax Tree. 5 * 6 * Java 1.8 parser and Abstract Syntax Tree is free software: you can redistribute it and/or modify 7 * it under the terms of the GNU Lesser General Public License as published by 8 * the Free Software Foundation, either version 3 of the License, or 9 * (at your option) any later version. 10 * 11 * You should have received a copy of the GNU Lesser General Public License 12 * along with Java 1.8 parser and Abstract Syntax Tree. If not, see <http://www.gnu.org/licenses/>. 13 */ 14package com.github.javaparser; 15 16import java.io.*; 17import java.util.*; 18import com.github.javaparser.ast.*; 19import com.github.javaparser.ast.body.*; 20import com.github.javaparser.ast.comments.*; 21import com.github.javaparser.ast.expr.*; 22import com.github.javaparser.ast.stmt.*; 23import com.github.javaparser.ast.type.*; 24 25/** 26 * <p>This class was generated automatically by javacc, do not edit.</p> 27 */ 28final class ASTParser implements ASTParserConstants { 29 30 void reset(InputStream in, String encoding) { 31 ReInit(in, encoding); 32 } 33 34 private List add(List list, Object obj) { 35 if (list == null) { 36 list = new LinkedList(); 37 } 38 list.add(obj); 39 return list; 40 } 41 42 private List add(int pos, List list, Object obj) { 43 if (list == null) { 44 list = new LinkedList(); 45 } 46 list.add(pos, obj); 47 return list; 48 } 49 50 private class Modifier { 51 52 final int modifiers; 53 final List annotations; 54 final int beginLine; 55 final int beginColumn; 56 57 public Modifier(int beginLine, int beginColumn, int modifiers, List annotations) { 58 this.beginLine = beginLine; 59 this.beginColumn = beginColumn; 60 this.modifiers = modifiers; 61 this.annotations = annotations; 62 } 63 } 64 65 public int addModifier(int modifiers, int mod, Token token) { 66 if ((ModifierSet.hasModifier(modifiers, mod))) { 67 throwParseException(token, "Duplicated modifier"); 68 } 69 return ModifierSet.addModifier(modifiers, mod); 70 } 71 72 private void throwParseException(Token token, String message) { 73 StringBuilder buf = new StringBuilder(); 74 buf.append(message); 75 buf.append(": \""); 76 buf.append(token.image); 77 buf.append("\" at line "); 78 buf.append(token.beginLine); 79 buf.append(", column "); 80 buf.append(token.beginColumn); 81 ParseException e = new ParseException(buf.toString()); 82 e.currentToken = token; 83 throw e; 84 } 85 86 private Expression generateLambda(Expression ret, Statement lambdaBody) { 87 if (ret instanceof EnclosedExpr) { 88 Expression inner = ((EnclosedExpr) ret).getInner(); 89 if (inner != null && inner instanceof NameExpr) { 90 VariableDeclaratorId id = new VariableDeclaratorId(inner.getBeginLine(), inner.getBeginColumn(), inner.getEndLine(), inner.getEndColumn(), ((NameExpr)inner).getName(), 0); 91 List params = add(null, new Parameter(ret.getBeginLine(), ret.getBeginColumn(), ret.getEndLine(), ret.getEndColumn(), 0, null, new UnknownType(), false, id)); 92 ret = new LambdaExpr(ret.getBeginLine(), ret.getBeginColumn(), lambdaBody.getEndLine(), lambdaBody.getEndColumn(), params, lambdaBody, true); 93 } else { 94 ret = new LambdaExpr(ret.getBeginLine(), ret.getBeginColumn(), lambdaBody.getEndLine(), lambdaBody.getEndColumn(), null, lambdaBody, true); 95 } 96 } else if (ret instanceof NameExpr) { 97 VariableDeclaratorId id = new VariableDeclaratorId(ret.getBeginLine(), ret.getBeginColumn(), ret.getEndLine(), ret.getEndColumn(), ((NameExpr)ret).getName(), 0); 98 List params = add(null, new Parameter(ret.getBeginLine(), ret.getBeginColumn(), ret.getEndLine(), ret.getEndColumn(), 0, null, new UnknownType(), false, id)); 99 ret = new LambdaExpr(ret.getBeginLine(), ret.getBeginColumn(), ret.getEndLine(), ret.getEndColumn(), params, lambdaBody, false); 100 } else if (ret instanceof LambdaExpr) { 101 ((LambdaExpr) ret).setBody(lambdaBody); 102 ret.setEndLine(lambdaBody.getEndLine()); 103 ret.setEndColumn(lambdaBody.getEndColumn()); 104 } else { 105 throw new ParseException("Failed to parse lambda expression! Please create an issue at https://github.com/javaparser/javaparser/issues"); 106 } 107 return ret; 108 } 109 110 static final class GTToken extends Token { 111 112 int realKind = ASTParserConstants.GT; 113 114 GTToken(int kind, String image) { 115 this.kind = kind; 116 this.image = image; 117 } 118 119 public static Token newToken(int kind, String image) { 120 return new GTToken(kind, image); 121 } 122 } 123 124 private Token last_special_token = null; 125 126/***************************************** 127 * THE JAVA LANGUAGE GRAMMAR STARTS HERE * 128 *****************************************/ 129 130/* 131 * Program structuring syntax follows. 132 */ 133 final public CompilationUnit CompilationUnit() { 134 PackageDeclaration pakage = null; 135 List imports = null; 136 ImportDeclaration in = null; 137 List types = null; 138 TypeDeclaration tn = null; 139 int line = -1; 140 int column = 0; 141 if (jj_2_1(2147483647)) { 142 pakage = PackageDeclaration(); 143 line = pakage.getBeginLine(); column = pakage.getBeginColumn(); 144 } else { 145 ; 146 } 147 label_1: 148 while (true) { 149 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 150 case IMPORT: 151 ; 152 break; 153 default: 154 jj_la1[0] = jj_gen; 155 break label_1; 156 } 157 in = ImportDeclaration(); 158 if(line==-1){line = in.getBeginLine(); column = in.getBeginColumn();} imports = add(imports, in); 159 } 160 label_2: 161 while (true) { 162 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 163 case ABSTRACT: 164 case CLASS: 165 case ENUM: 166 case FINAL: 167 case INTERFACE: 168 case NATIVE: 169 case PRIVATE: 170 case PROTECTED: 171 case PUBLIC: 172 case STATIC: 173 case STRICTFP: 174 case SYNCHRONIZED: 175 case TRANSIENT: 176 case VOLATILE: 177 case SEMICOLON: 178 case AT: 179 ; 180 break; 181 default: 182 jj_la1[1] = jj_gen; 183 break label_2; 184 } 185 tn = TypeDeclaration(); 186 if(line==-1){line = tn.getBeginLine(); column = tn.getBeginColumn();} types = add(types, tn); 187 } 188 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 189 case 0: 190 jj_consume_token(0); 191 break; 192 case 131: 193 jj_consume_token(131); 194 break; 195 default: 196 jj_la1[2] = jj_gen; 197 jj_consume_token(-1); 198 throw new ParseException(); 199 } 200 {if (true) return new CompilationUnit(line == -1 ? 0 : line, column, token.endLine, token.endColumn,pakage, imports, types);} 201 throw new Error("Missing return statement in function"); 202 } 203 204 final public PackageDeclaration PackageDeclaration() { 205 List annotations = null; 206 AnnotationExpr ann; 207 NameExpr name; 208 int line; 209 int column; 210 label_3: 211 while (true) { 212 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 213 case AT: 214 ; 215 break; 216 default: 217 jj_la1[3] = jj_gen; 218 break label_3; 219 } 220 ann = Annotation(); 221 annotations = add(annotations, ann); 222 } 223 jj_consume_token(PACKAGE); 224 line=token.beginLine; column=token.beginColumn; 225 name = Name(); 226 jj_consume_token(SEMICOLON); 227 {if (true) return new PackageDeclaration(line, column, token.endLine, token.endColumn,annotations, name);} 228 throw new Error("Missing return statement in function"); 229 } 230 231 final public ImportDeclaration ImportDeclaration() { 232 NameExpr name; 233 boolean isStatic = false; 234 boolean isAsterisk = false; 235 int line; 236 int column; 237 jj_consume_token(IMPORT); 238 line=token.beginLine; column=token.beginColumn; 239 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 240 case STATIC: 241 jj_consume_token(STATIC); 242 isStatic = true; 243 break; 244 default: 245 jj_la1[4] = jj_gen; 246 ; 247 } 248 name = Name(); 249 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 250 case DOT: 251 jj_consume_token(DOT); 252 jj_consume_token(STAR); 253 isAsterisk = true; 254 break; 255 default: 256 jj_la1[5] = jj_gen; 257 ; 258 } 259 jj_consume_token(SEMICOLON); 260 {if (true) return new ImportDeclaration(line, column, token.endLine, token.endColumn,name, isStatic, isAsterisk);} 261 throw new Error("Missing return statement in function"); 262 } 263 264/* 265 * Modifiers. We match all modifiers in a single rule to reduce the chances of 266 * syntax errors for simple modifier mistakes. It will also enable us to give 267 * better error messages. 268 */ 269 final public Modifier Modifiers() { 270 int beginLine = -1; 271 int beginColumn = -1; 272 int modifiers = 0; 273 List annotations = null; 274 AnnotationExpr ann; 275 label_4: 276 while (true) { 277 if (jj_2_2(2)) { 278 ; 279 } else { 280 break label_4; 281 } 282 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 283 case PUBLIC: 284 jj_consume_token(PUBLIC); 285 modifiers = addModifier(modifiers, ModifierSet.PUBLIC, token); if(beginLine==-1) {beginLine=token.beginLine; beginColumn=token.beginColumn;} 286 break; 287 case STATIC: 288 jj_consume_token(STATIC); 289 modifiers = addModifier(modifiers, ModifierSet.STATIC, token); if(beginLine==-1) {beginLine=token.beginLine; beginColumn=token.beginColumn;} 290 break; 291 case PROTECTED: 292 jj_consume_token(PROTECTED); 293 modifiers = addModifier(modifiers, ModifierSet.PROTECTED, token); if(beginLine==-1) {beginLine=token.beginLine; beginColumn=token.beginColumn;} 294 break; 295 case PRIVATE: 296 jj_consume_token(PRIVATE); 297 modifiers = addModifier(modifiers, ModifierSet.PRIVATE, token); if(beginLine==-1) {beginLine=token.beginLine; beginColumn=token.beginColumn;} 298 break; 299 case FINAL: 300 jj_consume_token(FINAL); 301 modifiers = addModifier(modifiers, ModifierSet.FINAL, token); if(beginLine==-1) {beginLine=token.beginLine; beginColumn=token.beginColumn;} 302 break; 303 case ABSTRACT: 304 jj_consume_token(ABSTRACT); 305 modifiers = addModifier(modifiers, ModifierSet.ABSTRACT, token); if(beginLine==-1) {beginLine=token.beginLine; beginColumn=token.beginColumn;} 306 break; 307 case SYNCHRONIZED: 308 jj_consume_token(SYNCHRONIZED); 309 modifiers = addModifier(modifiers, ModifierSet.SYNCHRONIZED, token); if(beginLine==-1) {beginLine=token.beginLine; beginColumn=token.beginColumn;} 310 break; 311 case NATIVE: 312 jj_consume_token(NATIVE); 313 modifiers = addModifier(modifiers, ModifierSet.NATIVE, token); if(beginLine==-1) {beginLine=token.beginLine; beginColumn=token.beginColumn;} 314 break; 315 case TRANSIENT: 316 jj_consume_token(TRANSIENT); 317 modifiers = addModifier(modifiers, ModifierSet.TRANSIENT, token); if(beginLine==-1) {beginLine=token.beginLine; beginColumn=token.beginColumn;} 318 break; 319 case VOLATILE: 320 jj_consume_token(VOLATILE); 321 modifiers = addModifier(modifiers, ModifierSet.VOLATILE, token); if(beginLine==-1) {beginLine=token.beginLine; beginColumn=token.beginColumn;} 322 break; 323 case STRICTFP: 324 jj_consume_token(STRICTFP); 325 modifiers = addModifier(modifiers, ModifierSet.STRICTFP, token); if(beginLine==-1) {beginLine=token.beginLine; beginColumn=token.beginColumn;} 326 break; 327 case AT: 328 ann = Annotation(); 329 annotations = add(annotations, ann); if(beginLine==-1) {beginLine=ann.getBeginLine(); beginColumn=ann.getBeginColumn();} 330 break; 331 default: 332 jj_la1[6] = jj_gen; 333 jj_consume_token(-1); 334 throw new ParseException(); 335 } 336 } 337 {if (true) return new Modifier(beginLine, beginColumn, modifiers, annotations);} 338 throw new Error("Missing return statement in function"); 339 } 340 341/* 342 * Declaration syntax follows. 343 */ 344 final public TypeDeclaration TypeDeclaration() { 345 Modifier modifier; 346 TypeDeclaration ret; 347 348 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 349 case SEMICOLON: 350 jj_consume_token(SEMICOLON); 351 ret = new EmptyTypeDeclaration(token.beginLine, token.beginColumn, token.endLine, token.endColumn); 352 break; 353 case ABSTRACT: 354 case CLASS: 355 case ENUM: 356 case FINAL: 357 case INTERFACE: 358 case NATIVE: 359 case PRIVATE: 360 case PROTECTED: 361 case PUBLIC: 362 case STATIC: 363 case STRICTFP: 364 case SYNCHRONIZED: 365 case TRANSIENT: 366 case VOLATILE: 367 case AT: 368 modifier = Modifiers(); 369 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 370 case CLASS: 371 case INTERFACE: 372 ret = ClassOrInterfaceDeclaration(modifier); 373 break; 374 case ENUM: 375 ret = EnumDeclaration(modifier); 376 break; 377 case AT: 378 ret = AnnotationTypeDeclaration(modifier); 379 break; 380 default: 381 jj_la1[7] = jj_gen; 382 jj_consume_token(-1); 383 throw new ParseException(); 384 } 385 break; 386 default: 387 jj_la1[8] = jj_gen; 388 jj_consume_token(-1); 389 throw new ParseException(); 390 } 391 {if (true) return ret;} 392 throw new Error("Missing return statement in function"); 393 } 394 395 final public ClassOrInterfaceDeclaration ClassOrInterfaceDeclaration(Modifier modifier) { 396 boolean isInterface = false; 397 NameExpr name; 398 List typePar = null; 399 List extList = null; 400 List impList = null; 401 List members; 402 int line = modifier.beginLine; 403 int column = modifier.beginColumn; 404 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 405 case CLASS: 406 jj_consume_token(CLASS); 407 break; 408 case INTERFACE: 409 jj_consume_token(INTERFACE); 410 isInterface = true; 411 break; 412 default: 413 jj_la1[9] = jj_gen; 414 jj_consume_token(-1); 415 throw new ParseException(); 416 } 417 if (line == -1) {line=token.beginLine; column=token.beginColumn;} 418 name = Name(); 419 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 420 case LT: 421 typePar = TypeParameters(); 422 typePar.remove(0); 423 break; 424 default: 425 jj_la1[10] = jj_gen; 426 ; 427 } 428 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 429 case EXTENDS: 430 extList = ExtendsList(isInterface); 431 break; 432 default: 433 jj_la1[11] = jj_gen; 434 ; 435 } 436 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 437 case IMPLEMENTS: 438 impList = ImplementsList(isInterface); 439 break; 440 default: 441 jj_la1[12] = jj_gen; 442 ; 443 } 444 members = ClassOrInterfaceBody(isInterface); 445 ClassOrInterfaceDeclaration tmp = new ClassOrInterfaceDeclaration(line, column, token.endLine, token.endColumn, modifier.modifiers, modifier.annotations, isInterface, null, typePar, extList, impList, members); 446 tmp.setNameExpr(name); 447 {if (true) return tmp;} 448 throw new Error("Missing return statement in function"); 449 } 450 451 final public List ExtendsList(boolean isInterface) { 452 boolean extendsMoreThanOne = false; 453 List ret = new LinkedList(); 454 ClassOrInterfaceType cit; 455 AnnotationExpr ann; 456 List annotations = null; 457 jj_consume_token(EXTENDS); 458 label_5: 459 while (true) { 460 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 461 case AT: 462 ; 463 break; 464 default: 465 jj_la1[13] = jj_gen; 466 break label_5; 467 } 468 ann = Annotation(); 469 annotations = add(annotations, ann); 470 } 471 cit = ClassOrInterfaceType(); 472 cit.setAnnotations(annotations); ret.add(cit); 473 label_6: 474 while (true) { 475 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 476 case COMMA: 477 ; 478 break; 479 default: 480 jj_la1[14] = jj_gen; 481 break label_6; 482 } 483 jj_consume_token(COMMA); 484 cit = ClassOrInterfaceType(); 485 ret.add(cit); extendsMoreThanOne = true; 486 } 487 if (extendsMoreThanOne && !isInterface) 488 throwParseException(token, "A class cannot extend more than one other class"); 489 {if (true) return ret;} 490 throw new Error("Missing return statement in function"); 491 } 492 493 final public List ImplementsList(boolean isInterface) { 494 List ret = new LinkedList(); 495 ClassOrInterfaceType cit; 496 AnnotationExpr ann; 497 List annotations = null; 498 jj_consume_token(IMPLEMENTS); 499 label_7: 500 while (true) { 501 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 502 case AT: 503 ; 504 break; 505 default: 506 jj_la1[15] = jj_gen; 507 break label_7; 508 } 509 ann = Annotation(); 510 annotations = add(annotations, ann); 511 } 512 cit = ClassOrInterfaceType(); 513 cit.setAnnotations(annotations); ret.add(cit); 514 label_8: 515 while (true) { 516 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 517 case COMMA: 518 ; 519 break; 520 default: 521 jj_la1[16] = jj_gen; 522 break label_8; 523 } 524 jj_consume_token(COMMA); 525 cit = ClassOrInterfaceType(); 526 ret.add(cit); 527 } 528 if (isInterface) 529 throwParseException(token, "An interface cannot implement other interfaces"); 530 {if (true) return ret;} 531 throw new Error("Missing return statement in function"); 532 } 533 534 final public EnumDeclaration EnumDeclaration(Modifier modifier) { 535 NameExpr name; 536 List impList = null; 537 EnumConstantDeclaration entry; 538 List entries = null; 539 BodyDeclaration member; 540 List members = null; 541 int line = modifier.beginLine; 542 int column = modifier.beginColumn; 543 jj_consume_token(ENUM); 544 if (line == -1) {line=token.beginLine; column=token.beginColumn;} 545 name = Name(); 546 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 547 case IMPLEMENTS: 548 impList = ImplementsList(false); 549 break; 550 default: 551 jj_la1[17] = jj_gen; 552 ; 553 } 554 jj_consume_token(LBRACE); 555 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 556 case IDENTIFIER: 557 case AT: 558 entries = new LinkedList(); 559 entry = EnumConstantDeclaration(); 560 entries.add(entry); 561 label_9: 562 while (true) { 563 if (jj_2_3(2)) { 564 ; 565 } else { 566 break label_9; 567 } 568 jj_consume_token(COMMA); 569 entry = EnumConstantDeclaration(); 570 entries.add(entry); 571 } 572 break; 573 default: 574 jj_la1[18] = jj_gen; 575 ; 576 } 577 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 578 case COMMA: 579 jj_consume_token(COMMA); 580 break; 581 default: 582 jj_la1[19] = jj_gen; 583 ; 584 } 585 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 586 case SEMICOLON: 587 jj_consume_token(SEMICOLON); 588 label_10: 589 while (true) { 590 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 591 case ABSTRACT: 592 case BOOLEAN: 593 case BYTE: 594 case CHAR: 595 case CLASS: 596 case _DEFAULT: 597 case DOUBLE: 598 case ENUM: 599 case FINAL: 600 case FLOAT: 601 case INT: 602 case INTERFACE: 603 case LONG: 604 case NATIVE: 605 case PRIVATE: 606 case PROTECTED: 607 case PUBLIC: 608 case SHORT: 609 case STATIC: 610 case STRICTFP: 611 case SYNCHRONIZED: 612 case TRANSIENT: 613 case VOID: 614 case VOLATILE: 615 case IDENTIFIER: 616 case LBRACE: 617 case SEMICOLON: 618 case AT: 619 case LT: 620 ; 621 break; 622 default: 623 jj_la1[20] = jj_gen; 624 break label_10; 625 } 626 member = ClassOrInterfaceBodyDeclaration(false); 627 members = add(members, member); 628 } 629 break; 630 default: 631 jj_la1[21] = jj_gen; 632 ; 633 } 634 jj_consume_token(RBRACE); 635 EnumDeclaration tmp = new EnumDeclaration(line, column, token.endLine, token.endColumn, modifier.modifiers, modifier.annotations, null, impList, entries, members); 636 tmp.setNameExpr(name); 637 {if (true) return tmp;} 638 throw new Error("Missing return statement in function"); 639 } 640 641 final public EnumConstantDeclaration EnumConstantDeclaration() { 642 List annotations = null; 643 AnnotationExpr ann; 644 String name; 645 List args = null; 646 List classBody = null; 647 int line = -1; 648 int column = -1; 649 650 label_11: 651 while (true) { 652 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 653 case AT: 654 ; 655 break; 656 default: 657 jj_la1[22] = jj_gen; 658 break label_11; 659 } 660 ann = Annotation(); 661 annotations = add(annotations, ann); if(line==-1){line=ann.getBeginLine(); column=ann.getBeginColumn();} 662 } 663 jj_consume_token(IDENTIFIER); 664 name = token.image; if(line==-1){line=token.beginLine; column=token.beginColumn;} 665 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 666 case LPAREN: 667 args = Arguments(); 668 break; 669 default: 670 jj_la1[23] = jj_gen; 671 ; 672 } 673 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 674 case LBRACE: 675 classBody = ClassOrInterfaceBody(false); 676 break; 677 default: 678 jj_la1[24] = jj_gen; 679 ; 680 } 681 EnumConstantDeclaration tmp = new EnumConstantDeclaration(line, column, token.endLine, token.endColumn, annotations, name, args, classBody); 682 683 {if (true) return tmp;} 684 throw new Error("Missing return statement in function"); 685 } 686 687 final public List TypeParameters() { 688 List ret = new LinkedList(); 689 TypeParameter tp; 690 List annotations = null; 691 AnnotationExpr ann; 692 jj_consume_token(LT); 693 ret.add(new int[]{token.beginLine, token.beginColumn}); 694 label_12: 695 while (true) { 696 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 697 case AT: 698 ; 699 break; 700 default: 701 jj_la1[25] = jj_gen; 702 break label_12; 703 } 704 ann = Annotation(); 705 annotations = add(annotations, ann); 706 } 707 tp = TypeParameter(); 708 ret.add(tp); tp.setAnnotations(annotations); annotations = null; 709 label_13: 710 while (true) { 711 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 712 case COMMA: 713 ; 714 break; 715 default: 716 jj_la1[26] = jj_gen; 717 break label_13; 718 } 719 jj_consume_token(COMMA); 720 label_14: 721 while (true) { 722 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 723 case AT: 724 ; 725 break; 726 default: 727 jj_la1[27] = jj_gen; 728 break label_14; 729 } 730 ann = Annotation(); 731 annotations = add(annotations, ann); 732 } 733 tp = TypeParameter(); 734 ret.add(tp); tp.setAnnotations(annotations); annotations = null; 735 } 736 jj_consume_token(GT); 737 {if (true) return ret;} 738 throw new Error("Missing return statement in function"); 739 } 740 741 final public TypeParameter TypeParameter() { 742 String name; 743 List typeBound = null; 744 int line; 745 int column; 746 jj_consume_token(IDENTIFIER); 747 name = token.image; line=token.beginLine; column=token.beginColumn; 748 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 749 case EXTENDS: 750 typeBound = TypeBound(); 751 break; 752 default: 753 jj_la1[28] = jj_gen; 754 ; 755 } 756 {if (true) return new TypeParameter(line, column, token.endLine, token.endColumn,name, typeBound);} 757 throw new Error("Missing return statement in function"); 758 } 759 760 final public List TypeBound() { 761 List ret = new LinkedList(); 762 ClassOrInterfaceType cit; 763 AnnotationExpr ann; 764 List annotations = null; 765 jj_consume_token(EXTENDS); 766 label_15: 767 while (true) { 768 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 769 case AT: 770 ; 771 break; 772 default: 773 jj_la1[29] = jj_gen; 774 break label_15; 775 } 776 ann = Annotation(); 777 annotations = add(annotations, ann); 778 } 779 cit = ClassOrInterfaceType(); 780 cit.setAnnotations(annotations); ret.add(cit); annotations=null; 781 label_16: 782 while (true) { 783 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 784 case BIT_AND: 785 ; 786 break; 787 default: 788 jj_la1[30] = jj_gen; 789 break label_16; 790 } 791 jj_consume_token(BIT_AND); 792 label_17: 793 while (true) { 794 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 795 case AT: 796 ; 797 break; 798 default: 799 jj_la1[31] = jj_gen; 800 break label_17; 801 } 802 ann = Annotation(); 803 annotations = add(annotations, ann); 804 } 805 cit = ClassOrInterfaceType(); 806 cit.setAnnotations(annotations); ret.add(cit); annotations=null; 807 } 808 {if (true) return ret;} 809 throw new Error("Missing return statement in function"); 810 } 811 812 final public List ClassOrInterfaceBody(boolean isInterface) { 813 List ret = new LinkedList(); 814 BodyDeclaration member; 815 jj_consume_token(LBRACE); 816 label_18: 817 while (true) { 818 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 819 case ABSTRACT: 820 case BOOLEAN: 821 case BYTE: 822 case CHAR: 823 case CLASS: 824 case _DEFAULT: 825 case DOUBLE: 826 case ENUM: 827 case FINAL: 828 case FLOAT: 829 case INT: 830 case INTERFACE: 831 case LONG: 832 case NATIVE: 833 case PRIVATE: 834 case PROTECTED: 835 case PUBLIC: 836 case SHORT: 837 case STATIC: 838 case STRICTFP: 839 case SYNCHRONIZED: 840 case TRANSIENT: 841 case VOID: 842 case VOLATILE: 843 case IDENTIFIER: 844 case LBRACE: 845 case SEMICOLON: 846 case AT: 847 case LT: 848 ; 849 break; 850 default: 851 jj_la1[32] = jj_gen; 852 break label_18; 853 } 854 member = ClassOrInterfaceBodyDeclaration(isInterface); 855 ret.add(member); 856 } 857 jj_consume_token(RBRACE); 858 {if (true) return ret;} 859 throw new Error("Missing return statement in function"); 860 } 861 862 final public BodyDeclaration ClassOrInterfaceBodyDeclaration(boolean isInterface) { 863 boolean isNestedInterface = false; 864 Modifier modifier; 865 Modifier modifier2 = null; 866 int aux = 0; 867 BodyDeclaration ret; 868 boolean isDefault = false; 869 870 if (jj_2_6(2)) { 871 ret = InitializerDeclaration(); 872 if (isInterface) 873 throwParseException(token, "An interface cannot have initializers"); 874 } else { 875 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 876 case ABSTRACT: 877 case BOOLEAN: 878 case BYTE: 879 case CHAR: 880 case CLASS: 881 case _DEFAULT: 882 case DOUBLE: 883 case ENUM: 884 case FINAL: 885 case FLOAT: 886 case INT: 887 case INTERFACE: 888 case LONG: 889 case NATIVE: 890 case PRIVATE: 891 case PROTECTED: 892 case PUBLIC: 893 case SHORT: 894 case STATIC: 895 case STRICTFP: 896 case SYNCHRONIZED: 897 case TRANSIENT: 898 case VOID: 899 case VOLATILE: 900 case IDENTIFIER: 901 case AT: 902 case LT: 903 modifier = Modifiers(); 904 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 905 case _DEFAULT: 906 jj_consume_token(_DEFAULT); 907 modifier2 = Modifiers(); 908 if(!isInterface) 909 { 910 throwParseException(token, "An interface cannot have default members"); 911 } 912 isDefault = true; 913 break; 914 default: 915 jj_la1[33] = jj_gen; 916 ; 917 } 918 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 919 case CLASS: 920 case INTERFACE: 921 ret = ClassOrInterfaceDeclaration(modifier); 922 break; 923 case ENUM: 924 ret = EnumDeclaration(modifier); 925 break; 926 case AT: 927 ret = AnnotationTypeDeclaration(modifier); 928 break; 929 default: 930 jj_la1[34] = jj_gen; 931 if (jj_2_4(2147483647)) { 932 ret = ConstructorDeclaration(modifier); 933 } else if (jj_2_5(2147483647)) { 934 ret = FieldDeclaration(modifier); 935 } else { 936 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 937 case BOOLEAN: 938 case BYTE: 939 case CHAR: 940 case DOUBLE: 941 case FLOAT: 942 case INT: 943 case LONG: 944 case SHORT: 945 case VOID: 946 case IDENTIFIER: 947 case LT: 948 ret = MethodDeclaration(modifier); 949 if(isDefault && ret!= null && ((MethodDeclaration)ret).getBody() == null) 950 { 951 throwParseException(token, "\"default\" methods must have a body"); 952 } 953 ((MethodDeclaration)ret).setDefault(isDefault); 954 if(modifier2!= null) 955 { 956 aux = modifier2.modifiers; 957 } 958 ((MethodDeclaration)ret).setModifiers(addModifier(modifier.modifiers, aux, token)); 959 break; 960 default: 961 jj_la1[35] = jj_gen; 962 jj_consume_token(-1); 963 throw new ParseException(); 964 } 965 } 966 } 967 if(isDefault && ! (ret instanceof MethodDeclaration)) 968 { 969 throwParseException(token, "Just methods can have the keyword \"default\"."); 970 } 971 break; 972 case SEMICOLON: 973 jj_consume_token(SEMICOLON); 974 ret = new EmptyMemberDeclaration(token.beginLine, token.beginColumn, token.endLine, token.endColumn); 975 break; 976 default: 977 jj_la1[36] = jj_gen; 978 jj_consume_token(-1); 979 throw new ParseException(); 980 } 981 } 982 {if (true) return ret;} 983 throw new Error("Missing return statement in function"); 984 } 985 986 final public FieldDeclaration FieldDeclaration(Modifier modifier) { 987 Type type; 988 List variables = new LinkedList(); 989 VariableDeclarator val; 990 // Modifiers are already matched in the caller 991 type = Type(); 992 val = VariableDeclarator(); 993 variables.add(val); 994 label_19: 995 while (true) { 996 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 997 case COMMA: 998 ; 999 break; 1000 default: 1001 jj_la1[37] = jj_gen; 1002 break label_19; 1003 } 1004 jj_consume_token(COMMA); 1005 val = VariableDeclarator(); 1006 variables.add(val); 1007 } 1008 jj_consume_token(SEMICOLON); 1009 int line = modifier.beginLine; 1010 int column = modifier.beginColumn; 1011 if (line == -1) { line=type.getBeginLine(); column=type.getBeginColumn(); } 1012 {if (true) return new FieldDeclaration(line, column, token.endLine, token.endColumn, modifier.modifiers, modifier.annotations, type, variables);} 1013 throw new Error("Missing return statement in function"); 1014 } 1015 1016 final public VariableDeclarator VariableDeclarator() { 1017 VariableDeclaratorId id; 1018 Expression init = null; 1019 id = VariableDeclaratorId(); 1020 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1021 case ASSIGN: 1022 jj_consume_token(ASSIGN); 1023 init = VariableInitializer(); 1024 break; 1025 default: 1026 jj_la1[38] = jj_gen; 1027 ; 1028 } 1029 {if (true) return new VariableDeclarator(id.getBeginLine(), id.getBeginColumn(), token.endLine, token.endColumn, id, init);} 1030 throw new Error("Missing return statement in function"); 1031 } 1032 1033 final public VariableDeclaratorId VariableDeclaratorId() { 1034 String name; 1035 int arrayCount = 0; 1036 int line; 1037 int column; 1038 jj_consume_token(IDENTIFIER); 1039 name = token.image; line=token.beginLine; column=token.beginColumn; 1040 label_20: 1041 while (true) { 1042 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1043 case LBRACKET: 1044 ; 1045 break; 1046 default: 1047 jj_la1[39] = jj_gen; 1048 break label_20; 1049 } 1050 jj_consume_token(LBRACKET); 1051 jj_consume_token(RBRACKET); 1052 arrayCount++; 1053 } 1054 {if (true) return new VariableDeclaratorId(line, column, token.endLine, token.endColumn,name, arrayCount);} 1055 throw new Error("Missing return statement in function"); 1056 } 1057 1058 final public Expression VariableInitializer() { 1059 Expression ret; 1060 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1061 case LBRACE: 1062 ret = ArrayInitializer(); 1063 break; 1064 case BOOLEAN: 1065 case BYTE: 1066 case CHAR: 1067 case DOUBLE: 1068 case FALSE: 1069 case FLOAT: 1070 case INT: 1071 case LONG: 1072 case NEW: 1073 case NULL: 1074 case SHORT: 1075 case SUPER: 1076 case THIS: 1077 case TRUE: 1078 case VOID: 1079 case LONG_LITERAL: 1080 case INTEGER_LITERAL: 1081 case FLOATING_POINT_LITERAL: 1082 case CHARACTER_LITERAL: 1083 case STRING_LITERAL: 1084 case IDENTIFIER: 1085 case LPAREN: 1086 case BANG: 1087 case TILDE: 1088 case INCR: 1089 case DECR: 1090 case PLUS: 1091 case MINUS: 1092 ret = Expression(); 1093 break; 1094 default: 1095 jj_la1[40] = jj_gen; 1096 jj_consume_token(-1); 1097 throw new ParseException(); 1098 } 1099 {if (true) return ret;} 1100 throw new Error("Missing return statement in function"); 1101 } 1102 1103 final public ArrayInitializerExpr ArrayInitializer() { 1104 List values = null; 1105 Expression val; 1106 int line; 1107 int column; 1108 jj_consume_token(LBRACE); 1109 line=token.beginLine; column=token.beginColumn; 1110 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1111 case BOOLEAN: 1112 case BYTE: 1113 case CHAR: 1114 case DOUBLE: 1115 case FALSE: 1116 case FLOAT: 1117 case INT: 1118 case LONG: 1119 case NEW: 1120 case NULL: 1121 case SHORT: 1122 case SUPER: 1123 case THIS: 1124 case TRUE: 1125 case VOID: 1126 case LONG_LITERAL: 1127 case INTEGER_LITERAL: 1128 case FLOATING_POINT_LITERAL: 1129 case CHARACTER_LITERAL: 1130 case STRING_LITERAL: 1131 case IDENTIFIER: 1132 case LPAREN: 1133 case LBRACE: 1134 case BANG: 1135 case TILDE: 1136 case INCR: 1137 case DECR: 1138 case PLUS: 1139 case MINUS: 1140 val = VariableInitializer(); 1141 values = add(values, val); 1142 label_21: 1143 while (true) { 1144 if (jj_2_7(2)) { 1145 ; 1146 } else { 1147 break label_21; 1148 } 1149 jj_consume_token(COMMA); 1150 val = VariableInitializer(); 1151 values = add(values, val); 1152 } 1153 break; 1154 default: 1155 jj_la1[41] = jj_gen; 1156 ; 1157 } 1158 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1159 case COMMA: 1160 jj_consume_token(COMMA); 1161 break; 1162 default: 1163 jj_la1[42] = jj_gen; 1164 ; 1165 } 1166 jj_consume_token(RBRACE); 1167 {if (true) return new ArrayInitializerExpr(line, column, token.endLine, token.endColumn,values);} 1168 throw new Error("Missing return statement in function"); 1169 } 1170 1171 final public MethodDeclaration MethodDeclaration(Modifier modifier) { 1172 List typeParameters = null; 1173 Type type; 1174 NameExpr name; 1175 List parameters; 1176 int arrayCount = 0; 1177 List throws_ = null; 1178 BlockStmt block = null; 1179 int line = modifier.beginLine; 1180 int column = modifier.beginColumn; 1181 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1182 case LT: 1183 typeParameters = TypeParameters(); 1184 int[] lineCol=(int[])typeParameters.remove(0); if(line==-1){ line=lineCol[0]; column=lineCol[1];} 1185 break; 1186 default: 1187 jj_la1[43] = jj_gen; 1188 ; 1189 } 1190 type = ResultType(); 1191 if(line==-1){line=type.getBeginLine(); column=type.getBeginColumn();} 1192 name = Name(); 1193 parameters = FormalParameters(); 1194 label_22: 1195 while (true) { 1196 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1197 case LBRACKET: 1198 ; 1199 break; 1200 default: 1201 jj_la1[44] = jj_gen; 1202 break label_22; 1203 } 1204 jj_consume_token(LBRACKET); 1205 jj_consume_token(RBRACKET); 1206 arrayCount++; 1207 } 1208 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1209 case THROWS: 1210 jj_consume_token(THROWS); 1211 throws_ = NameList(); 1212 break; 1213 default: 1214 jj_la1[45] = jj_gen; 1215 ; 1216 } 1217 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1218 case LBRACE: 1219 block = Block(); 1220 break; 1221 case SEMICOLON: 1222 jj_consume_token(SEMICOLON); 1223 break; 1224 default: 1225 jj_la1[46] = jj_gen; 1226 jj_consume_token(-1); 1227 throw new ParseException(); 1228 } 1229 MethodDeclaration tmp = new MethodDeclaration(line, column, token.endLine, token.endColumn, modifier.modifiers, modifier.annotations, typeParameters, type, null, parameters, arrayCount, throws_, block); 1230 tmp.setNameExpr(name); 1231 {if (true) return tmp;} 1232 throw new Error("Missing return statement in function"); 1233 } 1234 1235 final public List FormalParameters() { 1236 List ret = null; 1237 Parameter par; 1238 jj_consume_token(LPAREN); 1239 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1240 case ABSTRACT: 1241 case BOOLEAN: 1242 case BYTE: 1243 case CHAR: 1244 case DOUBLE: 1245 case FINAL: 1246 case FLOAT: 1247 case INT: 1248 case LONG: 1249 case NATIVE: 1250 case PRIVATE: 1251 case PROTECTED: 1252 case PUBLIC: 1253 case SHORT: 1254 case STATIC: 1255 case STRICTFP: 1256 case SYNCHRONIZED: 1257 case TRANSIENT: 1258 case VOLATILE: 1259 case IDENTIFIER: 1260 case AT: 1261 par = FormalParameter(); 1262 ret = add(ret, par); 1263 label_23: 1264 while (true) { 1265 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1266 case COMMA: 1267 ; 1268 break; 1269 default: 1270 jj_la1[47] = jj_gen; 1271 break label_23; 1272 } 1273 jj_consume_token(COMMA); 1274 par = FormalParameter(); 1275 ret = add(ret, par); 1276 } 1277 break; 1278 default: 1279 jj_la1[48] = jj_gen; 1280 ; 1281 } 1282 jj_consume_token(RPAREN); 1283 {if (true) return ret;} 1284 throw new Error("Missing return statement in function"); 1285 } 1286 1287 final public List FormalLambdaParameters() { 1288 List ret = null; 1289 Parameter par; 1290 jj_consume_token(COMMA); 1291 par = FormalParameter(); 1292 ret = add(ret, par); 1293 label_24: 1294 while (true) { 1295 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1296 case COMMA: 1297 ; 1298 break; 1299 default: 1300 jj_la1[49] = jj_gen; 1301 break label_24; 1302 } 1303 jj_consume_token(COMMA); 1304 par = FormalParameter(); 1305 ret = add(ret, par); 1306 } 1307 {if (true) return ret;} 1308 throw new Error("Missing return statement in function"); 1309 } 1310 1311 final public List InferredLambdaParameters() { 1312 List ret = null; 1313 VariableDeclaratorId id; 1314 jj_consume_token(COMMA); 1315 id = VariableDeclaratorId(); 1316 ret = add(ret, new Parameter(id.getBeginLine(), id.getBeginColumn(), id.getEndLine(), id.getEndColumn(), 0, null, new UnknownType(), false, id)); 1317 label_25: 1318 while (true) { 1319 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1320 case COMMA: 1321 ; 1322 break; 1323 default: 1324 jj_la1[50] = jj_gen; 1325 break label_25; 1326 } 1327 jj_consume_token(COMMA); 1328 id = VariableDeclaratorId(); 1329 ret = add(ret, new Parameter(id.getBeginLine(), id.getBeginColumn(), id.getEndLine(), id.getEndColumn(), 0, null, new UnknownType(), false, id)); 1330 } 1331 {if (true) return ret;} 1332 throw new Error("Missing return statement in function"); 1333 } 1334 1335 final public Parameter FormalParameter() { 1336 Modifier modifier; 1337 Type type; 1338 boolean isVarArg = false; 1339 VariableDeclaratorId id; 1340 modifier = Modifiers(); 1341 type = Type(); 1342 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1343 case ELLIPSIS: 1344 jj_consume_token(ELLIPSIS); 1345 isVarArg = true; 1346 break; 1347 default: 1348 jj_la1[51] = jj_gen; 1349 ; 1350 } 1351 id = VariableDeclaratorId(); 1352 int line = modifier.beginLine; 1353 int column = modifier.beginColumn; 1354 if(line==-1){ line=type.getBeginLine(); column=type.getBeginColumn(); } 1355 {if (true) return new Parameter(line, column, token.endLine, token.endColumn, modifier.modifiers, modifier.annotations, type, isVarArg, id);} 1356 throw new Error("Missing return statement in function"); 1357 } 1358 1359 final public ConstructorDeclaration ConstructorDeclaration(Modifier modifier) { 1360 List typeParameters = null; 1361 NameExpr name; 1362 List parameters; 1363 List throws_ = null; 1364 ExplicitConstructorInvocationStmt exConsInv = null; 1365 List stmts; 1366 int line = modifier.beginLine; 1367 int column = modifier.beginColumn; 1368 int bbLine = 0; 1369 int bbColumn = 0; 1370 int beLine = 0; 1371 int beColumn = 0; 1372 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1373 case LT: 1374 typeParameters = TypeParameters(); 1375 int[] lineCol=(int[])typeParameters.remove(0); if(line==-1){ line=lineCol[0]; column=lineCol[1];} 1376 break; 1377 default: 1378 jj_la1[52] = jj_gen; 1379 ; 1380 } 1381 // Modifiers matched in the caller 1382 name = SimpleName(); 1383 if(line==-1){line=token.beginLine; column=token.beginColumn;} 1384 parameters = FormalParameters(); 1385 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1386 case THROWS: 1387 jj_consume_token(THROWS); 1388 throws_ = NameList(); 1389 break; 1390 default: 1391 jj_la1[53] = jj_gen; 1392 ; 1393 } 1394 jj_consume_token(LBRACE); 1395 bbLine=token.beginLine; bbColumn=token.beginColumn; 1396 if (jj_2_8(2147483647)) { 1397 exConsInv = ExplicitConstructorInvocation(); 1398 } else { 1399 ; 1400 } 1401 stmts = Statements(); 1402 jj_consume_token(RBRACE); 1403 if (exConsInv != null) { 1404 stmts = add(0, stmts, exConsInv); 1405 } 1406 ConstructorDeclaration tmp = new ConstructorDeclaration(line, column, token.endLine, token.endColumn, modifier.modifiers, modifier.annotations, typeParameters, null, parameters, throws_, new BlockStmt(bbLine, bbColumn, token.endLine, token.endColumn, stmts)); 1407 tmp.setNameExpr(name); 1408 {if (true) return tmp;} 1409 throw new Error("Missing return statement in function"); 1410 } 1411 1412 final public ExplicitConstructorInvocationStmt ExplicitConstructorInvocation() { 1413 boolean isThis = false; 1414 List args; 1415 Expression expr = null; 1416 List typeArgs = null; 1417 int line = -1; 1418 int column = 0; 1419 if (jj_2_10(2147483647)) { 1420 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1421 case LT: 1422 case 132: 1423 typeArgs = TypeArguments(); 1424 int[] lineCol=(int[])typeArgs.remove(0); line=lineCol[0]; column=lineCol[1]; 1425 break; 1426 default: 1427 jj_la1[54] = jj_gen; 1428 ; 1429 } 1430 jj_consume_token(THIS); 1431 if (line == -1) {line=token.beginLine; column=token.beginColumn;} isThis = true; 1432 args = Arguments(); 1433 jj_consume_token(SEMICOLON); 1434 } else { 1435 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1436 case BOOLEAN: 1437 case BYTE: 1438 case CHAR: 1439 case DOUBLE: 1440 case FALSE: 1441 case FLOAT: 1442 case INT: 1443 case LONG: 1444 case NEW: 1445 case NULL: 1446 case SHORT: 1447 case SUPER: 1448 case THIS: 1449 case TRUE: 1450 case VOID: 1451 case LONG_LITERAL: 1452 case INTEGER_LITERAL: 1453 case FLOATING_POINT_LITERAL: 1454 case CHARACTER_LITERAL: 1455 case STRING_LITERAL: 1456 case IDENTIFIER: 1457 case LPAREN: 1458 case LT: 1459 case 132: 1460 if (jj_2_9(2147483647)) { 1461 expr = PrimaryExpressionWithoutSuperSuffix(); 1462 jj_consume_token(DOT); 1463 line=expr.getBeginLine(); column=expr.getBeginColumn(); 1464 } else { 1465 ; 1466 } 1467 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1468 case LT: 1469 case 132: 1470 typeArgs = TypeArguments(); 1471 int[] lineCol=(int[])typeArgs.remove(0); if (line == -1) {line=lineCol[0]; column=lineCol[1];} 1472 break; 1473 default: 1474 jj_la1[55] = jj_gen; 1475 ; 1476 } 1477 jj_consume_token(SUPER); 1478 if (line == -1) {line=token.beginLine; column=token.beginColumn;} 1479 args = Arguments(); 1480 jj_consume_token(SEMICOLON); 1481 break; 1482 default: 1483 jj_la1[56] = jj_gen; 1484 jj_consume_token(-1); 1485 throw new ParseException(); 1486 } 1487 } 1488 {if (true) return new ExplicitConstructorInvocationStmt(line, column, token.endLine, token.endColumn,typeArgs, isThis, expr, args);} 1489 throw new Error("Missing return statement in function"); 1490 } 1491 1492 final public List Statements() { 1493 List ret = null; 1494 Statement stmt; 1495 label_26: 1496 while (true) { 1497 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1498 case ABSTRACT: 1499 case ASSERT: 1500 case BOOLEAN: 1501 case BREAK: 1502 case BYTE: 1503 case CHAR: 1504 case CLASS: 1505 case CONTINUE: 1506 case DO: 1507 case DOUBLE: 1508 case FALSE: 1509 case FINAL: 1510 case FLOAT: 1511 case FOR: 1512 case IF: 1513 case INT: 1514 case INTERFACE: 1515 case LONG: 1516 case NATIVE: 1517 case NEW: 1518 case NULL: 1519 case PRIVATE: 1520 case PROTECTED: 1521 case PUBLIC: 1522 case RETURN: 1523 case SHORT: 1524 case STATIC: 1525 case STRICTFP: 1526 case SUPER: 1527 case SWITCH: 1528 case SYNCHRONIZED: 1529 case THIS: 1530 case THROW: 1531 case TRANSIENT: 1532 case TRUE: 1533 case TRY: 1534 case VOID: 1535 case VOLATILE: 1536 case WHILE: 1537 case LONG_LITERAL: 1538 case INTEGER_LITERAL: 1539 case FLOATING_POINT_LITERAL: 1540 case CHARACTER_LITERAL: 1541 case STRING_LITERAL: 1542 case IDENTIFIER: 1543 case LPAREN: 1544 case LBRACE: 1545 case SEMICOLON: 1546 case AT: 1547 case INCR: 1548 case DECR: 1549 ; 1550 break; 1551 default: 1552 jj_la1[57] = jj_gen; 1553 break label_26; 1554 } 1555 stmt = BlockStatement(); 1556 ret = add(ret, stmt); 1557 } 1558 {if (true) return ret;} 1559 throw new Error("Missing return statement in function"); 1560 } 1561 1562 final public InitializerDeclaration InitializerDeclaration() { 1563 BlockStmt block; 1564 int line = -1; 1565 int column = 0; 1566 boolean isStatic = false; 1567 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1568 case STATIC: 1569 jj_consume_token(STATIC); 1570 isStatic = true; line=token.beginLine; column=token.beginColumn; 1571 break; 1572 default: 1573 jj_la1[58] = jj_gen; 1574 ; 1575 } 1576 block = Block(); 1577 if(line==-1){line=block.getBeginLine(); column=block.getBeginColumn();} 1578 {if (true) return new InitializerDeclaration(line, column, token.endLine, token.endColumn, isStatic, block);} 1579 throw new Error("Missing return statement in function"); 1580 } 1581 1582/* 1583 * Type, name and expression syntax follows. 1584 */ 1585 final public Type Type() { 1586 Type ret; 1587 if (jj_2_11(2)) { 1588 ret = ReferenceType(); 1589 } else { 1590 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1591 case BOOLEAN: 1592 case BYTE: 1593 case CHAR: 1594 case DOUBLE: 1595 case FLOAT: 1596 case INT: 1597 case LONG: 1598 case SHORT: 1599 ret = PrimitiveType(); 1600 break; 1601 default: 1602 jj_la1[59] = jj_gen; 1603 jj_consume_token(-1); 1604 throw new ParseException(); 1605 } 1606 } 1607 {if (true) return ret;} 1608 throw new Error("Missing return statement in function"); 1609 } 1610 1611 final public ReferenceType ReferenceType() { 1612 Type type; 1613 int arrayCount = 0; 1614 List annotations = null; 1615 List accum= null; 1616 AnnotationExpr ann; 1617 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1618 case BOOLEAN: 1619 case BYTE: 1620 case CHAR: 1621 case DOUBLE: 1622 case FLOAT: 1623 case INT: 1624 case LONG: 1625 case SHORT: 1626 type = PrimitiveType(); 1627 label_27: 1628 while (true) { 1629 label_28: 1630 while (true) { 1631 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1632 case AT: 1633 ; 1634 break; 1635 default: 1636 jj_la1[60] = jj_gen; 1637 break label_28; 1638 } 1639 ann = Annotation(); 1640 annotations = add(annotations, ann); 1641 } 1642 jj_consume_token(LBRACKET); 1643 jj_consume_token(RBRACKET); 1644 arrayCount++; accum = add(accum, annotations); annotations= null; 1645 if (jj_2_12(2)) { 1646 ; 1647 } else { 1648 break label_27; 1649 } 1650 } 1651 break; 1652 case IDENTIFIER: 1653 type = ClassOrInterfaceType(); 1654 label_29: 1655 while (true) { 1656 if (jj_2_13(2)) { 1657 ; 1658 } else { 1659 break label_29; 1660 } 1661 label_30: 1662 while (true) { 1663 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1664 case AT: 1665 ; 1666 break; 1667 default: 1668 jj_la1[61] = jj_gen; 1669 break label_30; 1670 } 1671 ann = Annotation(); 1672 annotations = add(annotations, ann); 1673 } 1674 jj_consume_token(LBRACKET); 1675 jj_consume_token(RBRACKET); 1676 arrayCount++; accum = add(accum, annotations); annotations= null; 1677 } 1678 break; 1679 default: 1680 jj_la1[62] = jj_gen; 1681 jj_consume_token(-1); 1682 throw new ParseException(); 1683 } 1684 {if (true) return new ReferenceType(type.getBeginLine(), type.getBeginColumn(), token.endLine, token.endColumn, type, arrayCount, null, accum);} 1685 throw new Error("Missing return statement in function"); 1686 } 1687 1688 final public ClassOrInterfaceType ClassOrInterfaceType() { 1689 ClassOrInterfaceType ret; 1690 String name; 1691 List typeArgs = null; 1692 int line; 1693 int column; 1694 List annotations = null; 1695 AnnotationExpr ann; 1696 jj_consume_token(IDENTIFIER); 1697 line=token.beginLine; column=token.beginColumn; 1698 name = token.image; 1699 if (jj_2_14(2)) { 1700 typeArgs = TypeArguments(); 1701 typeArgs.remove(0); 1702 } else { 1703 ; 1704 } 1705 ret = new ClassOrInterfaceType(line, column, token.endLine, token.endColumn,null, name, typeArgs); 1706 label_31: 1707 while (true) { 1708 if (jj_2_15(2)) { 1709 ; 1710 } else { 1711 break label_31; 1712 } 1713 jj_consume_token(DOT); 1714 label_32: 1715 while (true) { 1716 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1717 case AT: 1718 ; 1719 break; 1720 default: 1721 jj_la1[63] = jj_gen; 1722 break label_32; 1723 } 1724 ann = Annotation(); 1725 annotations = add(annotations, ann); 1726 } 1727 jj_consume_token(IDENTIFIER); 1728 name = token.image; 1729 if (jj_2_16(2)) { 1730 typeArgs = TypeArguments(); 1731 typeArgs.remove(0); 1732 } else { 1733 ; 1734 } 1735 ret = new ClassOrInterfaceType(line, column, token.endLine, token.endColumn,ret, name, typeArgs); ret.setAnnotations(annotations); annotations = null; 1736 } 1737 {if (true) return ret;} 1738 throw new Error("Missing return statement in function"); 1739 } 1740 1741 final public List TypeArguments() { 1742 List ret = new LinkedList(); 1743 Type type; 1744 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1745 case LT: 1746 jj_consume_token(LT); 1747 ret.add(new int[]{token.beginLine, token.beginColumn}); 1748 type = TypeArgument(); 1749 ret.add(type); 1750 label_33: 1751 while (true) { 1752 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1753 case COMMA: 1754 ; 1755 break; 1756 default: 1757 jj_la1[64] = jj_gen; 1758 break label_33; 1759 } 1760 jj_consume_token(COMMA); 1761 type = TypeArgument(); 1762 ret.add(type); 1763 } 1764 jj_consume_token(GT); 1765 {if (true) return ret;} 1766 break; 1767 case 132: 1768 jj_consume_token(132); 1769 ret.add(null); 1770 {if (true) return ret;} 1771 break; 1772 default: 1773 jj_la1[65] = jj_gen; 1774 jj_consume_token(-1); 1775 throw new ParseException(); 1776 } 1777 throw new Error("Missing return statement in function"); 1778 } 1779 1780 final public Type TypeArgument() { 1781 Type ret; 1782 List annotations = null; 1783 AnnotationExpr ann; 1784 label_34: 1785 while (true) { 1786 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1787 case AT: 1788 ; 1789 break; 1790 default: 1791 jj_la1[66] = jj_gen; 1792 break label_34; 1793 } 1794 ann = Annotation(); 1795 annotations = add(annotations, ann); 1796 } 1797 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1798 case BOOLEAN: 1799 case BYTE: 1800 case CHAR: 1801 case DOUBLE: 1802 case FLOAT: 1803 case INT: 1804 case LONG: 1805 case SHORT: 1806 case IDENTIFIER: 1807 ret = ReferenceType(); 1808 break; 1809 case HOOK: 1810 ret = Wildcard(); 1811 break; 1812 default: 1813 jj_la1[67] = jj_gen; 1814 jj_consume_token(-1); 1815 throw new ParseException(); 1816 } 1817 ret.setAnnotations(annotations); {if (true) return ret;} 1818 throw new Error("Missing return statement in function"); 1819 } 1820 1821 final public WildcardType Wildcard() { 1822 ReferenceType ext = null; 1823 ReferenceType sup = null; 1824 int line; 1825 int column; 1826 AnnotationExpr ann; 1827 List annotations = null; 1828 jj_consume_token(HOOK); 1829 line=token.beginLine; column=token.beginColumn; 1830 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1831 case EXTENDS: 1832 case SUPER: 1833 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1834 case EXTENDS: 1835 jj_consume_token(EXTENDS); 1836 label_35: 1837 while (true) { 1838 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1839 case AT: 1840 ; 1841 break; 1842 default: 1843 jj_la1[68] = jj_gen; 1844 break label_35; 1845 } 1846 ann = Annotation(); 1847 annotations = add(annotations, ann); 1848 } 1849 ext = ReferenceType(); 1850 ext.setAnnotations(annotations); 1851 break; 1852 case SUPER: 1853 jj_consume_token(SUPER); 1854 label_36: 1855 while (true) { 1856 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1857 case AT: 1858 ; 1859 break; 1860 default: 1861 jj_la1[69] = jj_gen; 1862 break label_36; 1863 } 1864 ann = Annotation(); 1865 annotations = add(annotations, ann); 1866 } 1867 sup = ReferenceType(); 1868 sup.setAnnotations(annotations); 1869 break; 1870 default: 1871 jj_la1[70] = jj_gen; 1872 jj_consume_token(-1); 1873 throw new ParseException(); 1874 } 1875 break; 1876 default: 1877 jj_la1[71] = jj_gen; 1878 ; 1879 } 1880 {if (true) return new WildcardType(line, column, token.endLine, token.endColumn,ext, sup);} 1881 throw new Error("Missing return statement in function"); 1882 } 1883 1884 final public PrimitiveType PrimitiveType() { 1885 PrimitiveType ret; 1886 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1887 case BOOLEAN: 1888 jj_consume_token(BOOLEAN); 1889 ret = new PrimitiveType(token.beginLine, token.beginColumn, token.endLine, token.endColumn, PrimitiveType.Primitive.Boolean); 1890 break; 1891 case CHAR: 1892 jj_consume_token(CHAR); 1893 ret = new PrimitiveType(token.beginLine, token.beginColumn, token.endLine, token.endColumn, PrimitiveType.Primitive.Char); 1894 break; 1895 case BYTE: 1896 jj_consume_token(BYTE); 1897 ret = new PrimitiveType(token.beginLine, token.beginColumn, token.endLine, token.endColumn, PrimitiveType.Primitive.Byte); 1898 break; 1899 case SHORT: 1900 jj_consume_token(SHORT); 1901 ret = new PrimitiveType(token.beginLine, token.beginColumn, token.endLine, token.endColumn, PrimitiveType.Primitive.Short); 1902 break; 1903 case INT: 1904 jj_consume_token(INT); 1905 ret = new PrimitiveType(token.beginLine, token.beginColumn, token.endLine, token.endColumn, PrimitiveType.Primitive.Int); 1906 break; 1907 case LONG: 1908 jj_consume_token(LONG); 1909 ret = new PrimitiveType(token.beginLine, token.beginColumn, token.endLine, token.endColumn, PrimitiveType.Primitive.Long); 1910 break; 1911 case FLOAT: 1912 jj_consume_token(FLOAT); 1913 ret = new PrimitiveType(token.beginLine, token.beginColumn, token.endLine, token.endColumn, PrimitiveType.Primitive.Float); 1914 break; 1915 case DOUBLE: 1916 jj_consume_token(DOUBLE); 1917 ret = new PrimitiveType(token.beginLine, token.beginColumn, token.endLine, token.endColumn, PrimitiveType.Primitive.Double); 1918 break; 1919 default: 1920 jj_la1[72] = jj_gen; 1921 jj_consume_token(-1); 1922 throw new ParseException(); 1923 } 1924 {if (true) return ret;} 1925 throw new Error("Missing return statement in function"); 1926 } 1927 1928 final public Type ResultType() { 1929 Type ret; 1930 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1931 case VOID: 1932 jj_consume_token(VOID); 1933 ret = new VoidType(token.beginLine, token.beginColumn, token.endLine, token.endColumn); 1934 break; 1935 case BOOLEAN: 1936 case BYTE: 1937 case CHAR: 1938 case DOUBLE: 1939 case FLOAT: 1940 case INT: 1941 case LONG: 1942 case SHORT: 1943 case IDENTIFIER: 1944 ret = Type(); 1945 break; 1946 default: 1947 jj_la1[73] = jj_gen; 1948 jj_consume_token(-1); 1949 throw new ParseException(); 1950 } 1951 {if (true) return ret;} 1952 throw new Error("Missing return statement in function"); 1953 } 1954 1955 final public NameExpr Name() { 1956 NameExpr ret; 1957 jj_consume_token(IDENTIFIER); 1958 ret = new NameExpr(token.beginLine, token.beginColumn, token.endLine, token.endColumn, token.image); 1959 label_37: 1960 while (true) { 1961 if (jj_2_17(2)) { 1962 ; 1963 } else { 1964 break label_37; 1965 } 1966 jj_consume_token(DOT); 1967 jj_consume_token(IDENTIFIER); 1968 ret = new QualifiedNameExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, token.image); 1969 } 1970 {if (true) return ret;} 1971 throw new Error("Missing return statement in function"); 1972 } 1973 1974 final public List ClassOrInterfaceTypeList() { 1975 List ret = new LinkedList(); 1976 ClassOrInterfaceType type; 1977 List annotations= null; 1978 AnnotationExpr ann; 1979 label_38: 1980 while (true) { 1981 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1982 case AT: 1983 ; 1984 break; 1985 default: 1986 jj_la1[74] = jj_gen; 1987 break label_38; 1988 } 1989 ann = Annotation(); 1990 annotations = add(annotations, ann); 1991 } 1992 type = ClassOrInterfaceType(); 1993 type.setAnnotations(annotations); ret.add(type); annotations=null; 1994 label_39: 1995 while (true) { 1996 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 1997 case COMMA: 1998 ; 1999 break; 2000 default: 2001 jj_la1[75] = jj_gen; 2002 break label_39; 2003 } 2004 jj_consume_token(COMMA); 2005 label_40: 2006 while (true) { 2007 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2008 case AT: 2009 ; 2010 break; 2011 default: 2012 jj_la1[76] = jj_gen; 2013 break label_40; 2014 } 2015 ann = Annotation(); 2016 annotations = add(annotations, ann); 2017 } 2018 type = ClassOrInterfaceType(); 2019 type.setAnnotations(annotations); ret.add(type); annotations=null; 2020 } 2021 {if (true) return ret;} 2022 throw new Error("Missing return statement in function"); 2023 } 2024 2025 final public NameExpr SimpleName() { 2026 NameExpr ret; 2027 jj_consume_token(IDENTIFIER); 2028 ret = new NameExpr(token.beginLine, token.beginColumn, token.endLine, token.endColumn, token.image); 2029 {if (true) return ret;} 2030 throw new Error("Missing return statement in function"); 2031 } 2032 2033 final public List NameList() { 2034 List ret = new LinkedList(); 2035 NameExpr name; 2036 name = Name(); 2037 ret.add(name); 2038 label_41: 2039 while (true) { 2040 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2041 case COMMA: 2042 ; 2043 break; 2044 default: 2045 jj_la1[77] = jj_gen; 2046 break label_41; 2047 } 2048 jj_consume_token(COMMA); 2049 name = Name(); 2050 ret.add(name); 2051 } 2052 {if (true) return ret;} 2053 throw new Error("Missing return statement in function"); 2054 } 2055 2056/* 2057 * Expression syntax follows. 2058 */ 2059 final public Expression Expression() { 2060 Expression ret; 2061 AssignExpr.Operator op; 2062 Expression value; 2063 Statement lambdaBody = null; 2064 List params = null; 2065 List typeArgs = null; 2066 VariableDeclaratorId id = null; 2067 Expression inner = null; 2068 ret = ConditionalExpression(); 2069 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2070 case ASSIGN: 2071 case PLUSASSIGN: 2072 case MINUSASSIGN: 2073 case STARASSIGN: 2074 case SLASHASSIGN: 2075 case ANDASSIGN: 2076 case ORASSIGN: 2077 case XORASSIGN: 2078 case REMASSIGN: 2079 case LSHIFTASSIGN: 2080 case RSIGNEDSHIFTASSIGN: 2081 case RUNSIGNEDSHIFTASSIGN: 2082 case ARROW: 2083 case DOUBLECOLON: 2084 if (jj_2_18(2)) { 2085 op = AssignmentOperator(); 2086 value = Expression(); 2087 ret = new AssignExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, value, op); 2088 } else { 2089 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2090 case ARROW: 2091 jj_consume_token(ARROW); 2092 lambdaBody = LambdaBody(); 2093 if (ret instanceof CastExpr) 2094 { 2095 inner = generateLambda(((CastExpr)ret).getExpr(), lambdaBody); 2096 ((CastExpr)ret).setExpr(inner); 2097 } 2098 else if (ret instanceof ConditionalExpr){ 2099 ConditionalExpr ce = (ConditionalExpr) ret; 2100 if(ce.getElseExpr() != null){ 2101 ce.setElseExpr(generateLambda(ce.getElseExpr(), lambdaBody)); 2102 } 2103 } 2104 else 2105 { 2106 ret = generateLambda(ret, lambdaBody); 2107 } 2108 break; 2109 case DOUBLECOLON: 2110 jj_consume_token(DOUBLECOLON); 2111 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2112 case LT: 2113 typeArgs = TypeParameters(); 2114 typeArgs.remove(0); 2115 break; 2116 default: 2117 jj_la1[78] = jj_gen; 2118 ; 2119 } 2120 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2121 case IDENTIFIER: 2122 jj_consume_token(IDENTIFIER); 2123 break; 2124 case NEW: 2125 jj_consume_token(NEW); 2126 break; 2127 default: 2128 jj_la1[79] = jj_gen; 2129 jj_consume_token(-1); 2130 throw new ParseException(); 2131 } 2132 ret = new MethodReferenceExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, typeArgs, token.image); 2133 break; 2134 default: 2135 jj_la1[80] = jj_gen; 2136 jj_consume_token(-1); 2137 throw new ParseException(); 2138 } 2139 } 2140 break; 2141 default: 2142 jj_la1[81] = jj_gen; 2143 ; 2144 } 2145 {if (true) return ret;} 2146 throw new Error("Missing return statement in function"); 2147 } 2148 2149 final public AssignExpr.Operator AssignmentOperator() { 2150 AssignExpr.Operator ret; 2151 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2152 case ASSIGN: 2153 jj_consume_token(ASSIGN); 2154 ret = AssignExpr.Operator.assign; 2155 break; 2156 case STARASSIGN: 2157 jj_consume_token(STARASSIGN); 2158 ret = AssignExpr.Operator.star; 2159 break; 2160 case SLASHASSIGN: 2161 jj_consume_token(SLASHASSIGN); 2162 ret = AssignExpr.Operator.slash; 2163 break; 2164 case REMASSIGN: 2165 jj_consume_token(REMASSIGN); 2166 ret = AssignExpr.Operator.rem; 2167 break; 2168 case PLUSASSIGN: 2169 jj_consume_token(PLUSASSIGN); 2170 ret = AssignExpr.Operator.plus; 2171 break; 2172 case MINUSASSIGN: 2173 jj_consume_token(MINUSASSIGN); 2174 ret = AssignExpr.Operator.minus; 2175 break; 2176 case LSHIFTASSIGN: 2177 jj_consume_token(LSHIFTASSIGN); 2178 ret = AssignExpr.Operator.lShift; 2179 break; 2180 case RSIGNEDSHIFTASSIGN: 2181 jj_consume_token(RSIGNEDSHIFTASSIGN); 2182 ret = AssignExpr.Operator.rSignedShift; 2183 break; 2184 case RUNSIGNEDSHIFTASSIGN: 2185 jj_consume_token(RUNSIGNEDSHIFTASSIGN); 2186 ret = AssignExpr.Operator.rUnsignedShift; 2187 break; 2188 case ANDASSIGN: 2189 jj_consume_token(ANDASSIGN); 2190 ret = AssignExpr.Operator.and; 2191 break; 2192 case XORASSIGN: 2193 jj_consume_token(XORASSIGN); 2194 ret = AssignExpr.Operator.xor; 2195 break; 2196 case ORASSIGN: 2197 jj_consume_token(ORASSIGN); 2198 ret = AssignExpr.Operator.or; 2199 break; 2200 default: 2201 jj_la1[82] = jj_gen; 2202 jj_consume_token(-1); 2203 throw new ParseException(); 2204 } 2205 {if (true) return ret;} 2206 throw new Error("Missing return statement in function"); 2207 } 2208 2209 final public Expression ConditionalExpression() { 2210 Expression ret; 2211 Expression left; 2212 Expression right; 2213 ret = ConditionalOrExpression(); 2214 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2215 case HOOK: 2216 jj_consume_token(HOOK); 2217 left = Expression(); 2218 jj_consume_token(COLON); 2219 right = ConditionalExpression(); 2220 ret = new ConditionalExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, left, right); 2221 break; 2222 default: 2223 jj_la1[83] = jj_gen; 2224 ; 2225 } 2226 {if (true) return ret;} 2227 throw new Error("Missing return statement in function"); 2228 } 2229 2230 final public Expression ConditionalOrExpression() { 2231 Expression ret; 2232 Expression right; 2233 ret = ConditionalAndExpression(); 2234 label_42: 2235 while (true) { 2236 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2237 case SC_OR: 2238 ; 2239 break; 2240 default: 2241 jj_la1[84] = jj_gen; 2242 break label_42; 2243 } 2244 jj_consume_token(SC_OR); 2245 right = ConditionalAndExpression(); 2246 ret = new BinaryExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, right, BinaryExpr.Operator.or); 2247 } 2248 {if (true) return ret;} 2249 throw new Error("Missing return statement in function"); 2250 } 2251 2252 final public Expression ConditionalAndExpression() { 2253 Expression ret; 2254 Expression right; 2255 ret = InclusiveOrExpression(); 2256 label_43: 2257 while (true) { 2258 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2259 case SC_AND: 2260 ; 2261 break; 2262 default: 2263 jj_la1[85] = jj_gen; 2264 break label_43; 2265 } 2266 jj_consume_token(SC_AND); 2267 right = InclusiveOrExpression(); 2268 ret = new BinaryExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, right, BinaryExpr.Operator.and); 2269 } 2270 {if (true) return ret;} 2271 throw new Error("Missing return statement in function"); 2272 } 2273 2274 final public Expression InclusiveOrExpression() { 2275 Expression ret; 2276 Expression right; 2277 ret = ExclusiveOrExpression(); 2278 label_44: 2279 while (true) { 2280 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2281 case BIT_OR: 2282 ; 2283 break; 2284 default: 2285 jj_la1[86] = jj_gen; 2286 break label_44; 2287 } 2288 jj_consume_token(BIT_OR); 2289 right = ExclusiveOrExpression(); 2290 ret = new BinaryExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, right, BinaryExpr.Operator.binOr); 2291 } 2292 {if (true) return ret;} 2293 throw new Error("Missing return statement in function"); 2294 } 2295 2296 final public Expression ExclusiveOrExpression() { 2297 Expression ret; 2298 Expression right; 2299 ret = AndExpression(); 2300 label_45: 2301 while (true) { 2302 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2303 case XOR: 2304 ; 2305 break; 2306 default: 2307 jj_la1[87] = jj_gen; 2308 break label_45; 2309 } 2310 jj_consume_token(XOR); 2311 right = AndExpression(); 2312 ret = new BinaryExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, right, BinaryExpr.Operator.xor); 2313 } 2314 {if (true) return ret;} 2315 throw new Error("Missing return statement in function"); 2316 } 2317 2318 final public Expression AndExpression() { 2319 Expression ret; 2320 Expression right; 2321 ret = EqualityExpression(); 2322 label_46: 2323 while (true) { 2324 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2325 case BIT_AND: 2326 ; 2327 break; 2328 default: 2329 jj_la1[88] = jj_gen; 2330 break label_46; 2331 } 2332 jj_consume_token(BIT_AND); 2333 right = EqualityExpression(); 2334 ret = new BinaryExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, right, BinaryExpr.Operator.binAnd); 2335 } 2336 {if (true) return ret;} 2337 throw new Error("Missing return statement in function"); 2338 } 2339 2340 final public Expression EqualityExpression() { 2341 Expression ret; 2342 Expression right; 2343 BinaryExpr.Operator op; 2344 ret = InstanceOfExpression(); 2345 label_47: 2346 while (true) { 2347 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2348 case EQ: 2349 case NE: 2350 ; 2351 break; 2352 default: 2353 jj_la1[89] = jj_gen; 2354 break label_47; 2355 } 2356 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2357 case EQ: 2358 jj_consume_token(EQ); 2359 op = BinaryExpr.Operator.equals; 2360 break; 2361 case NE: 2362 jj_consume_token(NE); 2363 op = BinaryExpr.Operator.notEquals; 2364 break; 2365 default: 2366 jj_la1[90] = jj_gen; 2367 jj_consume_token(-1); 2368 throw new ParseException(); 2369 } 2370 right = InstanceOfExpression(); 2371 ret = new BinaryExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, right, op); 2372 } 2373 {if (true) return ret;} 2374 throw new Error("Missing return statement in function"); 2375 } 2376 2377 final public Expression InstanceOfExpression() { 2378 Expression ret; 2379 Type type; 2380 ret = RelationalExpression(); 2381 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2382 case INSTANCEOF: 2383 jj_consume_token(INSTANCEOF); 2384 type = Type(); 2385 ret = new InstanceOfExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, type); 2386 break; 2387 default: 2388 jj_la1[91] = jj_gen; 2389 ; 2390 } 2391 {if (true) return ret;} 2392 throw new Error("Missing return statement in function"); 2393 } 2394 2395 final public Expression RelationalExpression() { 2396 Expression ret; 2397 Expression right; 2398 BinaryExpr.Operator op; 2399 ret = ShiftExpression(); 2400 label_48: 2401 while (true) { 2402 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2403 case LT: 2404 case LE: 2405 case GE: 2406 case GT: 2407 ; 2408 break; 2409 default: 2410 jj_la1[92] = jj_gen; 2411 break label_48; 2412 } 2413 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2414 case LT: 2415 jj_consume_token(LT); 2416 op = BinaryExpr.Operator.less; 2417 break; 2418 case GT: 2419 jj_consume_token(GT); 2420 op = BinaryExpr.Operator.greater; 2421 break; 2422 case LE: 2423 jj_consume_token(LE); 2424 op = BinaryExpr.Operator.lessEquals; 2425 break; 2426 case GE: 2427 jj_consume_token(GE); 2428 op = BinaryExpr.Operator.greaterEquals; 2429 break; 2430 default: 2431 jj_la1[93] = jj_gen; 2432 jj_consume_token(-1); 2433 throw new ParseException(); 2434 } 2435 right = ShiftExpression(); 2436 ret = new BinaryExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, right, op); 2437 } 2438 {if (true) return ret;} 2439 throw new Error("Missing return statement in function"); 2440 } 2441 2442 final public Expression ShiftExpression() { 2443 Expression ret; 2444 Expression right; 2445 BinaryExpr.Operator op; 2446 ret = AdditiveExpression(); 2447 label_49: 2448 while (true) { 2449 if (jj_2_19(1)) { 2450 ; 2451 } else { 2452 break label_49; 2453 } 2454 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2455 case LSHIFT: 2456 jj_consume_token(LSHIFT); 2457 op = BinaryExpr.Operator.lShift; 2458 break; 2459 default: 2460 jj_la1[94] = jj_gen; 2461 if (jj_2_20(1)) { 2462 RSIGNEDSHIFT(); 2463 op = BinaryExpr.Operator.rSignedShift; 2464 } else if (jj_2_21(1)) { 2465 RUNSIGNEDSHIFT(); 2466 op = BinaryExpr.Operator.rUnsignedShift; 2467 } else { 2468 jj_consume_token(-1); 2469 throw new ParseException(); 2470 } 2471 } 2472 right = AdditiveExpression(); 2473 ret = new BinaryExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, right, op); 2474 } 2475 {if (true) return ret;} 2476 throw new Error("Missing return statement in function"); 2477 } 2478 2479 final public Expression AdditiveExpression() { 2480 Expression ret; 2481 Expression right; 2482 BinaryExpr.Operator op; 2483 ret = MultiplicativeExpression(); 2484 label_50: 2485 while (true) { 2486 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2487 case PLUS: 2488 case MINUS: 2489 ; 2490 break; 2491 default: 2492 jj_la1[95] = jj_gen; 2493 break label_50; 2494 } 2495 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2496 case PLUS: 2497 jj_consume_token(PLUS); 2498 op = BinaryExpr.Operator.plus; 2499 break; 2500 case MINUS: 2501 jj_consume_token(MINUS); 2502 op = BinaryExpr.Operator.minus; 2503 break; 2504 default: 2505 jj_la1[96] = jj_gen; 2506 jj_consume_token(-1); 2507 throw new ParseException(); 2508 } 2509 right = MultiplicativeExpression(); 2510 ret = new BinaryExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, right, op); 2511 } 2512 {if (true) return ret;} 2513 throw new Error("Missing return statement in function"); 2514 } 2515 2516 final public Expression MultiplicativeExpression() { 2517 Expression ret; 2518 Expression right; 2519 BinaryExpr.Operator op; 2520 ret = UnaryExpression(); 2521 label_51: 2522 while (true) { 2523 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2524 case STAR: 2525 case SLASH: 2526 case REM: 2527 ; 2528 break; 2529 default: 2530 jj_la1[97] = jj_gen; 2531 break label_51; 2532 } 2533 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2534 case STAR: 2535 jj_consume_token(STAR); 2536 op = BinaryExpr.Operator.times; 2537 break; 2538 case SLASH: 2539 jj_consume_token(SLASH); 2540 op = BinaryExpr.Operator.divide; 2541 break; 2542 case REM: 2543 jj_consume_token(REM); 2544 op = BinaryExpr.Operator.remainder; 2545 break; 2546 default: 2547 jj_la1[98] = jj_gen; 2548 jj_consume_token(-1); 2549 throw new ParseException(); 2550 } 2551 right = UnaryExpression(); 2552 ret = new BinaryExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, right, op); 2553 } 2554 {if (true) return ret;} 2555 throw new Error("Missing return statement in function"); 2556 } 2557 2558 final public Expression UnaryExpression() { 2559 Expression ret; 2560 UnaryExpr.Operator op; 2561 int line = 0; 2562 int column = 0; 2563 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2564 case INCR: 2565 ret = PreIncrementExpression(); 2566 break; 2567 case DECR: 2568 ret = PreDecrementExpression(); 2569 break; 2570 case PLUS: 2571 case MINUS: 2572 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2573 case PLUS: 2574 jj_consume_token(PLUS); 2575 op = UnaryExpr.Operator.positive; line=token.beginLine; column=token.beginColumn; 2576 break; 2577 case MINUS: 2578 jj_consume_token(MINUS); 2579 op = UnaryExpr.Operator.negative; line=token.beginLine; column=token.beginColumn; 2580 break; 2581 default: 2582 jj_la1[99] = jj_gen; 2583 jj_consume_token(-1); 2584 throw new ParseException(); 2585 } 2586 ret = UnaryExpression(); 2587 if(op == UnaryExpr.Operator.negative) { 2588 if (ret instanceof IntegerLiteralExpr && ((IntegerLiteralExpr)ret).isMinValue()) { 2589 ret = new IntegerLiteralMinValueExpr(line, column, token.endLine, token.endColumn); 2590 } else if (ret instanceof LongLiteralExpr && ((LongLiteralExpr)ret).isMinValue()) { 2591 ret = new LongLiteralMinValueExpr(line, column, token.endLine, token.endColumn); 2592 } else { 2593 ret = new UnaryExpr(line, column, token.endLine, token.endColumn,ret, op); 2594 } 2595 } else { 2596 ret = new UnaryExpr(line, column, token.endLine, token.endColumn,ret, op); 2597 } 2598 break; 2599 case BOOLEAN: 2600 case BYTE: 2601 case CHAR: 2602 case DOUBLE: 2603 case FALSE: 2604 case FLOAT: 2605 case INT: 2606 case LONG: 2607 case NEW: 2608 case NULL: 2609 case SHORT: 2610 case SUPER: 2611 case THIS: 2612 case TRUE: 2613 case VOID: 2614 case LONG_LITERAL: 2615 case INTEGER_LITERAL: 2616 case FLOATING_POINT_LITERAL: 2617 case CHARACTER_LITERAL: 2618 case STRING_LITERAL: 2619 case IDENTIFIER: 2620 case LPAREN: 2621 case BANG: 2622 case TILDE: 2623 ret = UnaryExpressionNotPlusMinus(); 2624 break; 2625 default: 2626 jj_la1[100] = jj_gen; 2627 jj_consume_token(-1); 2628 throw new ParseException(); 2629 } 2630 {if (true) return ret;} 2631 throw new Error("Missing return statement in function"); 2632 } 2633 2634 final public Expression PreIncrementExpression() { 2635 Expression ret; 2636 int line; 2637 int column; 2638 jj_consume_token(INCR); 2639 line=token.beginLine; column=token.beginColumn; 2640 ret = UnaryExpression(); 2641 ret = new UnaryExpr(line, column, token.endLine, token.endColumn,ret, UnaryExpr.Operator.preIncrement); 2642 {if (true) return ret;} 2643 throw new Error("Missing return statement in function"); 2644 } 2645 2646 final public Expression PreDecrementExpression() { 2647 Expression ret; 2648 int line; 2649 int column; 2650 jj_consume_token(DECR); 2651 line=token.beginLine; column=token.beginColumn; 2652 ret = UnaryExpression(); 2653 ret = new UnaryExpr(line, column, token.endLine, token.endColumn,ret, UnaryExpr.Operator.preDecrement); 2654 {if (true) return ret;} 2655 throw new Error("Missing return statement in function"); 2656 } 2657 2658 final public Expression UnaryExpressionNotPlusMinus() { 2659 Expression ret; 2660 UnaryExpr.Operator op; 2661 int line = 0; 2662 int column = 0; 2663 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2664 case BANG: 2665 case TILDE: 2666 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2667 case TILDE: 2668 jj_consume_token(TILDE); 2669 op = UnaryExpr.Operator.inverse; line=token.beginLine; column=token.beginColumn; 2670 break; 2671 case BANG: 2672 jj_consume_token(BANG); 2673 op = UnaryExpr.Operator.not; line=token.beginLine; column=token.beginColumn; 2674 break; 2675 default: 2676 jj_la1[101] = jj_gen; 2677 jj_consume_token(-1); 2678 throw new ParseException(); 2679 } 2680 ret = UnaryExpression(); 2681 ret = new UnaryExpr(line, column, token.endLine, token.endColumn,ret, op); 2682 break; 2683 default: 2684 jj_la1[102] = jj_gen; 2685 if (jj_2_22(2147483647)) { 2686 ret = CastExpression(); 2687 } else { 2688 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2689 case BOOLEAN: 2690 case BYTE: 2691 case CHAR: 2692 case DOUBLE: 2693 case FALSE: 2694 case FLOAT: 2695 case INT: 2696 case LONG: 2697 case NEW: 2698 case NULL: 2699 case SHORT: 2700 case SUPER: 2701 case THIS: 2702 case TRUE: 2703 case VOID: 2704 case LONG_LITERAL: 2705 case INTEGER_LITERAL: 2706 case FLOATING_POINT_LITERAL: 2707 case CHARACTER_LITERAL: 2708 case STRING_LITERAL: 2709 case IDENTIFIER: 2710 case LPAREN: 2711 ret = PostfixExpression(); 2712 break; 2713 default: 2714 jj_la1[103] = jj_gen; 2715 jj_consume_token(-1); 2716 throw new ParseException(); 2717 } 2718 } 2719 } 2720 {if (true) return ret;} 2721 throw new Error("Missing return statement in function"); 2722 } 2723 2724 final public Expression PostfixExpression() { 2725 Expression ret; 2726 UnaryExpr.Operator op; 2727 ret = PrimaryExpression(); 2728 if (jj_2_23(2)) { 2729 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2730 case INCR: 2731 jj_consume_token(INCR); 2732 op = UnaryExpr.Operator.posIncrement; 2733 break; 2734 case DECR: 2735 jj_consume_token(DECR); 2736 op = UnaryExpr.Operator.posDecrement; 2737 break; 2738 default: 2739 jj_la1[104] = jj_gen; 2740 jj_consume_token(-1); 2741 throw new ParseException(); 2742 } 2743 ret = new UnaryExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, op); 2744 } else { 2745 ; 2746 } 2747 {if (true) return ret;} 2748 throw new Error("Missing return statement in function"); 2749 } 2750 2751 final public Expression CastExpression() { 2752 Expression ret; 2753 Type type; 2754 int line; 2755 int column; 2756 AnnotationExpr ann; 2757 List annotations = null; 2758 jj_consume_token(LPAREN); 2759 line=token.beginLine; column=token.beginColumn; 2760 label_52: 2761 while (true) { 2762 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2763 case AT: 2764 ; 2765 break; 2766 default: 2767 jj_la1[105] = jj_gen; 2768 break label_52; 2769 } 2770 ann = Annotation(); 2771 annotations = add(annotations, ann); 2772 } 2773 if (jj_2_24(2)) { 2774 type = PrimitiveType(); 2775 jj_consume_token(RPAREN); 2776 ret = UnaryExpression(); 2777 type.setAnnotations(annotations); ret = new CastExpr(line, column, token.endLine, token.endColumn,type, ret); 2778 } else { 2779 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2780 case BOOLEAN: 2781 case BYTE: 2782 case CHAR: 2783 case DOUBLE: 2784 case FLOAT: 2785 case INT: 2786 case LONG: 2787 case SHORT: 2788 case IDENTIFIER: 2789 type = ReferenceType(); 2790 jj_consume_token(RPAREN); 2791 ret = UnaryExpressionNotPlusMinus(); 2792 type.setAnnotations(annotations); ret = new CastExpr(line, column, token.endLine, token.endColumn,type, ret); 2793 break; 2794 default: 2795 jj_la1[106] = jj_gen; 2796 jj_consume_token(-1); 2797 throw new ParseException(); 2798 } 2799 } 2800 {if (true) return ret;} 2801 throw new Error("Missing return statement in function"); 2802 } 2803 2804 final public Expression PrimaryExpression() { 2805 Expression ret; 2806 Expression inner; 2807 ret = PrimaryPrefix(); 2808 label_53: 2809 while (true) { 2810 if (jj_2_25(2)) { 2811 ; 2812 } else { 2813 break label_53; 2814 } 2815 ret = PrimarySuffix(ret); 2816 } 2817 {if (true) return ret;} 2818 throw new Error("Missing return statement in function"); 2819 } 2820 2821 final public Expression PrimaryExpressionWithoutSuperSuffix() { 2822 Expression ret; 2823 Expression inner; 2824 ret = PrimaryPrefix(); 2825 label_54: 2826 while (true) { 2827 if (jj_2_26(2147483647)) { 2828 ; 2829 } else { 2830 break label_54; 2831 } 2832 ret = PrimarySuffixWithoutSuper(ret); 2833 } 2834 {if (true) return ret;} 2835 throw new Error("Missing return statement in function"); 2836 } 2837 2838 final public Expression PrimaryPrefix() { 2839 Expression ret = null; 2840 NameExpr name; 2841 List typeArgs = null; 2842 List args = null; 2843 boolean hasArgs = false; 2844 boolean isLambda = false; 2845 Type type; 2846 int line; 2847 int column; 2848 Parameter p = null; 2849 VariableDeclaratorId id = null; 2850 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2851 case FALSE: 2852 case NULL: 2853 case TRUE: 2854 case LONG_LITERAL: 2855 case INTEGER_LITERAL: 2856 case FLOATING_POINT_LITERAL: 2857 case CHARACTER_LITERAL: 2858 case STRING_LITERAL: 2859 ret = Literal(); 2860 break; 2861 case THIS: 2862 jj_consume_token(THIS); 2863 ret = new ThisExpr(token.beginLine, token.beginColumn, token.endLine, token.endColumn, null); 2864 break; 2865 case SUPER: 2866 jj_consume_token(SUPER); 2867 ret = new SuperExpr(token.beginLine, token.beginColumn, token.endLine, token.endColumn, null); 2868 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2869 case DOT: 2870 jj_consume_token(DOT); 2871 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2872 case LT: 2873 case 132: 2874 typeArgs = TypeArguments(); 2875 typeArgs.remove(0); 2876 break; 2877 default: 2878 jj_la1[107] = jj_gen; 2879 ; 2880 } 2881 name = SimpleName(); 2882 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2883 case LPAREN: 2884 args = Arguments(); 2885 hasArgs=true; 2886 break; 2887 default: 2888 jj_la1[108] = jj_gen; 2889 ; 2890 } 2891 if (hasArgs) { 2892 MethodCallExpr m = new MethodCallExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, typeArgs, null, args); 2893 m.setNameExpr(name); 2894 ret = m; 2895 } else { 2896 FieldAccessExpr f = new FieldAccessExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, null, null); 2897 f.setFieldExpr(name); 2898 ret = f; 2899 } 2900 break; 2901 case DOUBLECOLON: 2902 jj_consume_token(DOUBLECOLON); 2903 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2904 case LT: 2905 typeArgs = TypeParameters(); 2906 typeArgs.remove(0); 2907 break; 2908 default: 2909 jj_la1[109] = jj_gen; 2910 ; 2911 } 2912 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2913 case IDENTIFIER: 2914 jj_consume_token(IDENTIFIER); 2915 break; 2916 case NEW: 2917 jj_consume_token(NEW); 2918 break; 2919 default: 2920 jj_la1[110] = jj_gen; 2921 jj_consume_token(-1); 2922 throw new ParseException(); 2923 } 2924 ret = new MethodReferenceExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, typeArgs, token.image); 2925 break; 2926 case LPAREN: 2927 args = Arguments(); 2928 new MethodCallExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, typeArgs, null, args); 2929 break; 2930 default: 2931 jj_la1[111] = jj_gen; 2932 jj_consume_token(-1); 2933 throw new ParseException(); 2934 } 2935 break; 2936 case LPAREN: 2937 jj_consume_token(LPAREN); 2938 line=token.beginLine; column=token.beginColumn; 2939 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2940 case ABSTRACT: 2941 case BOOLEAN: 2942 case BYTE: 2943 case CHAR: 2944 case DOUBLE: 2945 case FALSE: 2946 case FINAL: 2947 case FLOAT: 2948 case INT: 2949 case LONG: 2950 case NATIVE: 2951 case NEW: 2952 case NULL: 2953 case PRIVATE: 2954 case PROTECTED: 2955 case PUBLIC: 2956 case SHORT: 2957 case STATIC: 2958 case STRICTFP: 2959 case SUPER: 2960 case SYNCHRONIZED: 2961 case THIS: 2962 case TRANSIENT: 2963 case TRUE: 2964 case VOID: 2965 case VOLATILE: 2966 case LONG_LITERAL: 2967 case INTEGER_LITERAL: 2968 case FLOATING_POINT_LITERAL: 2969 case CHARACTER_LITERAL: 2970 case STRING_LITERAL: 2971 case IDENTIFIER: 2972 case LPAREN: 2973 case AT: 2974 case BANG: 2975 case TILDE: 2976 case INCR: 2977 case DECR: 2978 case PLUS: 2979 case MINUS: 2980 if (jj_2_27(2147483647)) { 2981 p = FormalParameter(); 2982 isLambda = true; 2983 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2984 case COMMA: 2985 args = FormalLambdaParameters(); 2986 break; 2987 default: 2988 jj_la1[112] = jj_gen; 2989 ; 2990 } 2991 } else { 2992 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 2993 case BOOLEAN: 2994 case BYTE: 2995 case CHAR: 2996 case DOUBLE: 2997 case FALSE: 2998 case FLOAT: 2999 case INT: 3000 case LONG: 3001 case NEW: 3002 case NULL: 3003 case SHORT: 3004 case SUPER: 3005 case THIS: 3006 case TRUE: 3007 case VOID: 3008 case LONG_LITERAL: 3009 case INTEGER_LITERAL: 3010 case FLOATING_POINT_LITERAL: 3011 case CHARACTER_LITERAL: 3012 case STRING_LITERAL: 3013 case IDENTIFIER: 3014 case LPAREN: 3015 case BANG: 3016 case TILDE: 3017 case INCR: 3018 case DECR: 3019 case PLUS: 3020 case MINUS: 3021 ret = Expression(); 3022 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3023 case COMMA: 3024 args = InferredLambdaParameters(); 3025 isLambda = true; 3026 break; 3027 default: 3028 jj_la1[113] = jj_gen; 3029 ; 3030 } 3031 break; 3032 default: 3033 jj_la1[114] = jj_gen; 3034 jj_consume_token(-1); 3035 throw new ParseException(); 3036 } 3037 } 3038 break; 3039 default: 3040 jj_la1[115] = jj_gen; 3041 ; 3042 } 3043 jj_consume_token(RPAREN); 3044 if(!isLambda) { ret = new EnclosedExpr(line, column, token.endLine, token.endColumn,ret);} 3045 else{ 3046 if(ret != null){ 3047 if(ret instanceof NameExpr) 3048 { 3049 id = new VariableDeclaratorId(ret.getBeginLine(), ret.getBeginColumn(), ret.getEndLine(), ret.getEndColumn(), ((NameExpr)ret).getName(), 0); 3050 p = new Parameter(ret.getBeginLine(), ret.getBeginColumn(), ret.getEndLine(), ret.getEndColumn(), 0, null, new UnknownType(), false, id); 3051 } 3052 3053 } 3054 args = add(0, args, p); 3055 ret = new LambdaExpr(p.getBeginLine(), p.getBeginColumn(), token.endLine, token.endColumn, args, null, true); 3056 } 3057 break; 3058 case NEW: 3059 ret = AllocationExpression(null); 3060 break; 3061 default: 3062 jj_la1[119] = jj_gen; 3063 if (jj_2_28(2147483647)) { 3064 type = ResultType(); 3065 jj_consume_token(DOT); 3066 jj_consume_token(CLASS); 3067 ret = new ClassExpr(type.getBeginLine(), type.getBeginColumn(), token.endLine, token.endColumn, type); 3068 } else if (jj_2_29(2147483647)) { 3069 type = ResultType(); 3070 jj_consume_token(DOUBLECOLON); 3071 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3072 case LT: 3073 typeArgs = TypeParameters(); 3074 typeArgs.remove(0); 3075 break; 3076 default: 3077 jj_la1[116] = jj_gen; 3078 ; 3079 } 3080 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3081 case IDENTIFIER: 3082 jj_consume_token(IDENTIFIER); 3083 break; 3084 case NEW: 3085 jj_consume_token(NEW); 3086 break; 3087 default: 3088 jj_la1[117] = jj_gen; 3089 jj_consume_token(-1); 3090 throw new ParseException(); 3091 } 3092 ret = new TypeExpr(type.getBeginLine(), type.getBeginColumn(), type.getEndLine(), type.getEndColumn(), type); 3093 ret = new MethodReferenceExpr(ret.getBeginLine(), ret.getBeginColumn(), token.endLine, token.endColumn, ret, typeArgs, token.image); 3094 } else { 3095 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3096 case IDENTIFIER: 3097 name = SimpleName(); 3098 line=token.beginLine; column=token.beginColumn; 3099 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3100 case LPAREN: 3101 args = Arguments(); 3102 hasArgs=true; 3103 break; 3104 default: 3105 jj_la1[118] = jj_gen; 3106 ; 3107 } 3108 if (hasArgs) { 3109 MethodCallExpr m = new MethodCallExpr(line, column, token.endLine, token.endColumn, null, null, null, args); 3110 m.setNameExpr(name); 3111 ret = m; 3112 } else { 3113 ret = name; 3114 } 3115 break; 3116 default: 3117 jj_la1[120] = jj_gen; 3118 jj_consume_token(-1); 3119 throw new ParseException(); 3120 } 3121 } 3122 } 3123 {if (true) return ret;} 3124 throw new Error("Missing return statement in function"); 3125 } 3126 3127 final public Expression PrimarySuffix(Expression scope) { 3128 Expression ret; 3129 if (jj_2_30(2)) { 3130 ret = PrimarySuffixWithoutSuper(scope); 3131 } else { 3132 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3133 case DOT: 3134 jj_consume_token(DOT); 3135 jj_consume_token(SUPER); 3136 ret = new SuperExpr(scope.getBeginLine(), scope.getBeginColumn(), token.endLine, token.endColumn, scope); 3137 break; 3138 default: 3139 jj_la1[121] = jj_gen; 3140 jj_consume_token(-1); 3141 throw new ParseException(); 3142 } 3143 } 3144 {if (true) return ret;} 3145 throw new Error("Missing return statement in function"); 3146 } 3147 3148 final public Expression PrimarySuffixWithoutSuper(Expression scope) { 3149 Expression ret; 3150 List typeArgs = null; 3151 List args = null; 3152 boolean hasArgs = false; 3153 NameExpr name; 3154 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3155 case DOT: 3156 jj_consume_token(DOT); 3157 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3158 case THIS: 3159 jj_consume_token(THIS); 3160 ret = new ThisExpr(scope.getBeginLine(), scope.getBeginColumn(), token.endLine, token.endColumn, scope); 3161 break; 3162 case NEW: 3163 ret = AllocationExpression(scope); 3164 break; 3165 default: 3166 jj_la1[124] = jj_gen; 3167 if (jj_2_31(2147483647)) { 3168 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3169 case LT: 3170 case 132: 3171 typeArgs = TypeArguments(); 3172 typeArgs.remove(0); 3173 break; 3174 default: 3175 jj_la1[122] = jj_gen; 3176 ; 3177 } 3178 name = SimpleName(); 3179 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3180 case LPAREN: 3181 args = Arguments(); 3182 hasArgs=true; 3183 break; 3184 default: 3185 jj_la1[123] = jj_gen; 3186 ; 3187 } 3188 if (hasArgs) { 3189 MethodCallExpr m = new MethodCallExpr(scope.getBeginLine(), scope.getBeginColumn(), token.endLine, token.endColumn, scope, typeArgs, null, args); 3190 m.setNameExpr(name); 3191 ret = m; 3192 } else { 3193 FieldAccessExpr f = new FieldAccessExpr(scope.getBeginLine(), scope.getBeginColumn(), token.endLine, token.endColumn, scope, typeArgs, null); 3194 f.setFieldExpr(name); 3195 ret = f; 3196 } 3197 } else { 3198 jj_consume_token(-1); 3199 throw new ParseException(); 3200 } 3201 } 3202 break; 3203 case LBRACKET: 3204 jj_consume_token(LBRACKET); 3205 ret = Expression(); 3206 jj_consume_token(RBRACKET); 3207 ret = new ArrayAccessExpr(scope.getBeginLine(), scope.getBeginColumn(), token.endLine, token.endColumn, scope, ret); 3208 break; 3209 default: 3210 jj_la1[125] = jj_gen; 3211 jj_consume_token(-1); 3212 throw new ParseException(); 3213 } 3214 {if (true) return ret;} 3215 throw new Error("Missing return statement in function"); 3216 } 3217 3218 final public Expression Literal() { 3219 Expression ret; 3220 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3221 case INTEGER_LITERAL: 3222 jj_consume_token(INTEGER_LITERAL); 3223 ret = new IntegerLiteralExpr(token.beginLine, token.beginColumn, token.endLine, token.endColumn, token.image); 3224 break; 3225 case LONG_LITERAL: 3226 jj_consume_token(LONG_LITERAL); 3227 ret = new LongLiteralExpr(token.beginLine, token.beginColumn, token.endLine, token.endColumn, token.image); 3228 break; 3229 case FLOATING_POINT_LITERAL: 3230 jj_consume_token(FLOATING_POINT_LITERAL); 3231 ret = new DoubleLiteralExpr(token.beginLine, token.beginColumn, token.endLine, token.endColumn, token.image); 3232 break; 3233 case CHARACTER_LITERAL: 3234 jj_consume_token(CHARACTER_LITERAL); 3235 ret = new CharLiteralExpr(token.beginLine, token.beginColumn, token.endLine, token.endColumn, token.image.substring(1, token.image.length()-1)); 3236 break; 3237 case STRING_LITERAL: 3238 jj_consume_token(STRING_LITERAL); 3239 ret = new StringLiteralExpr(token.beginLine, token.beginColumn, token.endLine, token.endColumn, token.image.substring(1, token.image.length()-1)); 3240 break; 3241 case FALSE: 3242 case TRUE: 3243 ret = BooleanLiteral(); 3244 break; 3245 case NULL: 3246 ret = NullLiteral(); 3247 break; 3248 default: 3249 jj_la1[126] = jj_gen; 3250 jj_consume_token(-1); 3251 throw new ParseException(); 3252 } 3253 {if (true) return ret;} 3254 throw new Error("Missing return statement in function"); 3255 } 3256 3257 final public Expression BooleanLiteral() { 3258 Expression ret; 3259 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3260 case TRUE: 3261 jj_consume_token(TRUE); 3262 ret = new BooleanLiteralExpr(token.beginLine, token.beginColumn, token.endLine, token.endColumn, true); 3263 break; 3264 case FALSE: 3265 jj_consume_token(FALSE); 3266 ret = new BooleanLiteralExpr(token.beginLine, token.beginColumn, token.endLine, token.endColumn, false); 3267 break; 3268 default: 3269 jj_la1[127] = jj_gen; 3270 jj_consume_token(-1); 3271 throw new ParseException(); 3272 } 3273 {if (true) return ret;} 3274 throw new Error("Missing return statement in function"); 3275 } 3276 3277 final public Expression NullLiteral() { 3278 jj_consume_token(NULL); 3279 {if (true) return new NullLiteralExpr(token.beginLine, token.beginColumn, token.endLine, token.endColumn);} 3280 throw new Error("Missing return statement in function"); 3281 } 3282 3283 final public List Arguments() { 3284 List ret = null; 3285 jj_consume_token(LPAREN); 3286 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3287 case BOOLEAN: 3288 case BYTE: 3289 case CHAR: 3290 case DOUBLE: 3291 case FALSE: 3292 case FLOAT: 3293 case INT: 3294 case LONG: 3295 case NEW: 3296 case NULL: 3297 case SHORT: 3298 case SUPER: 3299 case THIS: 3300 case TRUE: 3301 case VOID: 3302 case LONG_LITERAL: 3303 case INTEGER_LITERAL: 3304 case FLOATING_POINT_LITERAL: 3305 case CHARACTER_LITERAL: 3306 case STRING_LITERAL: 3307 case IDENTIFIER: 3308 case LPAREN: 3309 case BANG: 3310 case TILDE: 3311 case INCR: 3312 case DECR: 3313 case PLUS: 3314 case MINUS: 3315 ret = ArgumentList(); 3316 break; 3317 default: 3318 jj_la1[128] = jj_gen; 3319 ; 3320 } 3321 jj_consume_token(RPAREN); 3322 {if (true) return ret;} 3323 throw new Error("Missing return statement in function"); 3324 } 3325 3326 final public List ArgumentList() { 3327 List ret = new LinkedList(); 3328 Expression expr; 3329 expr = Expression(); 3330 ret.add(expr); 3331 label_55: 3332 while (true) { 3333 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3334 case COMMA: 3335 ; 3336 break; 3337 default: 3338 jj_la1[129] = jj_gen; 3339 break label_55; 3340 } 3341 jj_consume_token(COMMA); 3342 expr = Expression(); 3343 ret.add(expr); 3344 } 3345 {if (true) return ret;} 3346 throw new Error("Missing return statement in function"); 3347 } 3348 3349 final public Expression AllocationExpression(Expression scope) { 3350 Expression ret; 3351 ArrayCreationExpr arrayExpr; 3352 Type type; 3353 Object[] arr = null; 3354 List typeArgs = null; 3355 List anonymousBody = null; 3356 List args; 3357 int line; 3358 int column; 3359 List annotations = null; 3360 AnnotationExpr ann; 3361 jj_consume_token(NEW); 3362 if(scope==null) {line=token.beginLine; column=token.beginColumn;} else {line=scope.getBeginLine(); column=scope.getBeginColumn();} 3363 label_56: 3364 while (true) { 3365 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3366 case AT: 3367 ; 3368 break; 3369 default: 3370 jj_la1[130] = jj_gen; 3371 break label_56; 3372 } 3373 ann = Annotation(); 3374 annotations = add(annotations, ann); 3375 } 3376 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3377 case BOOLEAN: 3378 case BYTE: 3379 case CHAR: 3380 case DOUBLE: 3381 case FLOAT: 3382 case INT: 3383 case LONG: 3384 case SHORT: 3385 type = PrimitiveType(); 3386 type.setAnnotations(annotations); 3387 arr = ArrayDimsAndInits(); 3388 arrayExpr = new ArrayCreationExpr(line, column, token.endLine, token.endColumn, type, null, 0); 3389 arrayExpr.setArraysAnnotations((List)arr[2]); 3390 if (arr[0] instanceof Integer) { 3391 arrayExpr.setArrayCount(((Integer)arr[0]).intValue()); 3392 arrayExpr.setInitializer((ArrayInitializerExpr)arr[1]); 3393 } else { 3394 arrayExpr.setArrayCount(((Integer)arr[1]).intValue()); 3395 arrayExpr.setDimensions((List)arr[0]); 3396 } 3397 ret = arrayExpr; 3398 break; 3399 case IDENTIFIER: 3400 case LT: 3401 case 132: 3402 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3403 case LT: 3404 case 132: 3405 typeArgs = TypeArguments(); 3406 label_57: 3407 while (true) { 3408 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3409 case AT: 3410 ; 3411 break; 3412 default: 3413 jj_la1[131] = jj_gen; 3414 break label_57; 3415 } 3416 ann = Annotation(); 3417 annotations = add(annotations, ann); 3418 } 3419 typeArgs.remove(0); 3420 break; 3421 default: 3422 jj_la1[132] = jj_gen; 3423 ; 3424 } 3425 type = ClassOrInterfaceType(); 3426 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3427 case LBRACKET: 3428 case AT: 3429 arr = ArrayDimsAndInits(); 3430 type.setAnnotations(annotations); arrayExpr = new ArrayCreationExpr(line, column, token.endLine, token.endColumn, type, null, 0); 3431 arrayExpr.setArraysAnnotations((List)arr[2]); 3432 if (arr[0] instanceof Integer) { 3433 arrayExpr.setArrayCount(((Integer)arr[0]).intValue()); 3434 arrayExpr.setInitializer((ArrayInitializerExpr)arr[1]); 3435 } else { 3436 arrayExpr.setArrayCount(((Integer)arr[1]).intValue()); 3437 arrayExpr.setDimensions((List)arr[0]); 3438 } 3439 ret = arrayExpr; 3440 break; 3441 case LPAREN: 3442 args = Arguments(); 3443 if (jj_2_32(2)) { 3444 anonymousBody = ClassOrInterfaceBody(false); 3445 } else { 3446 ; 3447 } 3448 type.setAnnotations(annotations); ret = new ObjectCreationExpr(line, column, token.endLine, token.endColumn, scope, (ClassOrInterfaceType) type, typeArgs, args, anonymousBody); 3449 break; 3450 default: 3451 jj_la1[133] = jj_gen; 3452 jj_consume_token(-1); 3453 throw new ParseException(); 3454 } 3455 break; 3456 default: 3457 jj_la1[134] = jj_gen; 3458 jj_consume_token(-1); 3459 throw new ParseException(); 3460 } 3461 {if (true) return ret;} 3462 throw new Error("Missing return statement in function"); 3463 } 3464 3465/* 3466 * The third LOOKAHEAD specification below is to parse to PrimarySuffix 3467 * if there is an expression between the "[...]". 3468 */ 3469 final public Object[] ArrayDimsAndInits() { 3470 Object[] ret = new Object[3]; 3471 Expression expr; 3472 List inits = null; 3473 int i = 0; 3474 List accum = null; 3475 List annotations = null; 3476 AnnotationExpr ann; 3477 label_58: 3478 while (true) { 3479 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3480 case AT: 3481 ; 3482 break; 3483 default: 3484 jj_la1[135] = jj_gen; 3485 break label_58; 3486 } 3487 ann = Annotation(); 3488 annotations = add(annotations, ann); 3489 } 3490 if (jj_2_35(2)) { 3491 label_59: 3492 while (true) { 3493 jj_consume_token(LBRACKET); 3494 expr = Expression(); 3495 accum = add(accum, annotations); annotations=null; inits = add(inits, expr); 3496 jj_consume_token(RBRACKET); 3497 if (jj_2_33(2)) { 3498 ; 3499 } else { 3500 break label_59; 3501 } 3502 } 3503 label_60: 3504 while (true) { 3505 if (jj_2_34(2)) { 3506 ; 3507 } else { 3508 break label_60; 3509 } 3510 label_61: 3511 while (true) { 3512 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3513 case AT: 3514 ; 3515 break; 3516 default: 3517 jj_la1[136] = jj_gen; 3518 break label_61; 3519 } 3520 ann = Annotation(); 3521 annotations = add(annotations, ann); 3522 } 3523 jj_consume_token(LBRACKET); 3524 jj_consume_token(RBRACKET); 3525 i++; 3526 } 3527 accum = add(accum, annotations); annotations=null; ret[0] = inits; ret[1] = new Integer(i); 3528 } else { 3529 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3530 case LBRACKET: 3531 label_62: 3532 while (true) { 3533 jj_consume_token(LBRACKET); 3534 jj_consume_token(RBRACKET); 3535 i++; 3536 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3537 case LBRACKET: 3538 ; 3539 break; 3540 default: 3541 jj_la1[137] = jj_gen; 3542 break label_62; 3543 } 3544 } 3545 expr = ArrayInitializer(); 3546 accum = add(accum, annotations);annotations=null; ret[0] = new Integer(i); ret[1] = expr; 3547 break; 3548 default: 3549 jj_la1[138] = jj_gen; 3550 jj_consume_token(-1); 3551 throw new ParseException(); 3552 } 3553 } 3554 ret[2]=accum; {if (true) return ret;} 3555 throw new Error("Missing return statement in function"); 3556 } 3557 3558/* 3559 * Statement syntax follows. 3560 */ 3561 final public Statement Statement() { 3562 Statement ret; 3563 if (jj_2_36(2)) { 3564 ret = LabeledStatement(); 3565 } else { 3566 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3567 case ASSERT: 3568 ret = AssertStatement(); 3569 break; 3570 case LBRACE: 3571 ret = Block(); 3572 break; 3573 case SEMICOLON: 3574 ret = EmptyStatement(); 3575 break; 3576 case BOOLEAN: 3577 case BYTE: 3578 case CHAR: 3579 case DOUBLE: 3580 case FALSE: 3581 case FLOAT: 3582 case INT: 3583 case LONG: 3584 case NEW: 3585 case NULL: 3586 case SHORT: 3587 case SUPER: 3588 case THIS: 3589 case TRUE: 3590 case VOID: 3591 case LONG_LITERAL: 3592 case INTEGER_LITERAL: 3593 case FLOATING_POINT_LITERAL: 3594 case CHARACTER_LITERAL: 3595 case STRING_LITERAL: 3596 case IDENTIFIER: 3597 case LPAREN: 3598 case INCR: 3599 case DECR: 3600 ret = StatementExpression(); 3601 break; 3602 case SWITCH: 3603 ret = SwitchStatement(); 3604 break; 3605 case IF: 3606 ret = IfStatement(); 3607 break; 3608 case WHILE: 3609 ret = WhileStatement(); 3610 break; 3611 case DO: 3612 ret = DoStatement(); 3613 break; 3614 case FOR: 3615 ret = ForStatement(); 3616 break; 3617 case BREAK: 3618 ret = BreakStatement(); 3619 break; 3620 case CONTINUE: 3621 ret = ContinueStatement(); 3622 break; 3623 case RETURN: 3624 ret = ReturnStatement(); 3625 break; 3626 case THROW: 3627 ret = ThrowStatement(); 3628 break; 3629 case SYNCHRONIZED: 3630 ret = SynchronizedStatement(); 3631 break; 3632 case TRY: 3633 ret = TryStatement(); 3634 break; 3635 default: 3636 jj_la1[139] = jj_gen; 3637 jj_consume_token(-1); 3638 throw new ParseException(); 3639 } 3640 } 3641 {if (true) return ret;} 3642 throw new Error("Missing return statement in function"); 3643 } 3644 3645 final public AssertStmt AssertStatement() { 3646 Expression check; 3647 Expression msg = null; 3648 int line; 3649 int column; 3650 jj_consume_token(ASSERT); 3651 line=token.beginLine; column=token.beginColumn; 3652 check = Expression(); 3653 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3654 case COLON: 3655 jj_consume_token(COLON); 3656 msg = Expression(); 3657 break; 3658 default: 3659 jj_la1[140] = jj_gen; 3660 ; 3661 } 3662 jj_consume_token(SEMICOLON); 3663 {if (true) return new AssertStmt(line, column, token.endLine, token.endColumn,check, msg);} 3664 throw new Error("Missing return statement in function"); 3665 } 3666 3667 final public LabeledStmt LabeledStatement() { 3668 String label; 3669 Statement stmt; 3670 int line; 3671 int column; 3672 jj_consume_token(IDENTIFIER); 3673 line=token.beginLine; column=token.beginColumn; 3674 label = token.image; 3675 jj_consume_token(COLON); 3676 stmt = Statement(); 3677 {if (true) return new LabeledStmt(line, column, token.endLine, token.endColumn,label, stmt);} 3678 throw new Error("Missing return statement in function"); 3679 } 3680 3681 final public BlockStmt Block() { 3682 List stmts; 3683 int beginLine; 3684 int beginColumn; 3685 jj_consume_token(LBRACE); 3686 beginLine=token.beginLine; beginColumn=token.beginColumn; 3687 stmts = Statements(); 3688 jj_consume_token(RBRACE); 3689 {if (true) return new BlockStmt(beginLine, beginColumn, token.endLine, token.endColumn, stmts);} 3690 throw new Error("Missing return statement in function"); 3691 } 3692 3693/* 3694 * Classes inside block stametents can only be abstract or final. The semantic must check it. 3695 */ 3696 final public Statement BlockStatement() { 3697 Statement ret; 3698 Expression expr; 3699 ClassOrInterfaceDeclaration typeDecl; 3700 Modifier modifier; 3701 if (jj_2_37(2147483647)) { 3702 3703 modifier = Modifiers(); 3704 typeDecl = ClassOrInterfaceDeclaration(modifier); 3705 ret = new TypeDeclarationStmt(typeDecl.getBeginLine(), typeDecl.getBeginColumn(), token.endLine, token.endColumn, typeDecl); 3706 } else if (jj_2_38(2147483647)) { 3707 expr = VariableDeclarationExpression(); 3708 jj_consume_token(SEMICOLON); 3709 ret = new ExpressionStmt(expr.getBeginLine(), expr.getBeginColumn(), token.endLine, token.endColumn, expr); 3710 } else { 3711 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3712 case ASSERT: 3713 case BOOLEAN: 3714 case BREAK: 3715 case BYTE: 3716 case CHAR: 3717 case CONTINUE: 3718 case DO: 3719 case DOUBLE: 3720 case FALSE: 3721 case FLOAT: 3722 case FOR: 3723 case IF: 3724 case INT: 3725 case LONG: 3726 case NEW: 3727 case NULL: 3728 case RETURN: 3729 case SHORT: 3730 case SUPER: 3731 case SWITCH: 3732 case SYNCHRONIZED: 3733 case THIS: 3734 case THROW: 3735 case TRUE: 3736 case TRY: 3737 case VOID: 3738 case WHILE: 3739 case LONG_LITERAL: 3740 case INTEGER_LITERAL: 3741 case FLOATING_POINT_LITERAL: 3742 case CHARACTER_LITERAL: 3743 case STRING_LITERAL: 3744 case IDENTIFIER: 3745 case LPAREN: 3746 case LBRACE: 3747 case SEMICOLON: 3748 case INCR: 3749 case DECR: 3750 ret = Statement(); 3751 break; 3752 default: 3753 jj_la1[141] = jj_gen; 3754 jj_consume_token(-1); 3755 throw new ParseException(); 3756 } 3757 } 3758 {if (true) return ret;} 3759 throw new Error("Missing return statement in function"); 3760 } 3761 3762 final public VariableDeclarationExpr VariableDeclarationExpression() { 3763 Modifier modifier; 3764 Type type; 3765 List vars = new LinkedList(); 3766 VariableDeclarator var; 3767 modifier = Modifiers(); 3768 type = Type(); 3769 var = VariableDeclarator(); 3770 vars.add(var); 3771 label_63: 3772 while (true) { 3773 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3774 case COMMA: 3775 ; 3776 break; 3777 default: 3778 jj_la1[142] = jj_gen; 3779 break label_63; 3780 } 3781 jj_consume_token(COMMA); 3782 var = VariableDeclarator(); 3783 vars.add(var); 3784 } 3785 int line = modifier.beginLine; 3786 int column = modifier.beginColumn; 3787 if(line==-1) {line=type.getBeginLine(); column=type.getBeginColumn(); } 3788 {if (true) return new VariableDeclarationExpr(line, column, token.endLine, token.endColumn, modifier.modifiers, modifier.annotations, type, vars);} 3789 throw new Error("Missing return statement in function"); 3790 } 3791 3792 final public EmptyStmt EmptyStatement() { 3793 jj_consume_token(SEMICOLON); 3794 {if (true) return new EmptyStmt(token.beginLine, token.beginColumn, token.endLine, token.endColumn);} 3795 throw new Error("Missing return statement in function"); 3796 } 3797 3798 final public Statement LambdaBody() { 3799 Expression expr; 3800 Statement n = null; 3801 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3802 case BOOLEAN: 3803 case BYTE: 3804 case CHAR: 3805 case DOUBLE: 3806 case FALSE: 3807 case FLOAT: 3808 case INT: 3809 case LONG: 3810 case NEW: 3811 case NULL: 3812 case SHORT: 3813 case SUPER: 3814 case THIS: 3815 case TRUE: 3816 case VOID: 3817 case LONG_LITERAL: 3818 case INTEGER_LITERAL: 3819 case FLOATING_POINT_LITERAL: 3820 case CHARACTER_LITERAL: 3821 case STRING_LITERAL: 3822 case IDENTIFIER: 3823 case LPAREN: 3824 case BANG: 3825 case TILDE: 3826 case INCR: 3827 case DECR: 3828 case PLUS: 3829 case MINUS: 3830 expr = Expression(); 3831 n = new ExpressionStmt(expr.getBeginLine(), expr.getBeginColumn(), token.endLine, token.endColumn, expr); 3832 break; 3833 case LBRACE: 3834 n = Block(); 3835 break; 3836 default: 3837 jj_la1[143] = jj_gen; 3838 jj_consume_token(-1); 3839 throw new ParseException(); 3840 } 3841 {if (true) return n;} 3842 throw new Error("Missing return statement in function"); 3843 } 3844 3845 final public ExpressionStmt StatementExpression() { 3846 Expression expr; 3847 AssignExpr.Operator op; 3848 Expression value; 3849 Type type; 3850 List typeArgs = null; 3851 Statement lambdaBody = null; 3852 VariableDeclaratorId id = null; 3853 List params = null; 3854 Expression inner = null; 3855 if (jj_2_39(2)) { 3856 expr = PreIncrementExpression(); 3857 } else { 3858 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3859 case DECR: 3860 expr = PreDecrementExpression(); 3861 break; 3862 case BOOLEAN: 3863 case BYTE: 3864 case CHAR: 3865 case DOUBLE: 3866 case FALSE: 3867 case FLOAT: 3868 case INT: 3869 case LONG: 3870 case NEW: 3871 case NULL: 3872 case SHORT: 3873 case SUPER: 3874 case THIS: 3875 case TRUE: 3876 case VOID: 3877 case LONG_LITERAL: 3878 case INTEGER_LITERAL: 3879 case FLOATING_POINT_LITERAL: 3880 case CHARACTER_LITERAL: 3881 case STRING_LITERAL: 3882 case IDENTIFIER: 3883 case LPAREN: 3884 expr = PrimaryExpression(); 3885 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3886 case ASSIGN: 3887 case INCR: 3888 case DECR: 3889 case PLUSASSIGN: 3890 case MINUSASSIGN: 3891 case STARASSIGN: 3892 case SLASHASSIGN: 3893 case ANDASSIGN: 3894 case ORASSIGN: 3895 case XORASSIGN: 3896 case REMASSIGN: 3897 case LSHIFTASSIGN: 3898 case RSIGNEDSHIFTASSIGN: 3899 case RUNSIGNEDSHIFTASSIGN: 3900 case ARROW: 3901 case DOUBLECOLON: 3902 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3903 case INCR: 3904 jj_consume_token(INCR); 3905 expr = new UnaryExpr(expr.getBeginLine(), expr.getBeginColumn(), token.endLine, token.endColumn, expr, UnaryExpr.Operator.posIncrement); 3906 break; 3907 case DECR: 3908 jj_consume_token(DECR); 3909 expr = new UnaryExpr(expr.getBeginLine(), expr.getBeginColumn(), token.endLine, token.endColumn, expr, UnaryExpr.Operator.posDecrement); 3910 break; 3911 case ASSIGN: 3912 case PLUSASSIGN: 3913 case MINUSASSIGN: 3914 case STARASSIGN: 3915 case SLASHASSIGN: 3916 case ANDASSIGN: 3917 case ORASSIGN: 3918 case XORASSIGN: 3919 case REMASSIGN: 3920 case LSHIFTASSIGN: 3921 case RSIGNEDSHIFTASSIGN: 3922 case RUNSIGNEDSHIFTASSIGN: 3923 op = AssignmentOperator(); 3924 value = Expression(); 3925 expr = new AssignExpr(expr.getBeginLine(), expr.getBeginColumn(), token.endLine, token.endColumn, expr, value, op); 3926 break; 3927 case DOUBLECOLON: 3928 jj_consume_token(DOUBLECOLON); 3929 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3930 case LT: 3931 typeArgs = TypeParameters(); 3932 typeArgs.remove(0); 3933 break; 3934 default: 3935 jj_la1[144] = jj_gen; 3936 ; 3937 } 3938 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 3939 case IDENTIFIER: 3940 jj_consume_token(IDENTIFIER); 3941 break; 3942 case NEW: 3943 jj_consume_token(NEW); 3944 break; 3945 default: 3946 jj_la1[145] = jj_gen; 3947 jj_consume_token(-1); 3948 throw new ParseException(); 3949 } 3950 expr = new MethodReferenceExpr(expr.getBeginLine(), expr.getBeginColumn(), token.endLine, token.endColumn, expr, typeArgs, token.image); 3951 break; 3952 case ARROW: 3953 jj_consume_token(ARROW); 3954 lambdaBody = LambdaBody(); 3955 if (expr instanceof CastExpr) 3956 { 3957 inner = generateLambda(((CastExpr)expr).getExpr(), lambdaBody); 3958 ((CastExpr)expr).setExpr(inner); 3959 } 3960 else 3961 { 3962 expr = generateLambda(expr, lambdaBody); 3963 } 3964 break; 3965 default: 3966 jj_la1[146] = jj_gen; 3967 jj_consume_token(-1); 3968 throw new ParseException(); 3969 } 3970 break; 3971 default: 3972 jj_la1[147] = jj_gen; 3973 ; 3974 } 3975 break; 3976 default: 3977 jj_la1[148] = jj_gen; 3978 jj_consume_token(-1); 3979 throw new ParseException(); 3980 } 3981 } 3982 jj_consume_token(SEMICOLON); 3983 {if (true) return new ExpressionStmt(expr.getBeginLine(), expr.getBeginColumn(), token.endLine, token.endColumn, expr);} 3984 throw new Error("Missing return statement in function"); 3985 } 3986 3987 final public SwitchStmt SwitchStatement() { 3988 Expression selector; 3989 SwitchEntryStmt entry; 3990 List entries = null; 3991 int line; 3992 int column; 3993 jj_consume_token(SWITCH); 3994 line=token.beginLine; column=token.beginColumn; 3995 jj_consume_token(LPAREN); 3996 selector = Expression(); 3997 jj_consume_token(RPAREN); 3998 jj_consume_token(LBRACE); 3999 label_64: 4000 while (true) { 4001 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 4002 case CASE: 4003 case _DEFAULT: 4004 ; 4005 break; 4006 default: 4007 jj_la1[149] = jj_gen; 4008 break label_64; 4009 } 4010 entry = SwitchEntry(); 4011 entries = add(entries, entry); 4012 } 4013 jj_consume_token(RBRACE); 4014 {if (true) return new SwitchStmt(line, column, token.endLine, token.endColumn,selector, entries);} 4015 throw new Error("Missing return statement in function"); 4016 } 4017 4018 final public SwitchEntryStmt SwitchEntry() { 4019 Expression label = null; 4020 List stmts; 4021 int line; 4022 int column; 4023 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 4024 case CASE: 4025 jj_consume_token(CASE); 4026 line=token.beginLine; column=token.beginColumn; 4027 label = Expression(); 4028 break; 4029 case _DEFAULT: 4030 jj_consume_token(_DEFAULT); 4031 line=token.beginLine; column=token.beginColumn; 4032 break; 4033 default: 4034 jj_la1[150] = jj_gen; 4035 jj_consume_token(-1); 4036 throw new ParseException(); 4037 } 4038 jj_consume_token(COLON); 4039 stmts = Statements(); 4040 {if (true) return new SwitchEntryStmt(line, column, token.endLine, token.endColumn,label, stmts);} 4041 throw new Error("Missing return statement in function"); 4042 } 4043 4044 final public IfStmt IfStatement() { 4045 Expression condition; 4046 Statement thenStmt; 4047 Statement elseStmt = null; 4048 int line; 4049 int column; 4050 Comment thenCmmt = null; 4051 Comment elseCmmt = null; 4052 jj_consume_token(IF); 4053 line=token.beginLine; column=token.beginColumn; 4054 jj_consume_token(LPAREN); 4055 condition = Expression(); 4056 jj_consume_token(RPAREN); 4057 4058 thenStmt = Statement(); 4059 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 4060 case ELSE: 4061 jj_consume_token(ELSE); 4062 4063 elseStmt = Statement(); 4064 break; 4065 default: 4066 jj_la1[151] = jj_gen; 4067 ; 4068 } 4069 IfStmt tmp = new IfStmt(line, column, token.endLine, token.endColumn,condition, thenStmt, elseStmt); 4070 4071 thenStmt.setComment(thenCmmt); 4072 if (elseStmt != null) 4073 elseStmt.setComment(elseCmmt); 4074 {if (true) return tmp;} 4075 throw new Error("Missing return statement in function"); 4076 } 4077 4078 final public WhileStmt WhileStatement() { 4079 Expression condition; 4080 Statement body; 4081 int line; 4082 int column; 4083 jj_consume_token(WHILE); 4084 line=token.beginLine; column=token.beginColumn; 4085 jj_consume_token(LPAREN); 4086 condition = Expression(); 4087 jj_consume_token(RPAREN); 4088 body = Statement(); 4089 {if (true) return new WhileStmt(line, column, token.endLine, token.endColumn,condition, body);} 4090 throw new Error("Missing return statement in function"); 4091 } 4092 4093 final public DoStmt DoStatement() { 4094 Expression condition; 4095 Statement body; 4096 int line; 4097 int column; 4098 jj_consume_token(DO); 4099 line=token.beginLine; column=token.beginColumn; 4100 body = Statement(); 4101 jj_consume_token(WHILE); 4102 jj_consume_token(LPAREN); 4103 condition = Expression(); 4104 jj_consume_token(RPAREN); 4105 jj_consume_token(SEMICOLON); 4106 {if (true) return new DoStmt(line, column, token.endLine, token.endColumn,body, condition);} 4107 throw new Error("Missing return statement in function"); 4108 } 4109 4110 final public Statement ForStatement() { 4111 String id = null; 4112 VariableDeclarationExpr varExpr = null; 4113 Expression expr = null; 4114 List init = null; 4115 List update = null; 4116 Statement body; 4117 int line; 4118 int column; 4119 jj_consume_token(FOR); 4120 line=token.beginLine; column=token.beginColumn; 4121 jj_consume_token(LPAREN); 4122 if (jj_2_40(2147483647)) { 4123 varExpr = VariableDeclarationExpression(); 4124 jj_consume_token(COLON); 4125 expr = Expression(); 4126 } else { 4127 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 4128 case ABSTRACT: 4129 case BOOLEAN: 4130 case BYTE: 4131 case CHAR: 4132 case DOUBLE: 4133 case FALSE: 4134 case FINAL: 4135 case FLOAT: 4136 case INT: 4137 case LONG: 4138 case NATIVE: 4139 case NEW: 4140 case NULL: 4141 case PRIVATE: 4142 case PROTECTED: 4143 case PUBLIC: 4144 case SHORT: 4145 case STATIC: 4146 case STRICTFP: 4147 case SUPER: 4148 case SYNCHRONIZED: 4149 case THIS: 4150 case TRANSIENT: 4151 case TRUE: 4152 case VOID: 4153 case VOLATILE: 4154 case LONG_LITERAL: 4155 case INTEGER_LITERAL: 4156 case FLOATING_POINT_LITERAL: 4157 case CHARACTER_LITERAL: 4158 case STRING_LITERAL: 4159 case IDENTIFIER: 4160 case LPAREN: 4161 case SEMICOLON: 4162 case AT: 4163 case BANG: 4164 case TILDE: 4165 case INCR: 4166 case DECR: 4167 case PLUS: 4168 case MINUS: 4169 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 4170 case ABSTRACT: 4171 case BOOLEAN: 4172 case BYTE: 4173 case CHAR: 4174 case DOUBLE: 4175 case FALSE: 4176 case FINAL: 4177 case FLOAT: 4178 case INT: 4179 case LONG: 4180 case NATIVE: 4181 case NEW: 4182 case NULL: 4183 case PRIVATE: 4184 case PROTECTED: 4185 case PUBLIC: 4186 case SHORT: 4187 case STATIC: 4188 case STRICTFP: 4189 case SUPER: 4190 case SYNCHRONIZED: 4191 case THIS: 4192 case TRANSIENT: 4193 case TRUE: 4194 case VOID: 4195 case VOLATILE: 4196 case LONG_LITERAL: 4197 case INTEGER_LITERAL: 4198 case FLOATING_POINT_LITERAL: 4199 case CHARACTER_LITERAL: 4200 case STRING_LITERAL: 4201 case IDENTIFIER: 4202 case LPAREN: 4203 case AT: 4204 case BANG: 4205 case TILDE: 4206 case INCR: 4207 case DECR: 4208 case PLUS: 4209 case MINUS: 4210 init = ForInit(); 4211 break; 4212 default: 4213 jj_la1[152] = jj_gen; 4214 ; 4215 } 4216 jj_consume_token(SEMICOLON); 4217 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 4218 case BOOLEAN: 4219 case BYTE: 4220 case CHAR: 4221 case DOUBLE: 4222 case FALSE: 4223 case FLOAT: 4224 case INT: 4225 case LONG: 4226 case NEW: 4227 case NULL: 4228 case SHORT: 4229 case SUPER: 4230 case THIS: 4231 case TRUE: 4232 case VOID: 4233 case LONG_LITERAL: 4234 case INTEGER_LITERAL: 4235 case FLOATING_POINT_LITERAL: 4236 case CHARACTER_LITERAL: 4237 case STRING_LITERAL: 4238 case IDENTIFIER: 4239 case LPAREN: 4240 case BANG: 4241 case TILDE: 4242 case INCR: 4243 case DECR: 4244 case PLUS: 4245 case MINUS: 4246 expr = Expression(); 4247 break; 4248 default: 4249 jj_la1[153] = jj_gen; 4250 ; 4251 } 4252 jj_consume_token(SEMICOLON); 4253 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 4254 case BOOLEAN: 4255 case BYTE: 4256 case CHAR: 4257 case DOUBLE: 4258 case FALSE: 4259 case FLOAT: 4260 case INT: 4261 case LONG: 4262 case NEW: 4263 case NULL: 4264 case SHORT: 4265 case SUPER: 4266 case THIS: 4267 case TRUE: 4268 case VOID: 4269 case LONG_LITERAL: 4270 case INTEGER_LITERAL: 4271 case FLOATING_POINT_LITERAL: 4272 case CHARACTER_LITERAL: 4273 case STRING_LITERAL: 4274 case IDENTIFIER: 4275 case LPAREN: 4276 case BANG: 4277 case TILDE: 4278 case INCR: 4279 case DECR: 4280 case PLUS: 4281 case MINUS: 4282 update = ForUpdate(); 4283 break; 4284 default: 4285 jj_la1[154] = jj_gen; 4286 ; 4287 } 4288 break; 4289 default: 4290 jj_la1[155] = jj_gen; 4291 jj_consume_token(-1); 4292 throw new ParseException(); 4293 } 4294 } 4295 jj_consume_token(RPAREN); 4296 body = Statement(); 4297 if (varExpr != null) { 4298 {if (true) return new ForeachStmt(line, column, token.endLine, token.endColumn,varExpr, expr, body);} 4299 } 4300 {if (true) return new ForStmt(line, column, token.endLine, token.endColumn,init, expr, update, body);} 4301 throw new Error("Missing return statement in function"); 4302 } 4303 4304 final public List ForInit() { 4305 List ret; 4306 Expression expr; 4307 if (jj_2_41(2147483647)) { 4308 expr = VariableDeclarationExpression(); 4309 ret = new LinkedList(); ret.add(expr); 4310 } else { 4311 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 4312 case BOOLEAN: 4313 case BYTE: 4314 case CHAR: 4315 case DOUBLE: 4316 case FALSE: 4317 case FLOAT: 4318 case INT: 4319 case LONG: 4320 case NEW: 4321 case NULL: 4322 case SHORT: 4323 case SUPER: 4324 case THIS: 4325 case TRUE: 4326 case VOID: 4327 case LONG_LITERAL: 4328 case INTEGER_LITERAL: 4329 case FLOATING_POINT_LITERAL: 4330 case CHARACTER_LITERAL: 4331 case STRING_LITERAL: 4332 case IDENTIFIER: 4333 case LPAREN: 4334 case BANG: 4335 case TILDE: 4336 case INCR: 4337 case DECR: 4338 case PLUS: 4339 case MINUS: 4340 ret = ExpressionList(); 4341 break; 4342 default: 4343 jj_la1[156] = jj_gen; 4344 jj_consume_token(-1); 4345 throw new ParseException(); 4346 } 4347 } 4348 {if (true) return ret;} 4349 throw new Error("Missing return statement in function"); 4350 } 4351 4352 final public List ExpressionList() { 4353 List ret = new LinkedList(); 4354 Expression expr; 4355 expr = Expression(); 4356 ret.add(expr); 4357 label_65: 4358 while (true) { 4359 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 4360 case COMMA: 4361 ; 4362 break; 4363 default: 4364 jj_la1[157] = jj_gen; 4365 break label_65; 4366 } 4367 jj_consume_token(COMMA); 4368 expr = Expression(); 4369 ret.add(expr); 4370 } 4371 {if (true) return ret;} 4372 throw new Error("Missing return statement in function"); 4373 } 4374 4375 final public List ForUpdate() { 4376 List ret; 4377 ret = ExpressionList(); 4378 {if (true) return ret;} 4379 throw new Error("Missing return statement in function"); 4380 } 4381 4382 final public BreakStmt BreakStatement() { 4383 String id = null; 4384 int line; 4385 int column; 4386 jj_consume_token(BREAK); 4387 line=token.beginLine; column=token.beginColumn; 4388 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 4389 case IDENTIFIER: 4390 jj_consume_token(IDENTIFIER); 4391 id = token.image; 4392 break; 4393 default: 4394 jj_la1[158] = jj_gen; 4395 ; 4396 } 4397 jj_consume_token(SEMICOLON); 4398 {if (true) return new BreakStmt(line, column, token.endLine, token.endColumn,id);} 4399 throw new Error("Missing return statement in function"); 4400 } 4401 4402 final public ContinueStmt ContinueStatement() { 4403 String id = null; 4404 int line; 4405 int column; 4406 jj_consume_token(CONTINUE); 4407 line=token.beginLine; column=token.beginColumn; 4408 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 4409 case IDENTIFIER: 4410 jj_consume_token(IDENTIFIER); 4411 id = token.image; 4412 break; 4413 default: 4414 jj_la1[159] = jj_gen; 4415 ; 4416 } 4417 jj_consume_token(SEMICOLON); 4418 {if (true) return new ContinueStmt(line, column, token.endLine, token.endColumn,id);} 4419 throw new Error("Missing return statement in function"); 4420 } 4421 4422 final public ReturnStmt ReturnStatement() { 4423 Expression expr = null; 4424 int line; 4425 int column; 4426 jj_consume_token(RETURN); 4427 line=token.beginLine; column=token.beginColumn; 4428 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 4429 case BOOLEAN: 4430 case BYTE: 4431 case CHAR: 4432 case DOUBLE: 4433 case FALSE: 4434 case FLOAT: 4435 case INT: 4436 case LONG: 4437 case NEW: 4438 case NULL: 4439 case SHORT: 4440 case SUPER: 4441 case THIS: 4442 case TRUE: 4443 case VOID: 4444 case LONG_LITERAL: 4445 case INTEGER_LITERAL: 4446 case FLOATING_POINT_LITERAL: 4447 case CHARACTER_LITERAL: 4448 case STRING_LITERAL: 4449 case IDENTIFIER: 4450 case LPAREN: 4451 case BANG: 4452 case TILDE: 4453 case INCR: 4454 case DECR: 4455 case PLUS: 4456 case MINUS: 4457 expr = Expression(); 4458 break; 4459 default: 4460 jj_la1[160] = jj_gen; 4461 ; 4462 } 4463 jj_consume_token(SEMICOLON); 4464 {if (true) return new ReturnStmt(line, column, token.endLine, token.endColumn,expr);} 4465 throw new Error("Missing return statement in function"); 4466 } 4467 4468 final public ThrowStmt ThrowStatement() { 4469 Expression expr; 4470 int line; 4471 int column; 4472 jj_consume_token(THROW); 4473 line=token.beginLine; column=token.beginColumn; 4474 expr = Expression(); 4475 jj_consume_token(SEMICOLON); 4476 {if (true) return new ThrowStmt(line, column, token.endLine, token.endColumn,expr);} 4477 throw new Error("Missing return statement in function"); 4478 } 4479 4480 final public SynchronizedStmt SynchronizedStatement() { 4481 Expression expr; 4482 BlockStmt block; 4483 int line; 4484 int column; 4485 jj_consume_token(SYNCHRONIZED); 4486 line=token.beginLine; column=token.beginColumn; 4487 jj_consume_token(LPAREN); 4488 expr = Expression(); 4489 jj_consume_token(RPAREN); 4490 block = Block(); 4491 {if (true) return new SynchronizedStmt(line, column, token.endLine, token.endColumn,expr, block);} 4492 throw new Error("Missing return statement in function"); 4493 } 4494 4495 final public TryStmt TryStatement() { 4496 List resources = new LinkedList(); 4497 BlockStmt tryBlock; 4498 BlockStmt finallyBlock = null; 4499 List catchs = null; 4500 Parameter except; 4501 BlockStmt catchBlock; 4502 Modifier exceptModifier; 4503 Type exceptType; 4504 List exceptTypes = new LinkedList(); 4505 VariableDeclaratorId exceptId; 4506 int line; 4507 int column; 4508 int cLine; 4509 int cColumn; 4510 jj_consume_token(TRY); 4511 line=token.beginLine; column=token.beginColumn; 4512 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 4513 case LPAREN: 4514 resources = ResourceSpecification(); 4515 break; 4516 default: 4517 jj_la1[161] = jj_gen; 4518 ; 4519 } 4520 tryBlock = Block(); 4521 label_66: 4522 while (true) { 4523 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 4524 case CATCH: 4525 ; 4526 break; 4527 default: 4528 jj_la1[162] = jj_gen; 4529 break label_66; 4530 } 4531 jj_consume_token(CATCH); 4532 cLine=token.beginLine; cColumn=token.beginColumn; 4533 jj_consume_token(LPAREN); 4534 exceptModifier = Modifiers(); 4535 exceptType = Type(); 4536 exceptTypes.add(exceptType); 4537 label_67: 4538 while (true) { 4539 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 4540 case BIT_OR: 4541 ; 4542 break; 4543 default: 4544 jj_la1[163] = jj_gen; 4545 break label_67; 4546 } 4547 jj_consume_token(BIT_OR); 4548 exceptType = Type(); 4549 exceptTypes.add(exceptType); 4550 } 4551 exceptId = VariableDeclaratorId(); 4552 jj_consume_token(RPAREN); 4553 catchBlock = Block(); 4554 catchs = add(catchs, new CatchClause(cLine, cColumn, token.endLine, token.endColumn, exceptModifier.modifiers, exceptModifier.annotations, exceptTypes, exceptId, catchBlock)); exceptTypes = new LinkedList(); 4555 } 4556 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 4557 case FINALLY: 4558 jj_consume_token(FINALLY); 4559 finallyBlock = Block(); 4560 break; 4561 default: 4562 jj_la1[164] = jj_gen; 4563 ; 4564 } 4565 {if (true) return new TryStmt(line, column, token.endLine, token.endColumn, resources, tryBlock, catchs, finallyBlock);} 4566 throw new Error("Missing return statement in function"); 4567 } 4568 4569 final public List ResourceSpecification() { 4570List vars; 4571 jj_consume_token(LPAREN); 4572 vars = Resources(); 4573 if (jj_2_42(2)) { 4574 jj_consume_token(SEMICOLON); 4575 } else { 4576 ; 4577 } 4578 jj_consume_token(RPAREN); 4579 {if (true) return vars;} 4580 throw new Error("Missing return statement in function"); 4581 } 4582 4583 final public List Resources() { 4584 List vars = new LinkedList(); 4585 VariableDeclarationExpr var; 4586 /*this is a bit more lenient than we need to be, eg allowing access modifiers like private*/ 4587 var = VariableDeclarationExpression(); 4588 vars.add(var); 4589 label_68: 4590 while (true) { 4591 if (jj_2_43(2)) { 4592 ; 4593 } else { 4594 break label_68; 4595 } 4596 jj_consume_token(SEMICOLON); 4597 var = VariableDeclarationExpression(); 4598 vars.add(var); 4599 } 4600 {if (true) return vars;} 4601 throw new Error("Missing return statement in function"); 4602 } 4603 4604/* We use productions to match >>>, >> and > so that we can keep the 4605 * type declaration syntax with generics clean 4606 */ 4607 final public void RUNSIGNEDSHIFT() { 4608 if (getToken(1).kind == GT && 4609 ((GTToken)getToken(1)).realKind == RUNSIGNEDSHIFT) { 4610 4611 } else { 4612 jj_consume_token(-1); 4613 throw new ParseException(); 4614 } 4615 jj_consume_token(GT); 4616 jj_consume_token(GT); 4617 jj_consume_token(GT); 4618 } 4619 4620 final public void RSIGNEDSHIFT() { 4621 if (getToken(1).kind == GT && 4622 ((GTToken)getToken(1)).realKind == RSIGNEDSHIFT) { 4623 4624 } else { 4625 jj_consume_token(-1); 4626 throw new ParseException(); 4627 } 4628 jj_consume_token(GT); 4629 jj_consume_token(GT); 4630 } 4631 4632/* Annotation syntax follows. */ 4633 final public AnnotationExpr Annotation() { 4634 AnnotationExpr ret; 4635 if (jj_2_44(2147483647)) { 4636 ret = NormalAnnotation(); 4637 } else if (jj_2_45(2147483647)) { 4638 ret = SingleMemberAnnotation(); 4639 } else { 4640 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 4641 case AT: 4642 ret = MarkerAnnotation(); 4643 break; 4644 default: 4645 jj_la1[165] = jj_gen; 4646 jj_consume_token(-1); 4647 throw new ParseException(); 4648 } 4649 } 4650 {if (true) return ret;} 4651 throw new Error("Missing return statement in function"); 4652 } 4653 4654 final public NormalAnnotationExpr NormalAnnotation() { 4655 NameExpr name; 4656 List pairs = null; 4657 int line; 4658 int column; 4659 jj_consume_token(AT); 4660 line=token.beginLine; column=token.beginColumn; 4661 name = Name(); 4662 jj_consume_token(LPAREN); 4663 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 4664 case IDENTIFIER: 4665 pairs = MemberValuePairs(); 4666 break; 4667 default: 4668 jj_la1[166] = jj_gen; 4669 ; 4670 } 4671 jj_consume_token(RPAREN); 4672 {if (true) return new NormalAnnotationExpr(line, column, token.endLine, token.endColumn,name, pairs);} 4673 throw new Error("Missing return statement in function"); 4674 } 4675 4676 final public MarkerAnnotationExpr MarkerAnnotation() { 4677 NameExpr name; 4678 int line; 4679 int column; 4680 jj_consume_token(AT); 4681 line=token.beginLine; column=token.beginColumn; 4682 name = Name(); 4683 {if (true) return new MarkerAnnotationExpr(line, column, token.endLine, token.endColumn,name);} 4684 throw new Error("Missing return statement in function"); 4685 } 4686 4687 final public SingleMemberAnnotationExpr SingleMemberAnnotation() { 4688 NameExpr name; 4689 Expression memberVal; 4690 int line; 4691 int column; 4692 jj_consume_token(AT); 4693 line=token.beginLine; column=token.beginColumn; 4694 name = Name(); 4695 jj_consume_token(LPAREN); 4696 memberVal = MemberValue(); 4697 jj_consume_token(RPAREN); 4698 {if (true) return new SingleMemberAnnotationExpr(line, column, token.endLine, token.endColumn,name, memberVal);} 4699 throw new Error("Missing return statement in function"); 4700 } 4701 4702 final public List MemberValuePairs() { 4703 List ret = new LinkedList(); 4704 MemberValuePair pair; 4705 pair = MemberValuePair(); 4706 ret.add(pair); 4707 label_69: 4708 while (true) { 4709 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 4710 case COMMA: 4711 ; 4712 break; 4713 default: 4714 jj_la1[167] = jj_gen; 4715 break label_69; 4716 } 4717 jj_consume_token(COMMA); 4718 pair = MemberValuePair(); 4719 ret.add(pair); 4720 } 4721 {if (true) return ret;} 4722 throw new Error("Missing return statement in function"); 4723 } 4724 4725 final public MemberValuePair MemberValuePair() { 4726 String name; 4727 Expression value; 4728 int line; 4729 int column; 4730 jj_consume_token(IDENTIFIER); 4731 name = token.image; line=token.beginLine; column=token.beginColumn; 4732 jj_consume_token(ASSIGN); 4733 value = MemberValue(); 4734 {if (true) return new MemberValuePair(line, column, token.endLine, token.endColumn,name, value);} 4735 throw new Error("Missing return statement in function"); 4736 } 4737 4738 final public Expression MemberValue() { 4739 Expression ret; 4740 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 4741 case AT: 4742 ret = Annotation(); 4743 break; 4744 case LBRACE: 4745 ret = MemberValueArrayInitializer(); 4746 break; 4747 case BOOLEAN: 4748 case BYTE: 4749 case CHAR: 4750 case DOUBLE: 4751 case FALSE: 4752 case FLOAT: 4753 case INT: 4754 case LONG: 4755 case NEW: 4756 case NULL: 4757 case SHORT: 4758 case SUPER: 4759 case THIS: 4760 case TRUE: 4761 case VOID: 4762 case LONG_LITERAL: 4763 case INTEGER_LITERAL: 4764 case FLOATING_POINT_LITERAL: 4765 case CHARACTER_LITERAL: 4766 case STRING_LITERAL: 4767 case IDENTIFIER: 4768 case LPAREN: 4769 case BANG: 4770 case TILDE: 4771 case INCR: 4772 case DECR: 4773 case PLUS: 4774 case MINUS: 4775 ret = ConditionalExpression(); 4776 break; 4777 default: 4778 jj_la1[168] = jj_gen; 4779 jj_consume_token(-1); 4780 throw new ParseException(); 4781 } 4782 {if (true) return ret;} 4783 throw new Error("Missing return statement in function"); 4784 } 4785 4786 final public Expression MemberValueArrayInitializer() { 4787 List ret = new LinkedList(); 4788 Expression member; 4789 int line; 4790 int column; 4791 jj_consume_token(LBRACE); 4792 line=token.beginLine; column=token.beginColumn; 4793 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 4794 case BOOLEAN: 4795 case BYTE: 4796 case CHAR: 4797 case DOUBLE: 4798 case FALSE: 4799 case FLOAT: 4800 case INT: 4801 case LONG: 4802 case NEW: 4803 case NULL: 4804 case SHORT: 4805 case SUPER: 4806 case THIS: 4807 case TRUE: 4808 case VOID: 4809 case LONG_LITERAL: 4810 case INTEGER_LITERAL: 4811 case FLOATING_POINT_LITERAL: 4812 case CHARACTER_LITERAL: 4813 case STRING_LITERAL: 4814 case IDENTIFIER: 4815 case LPAREN: 4816 case LBRACE: 4817 case AT: 4818 case BANG: 4819 case TILDE: 4820 case INCR: 4821 case DECR: 4822 case PLUS: 4823 case MINUS: 4824 member = MemberValue(); 4825 ret.add(member); 4826 label_70: 4827 while (true) { 4828 if (jj_2_46(2)) { 4829 ; 4830 } else { 4831 break label_70; 4832 } 4833 jj_consume_token(COMMA); 4834 member = MemberValue(); 4835 ret.add(member); 4836 } 4837 break; 4838 default: 4839 jj_la1[169] = jj_gen; 4840 ; 4841 } 4842 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 4843 case COMMA: 4844 jj_consume_token(COMMA); 4845 break; 4846 default: 4847 jj_la1[170] = jj_gen; 4848 ; 4849 } 4850 jj_consume_token(RBRACE); 4851 {if (true) return new ArrayInitializerExpr(line, column, token.endLine, token.endColumn,ret);} 4852 throw new Error("Missing return statement in function"); 4853 } 4854 4855/* Annotation Types. */ 4856 final public AnnotationDeclaration AnnotationTypeDeclaration(Modifier modifier) { 4857 NameExpr name; 4858 List members; 4859 int line = modifier.beginLine; 4860 int column = modifier.beginColumn; 4861 jj_consume_token(AT); 4862 if (line == -1) {line=token.beginLine; column=token.beginColumn;} 4863 jj_consume_token(INTERFACE); 4864 name = Name(); 4865 members = AnnotationTypeBody(); 4866 AnnotationDeclaration tmp = new AnnotationDeclaration(line, column, token.endLine, token.endColumn, modifier.modifiers, modifier.annotations, null, members); 4867 tmp.setNameExpr(name); 4868 {if (true) return tmp;} 4869 throw new Error("Missing return statement in function"); 4870 } 4871 4872 final public List AnnotationTypeBody() { 4873 List ret = null; 4874 BodyDeclaration member; 4875 jj_consume_token(LBRACE); 4876 label_71: 4877 while (true) { 4878 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 4879 case ABSTRACT: 4880 case BOOLEAN: 4881 case BYTE: 4882 case CHAR: 4883 case CLASS: 4884 case DOUBLE: 4885 case ENUM: 4886 case FINAL: 4887 case FLOAT: 4888 case INT: 4889 case INTERFACE: 4890 case LONG: 4891 case NATIVE: 4892 case PRIVATE: 4893 case PROTECTED: 4894 case PUBLIC: 4895 case SHORT: 4896 case STATIC: 4897 case STRICTFP: 4898 case SYNCHRONIZED: 4899 case TRANSIENT: 4900 case VOLATILE: 4901 case IDENTIFIER: 4902 case SEMICOLON: 4903 case AT: 4904 ; 4905 break; 4906 default: 4907 jj_la1[171] = jj_gen; 4908 break label_71; 4909 } 4910 member = AnnotationBodyDeclaration(); 4911 ret = add(ret, member); 4912 } 4913 jj_consume_token(RBRACE); 4914 {if (true) return ret;} 4915 throw new Error("Missing return statement in function"); 4916 } 4917 4918 final public BodyDeclaration AnnotationBodyDeclaration() { 4919 Modifier modifier; 4920 BodyDeclaration ret; 4921 4922 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 4923 case SEMICOLON: 4924 jj_consume_token(SEMICOLON); 4925 ret = new EmptyTypeDeclaration(token.beginLine, token.beginColumn, token.endLine, token.endColumn); 4926 break; 4927 case ABSTRACT: 4928 case BOOLEAN: 4929 case BYTE: 4930 case CHAR: 4931 case CLASS: 4932 case DOUBLE: 4933 case ENUM: 4934 case FINAL: 4935 case FLOAT: 4936 case INT: 4937 case INTERFACE: 4938 case LONG: 4939 case NATIVE: 4940 case PRIVATE: 4941 case PROTECTED: 4942 case PUBLIC: 4943 case SHORT: 4944 case STATIC: 4945 case STRICTFP: 4946 case SYNCHRONIZED: 4947 case TRANSIENT: 4948 case VOLATILE: 4949 case IDENTIFIER: 4950 case AT: 4951 modifier = Modifiers(); 4952 if (jj_2_47(2147483647)) { 4953 ret = AnnotationTypeMemberDeclaration(modifier); 4954 } else { 4955 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 4956 case CLASS: 4957 case INTERFACE: 4958 ret = ClassOrInterfaceDeclaration(modifier); 4959 break; 4960 case ENUM: 4961 ret = EnumDeclaration(modifier); 4962 break; 4963 case AT: 4964 ret = AnnotationTypeDeclaration(modifier); 4965 break; 4966 case BOOLEAN: 4967 case BYTE: 4968 case CHAR: 4969 case DOUBLE: 4970 case FLOAT: 4971 case INT: 4972 case LONG: 4973 case SHORT: 4974 case IDENTIFIER: 4975 ret = FieldDeclaration(modifier); 4976 break; 4977 default: 4978 jj_la1[172] = jj_gen; 4979 jj_consume_token(-1); 4980 throw new ParseException(); 4981 } 4982 } 4983 break; 4984 default: 4985 jj_la1[173] = jj_gen; 4986 jj_consume_token(-1); 4987 throw new ParseException(); 4988 } 4989 {if (true) return ret;} 4990 throw new Error("Missing return statement in function"); 4991 } 4992 4993 final public AnnotationMemberDeclaration AnnotationTypeMemberDeclaration(Modifier modifier) { 4994 Type type; 4995 String name; 4996 Expression defaultVal = null; 4997 type = Type(); 4998 jj_consume_token(IDENTIFIER); 4999 name = token.image; 5000 jj_consume_token(LPAREN); 5001 jj_consume_token(RPAREN); 5002 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { 5003 case _DEFAULT: 5004 defaultVal = DefaultValue(); 5005 break; 5006 default: 5007 jj_la1[174] = jj_gen; 5008 ; 5009 } 5010 jj_consume_token(SEMICOLON); 5011 int line = modifier.beginLine; 5012 int column = modifier.beginColumn; 5013 { if (line == -1) {line=type.getBeginLine(); column=type.getBeginColumn();} } 5014 {if (true) return new AnnotationMemberDeclaration(line, column, token.endLine, token.endColumn, modifier.modifiers, modifier.annotations, type, name, defaultVal);} 5015 throw new Error("Missing return statement in function"); 5016 } 5017 5018 final public Expression DefaultValue() { 5019 Expression ret; 5020 jj_consume_token(_DEFAULT); 5021 ret = MemberValue(); 5022 {if (true) return ret;} 5023 throw new Error("Missing return statement in function"); 5024 } 5025 5026 private boolean jj_2_1(int xla) { 5027 jj_la = xla; jj_lastpos = jj_scanpos = token; 5028 try { return !jj_3_1(); } 5029 catch(LookaheadSuccess ls) { return true; } 5030 finally { jj_save(0, xla); } 5031 } 5032 5033 private boolean jj_2_2(int xla) { 5034 jj_la = xla; jj_lastpos = jj_scanpos = token; 5035 try { return !jj_3_2(); } 5036 catch(LookaheadSuccess ls) { return true; } 5037 finally { jj_save(1, xla); } 5038 } 5039 5040 private boolean jj_2_3(int xla) { 5041 jj_la = xla; jj_lastpos = jj_scanpos = token; 5042 try { return !jj_3_3(); } 5043 catch(LookaheadSuccess ls) { return true; } 5044 finally { jj_save(2, xla); } 5045 } 5046 5047 private boolean jj_2_4(int xla) { 5048 jj_la = xla; jj_lastpos = jj_scanpos = token; 5049 try { return !jj_3_4(); } 5050 catch(LookaheadSuccess ls) { return true; } 5051 finally { jj_save(3, xla); } 5052 } 5053 5054 private boolean jj_2_5(int xla) { 5055 jj_la = xla; jj_lastpos = jj_scanpos = token; 5056 try { return !jj_3_5(); } 5057 catch(LookaheadSuccess ls) { return true; } 5058 finally { jj_save(4, xla); } 5059 } 5060 5061 private boolean jj_2_6(int xla) { 5062 jj_la = xla; jj_lastpos = jj_scanpos = token; 5063 try { return !jj_3_6(); } 5064 catch(LookaheadSuccess ls) { return true; } 5065 finally { jj_save(5, xla); } 5066 } 5067 5068 private boolean jj_2_7(int xla) { 5069 jj_la = xla; jj_lastpos = jj_scanpos = token; 5070 try { return !jj_3_7(); } 5071 catch(LookaheadSuccess ls) { return true; } 5072 finally { jj_save(6, xla); } 5073 } 5074 5075 private boolean jj_2_8(int xla) { 5076 jj_la = xla; jj_lastpos = jj_scanpos = token; 5077 try { return !jj_3_8(); } 5078 catch(LookaheadSuccess ls) { return true; } 5079 finally { jj_save(7, xla); } 5080 } 5081 5082 private boolean jj_2_9(int xla) { 5083 jj_la = xla; jj_lastpos = jj_scanpos = token; 5084 try { return !jj_3_9(); } 5085 catch(LookaheadSuccess ls) { return true; } 5086 finally { jj_save(8, xla); } 5087 } 5088 5089 private boolean jj_2_10(int xla) { 5090 jj_la = xla; jj_lastpos = jj_scanpos = token; 5091 try { return !jj_3_10(); } 5092 catch(LookaheadSuccess ls) { return true; } 5093 finally { jj_save(9, xla); } 5094 } 5095 5096 private boolean jj_2_11(int xla) { 5097 jj_la = xla; jj_lastpos = jj_scanpos = token; 5098 try { return !jj_3_11(); } 5099 catch(LookaheadSuccess ls) { return true; } 5100 finally { jj_save(10, xla); } 5101 } 5102 5103 private boolean jj_2_12(int xla) { 5104 jj_la = xla; jj_lastpos = jj_scanpos = token; 5105 try { return !jj_3_12(); } 5106 catch(LookaheadSuccess ls) { return true; } 5107 finally { jj_save(11, xla); } 5108 } 5109 5110 private boolean jj_2_13(int xla) { 5111 jj_la = xla; jj_lastpos = jj_scanpos = token; 5112 try { return !jj_3_13(); } 5113 catch(LookaheadSuccess ls) { return true; } 5114 finally { jj_save(12, xla); } 5115 } 5116 5117 private boolean jj_2_14(int xla) { 5118 jj_la = xla; jj_lastpos = jj_scanpos = token; 5119 try { return !jj_3_14(); } 5120 catch(LookaheadSuccess ls) { return true; } 5121 finally { jj_save(13, xla); } 5122 } 5123 5124 private boolean jj_2_15(int xla) { 5125 jj_la = xla; jj_lastpos = jj_scanpos = token; 5126 try { return !jj_3_15(); } 5127 catch(LookaheadSuccess ls) { return true; } 5128 finally { jj_save(14, xla); } 5129 } 5130 5131 private boolean jj_2_16(int xla) { 5132 jj_la = xla; jj_lastpos = jj_scanpos = token; 5133 try { return !jj_3_16(); } 5134 catch(LookaheadSuccess ls) { return true; } 5135 finally { jj_save(15, xla); } 5136 } 5137 5138 private boolean jj_2_17(int xla) { 5139 jj_la = xla; jj_lastpos = jj_scanpos = token; 5140 try { return !jj_3_17(); } 5141 catch(LookaheadSuccess ls) { return true; } 5142 finally { jj_save(16, xla); } 5143 } 5144 5145 private boolean jj_2_18(int xla) { 5146 jj_la = xla; jj_lastpos = jj_scanpos = token; 5147 try { return !jj_3_18(); } 5148 catch(LookaheadSuccess ls) { return true; } 5149 finally { jj_save(17, xla); } 5150 } 5151 5152 private boolean jj_2_19(int xla) { 5153 jj_la = xla; jj_lastpos = jj_scanpos = token; 5154 try { return !jj_3_19(); } 5155 catch(LookaheadSuccess ls) { return true; } 5156 finally { jj_save(18, xla); } 5157 } 5158 5159 private boolean jj_2_20(int xla) { 5160 jj_la = xla; jj_lastpos = jj_scanpos = token; 5161 try { return !jj_3_20(); } 5162 catch(LookaheadSuccess ls) { return true; } 5163 finally { jj_save(19, xla); } 5164 } 5165 5166 private boolean jj_2_21(int xla) { 5167 jj_la = xla; jj_lastpos = jj_scanpos = token; 5168 try { return !jj_3_21(); } 5169 catch(LookaheadSuccess ls) { return true; } 5170 finally { jj_save(20, xla); } 5171 } 5172 5173 private boolean jj_2_22(int xla) { 5174 jj_la = xla; jj_lastpos = jj_scanpos = token; 5175 try { return !jj_3_22(); } 5176 catch(LookaheadSuccess ls) { return true; } 5177 finally { jj_save(21, xla); } 5178 } 5179 5180 private boolean jj_2_23(int xla) { 5181 jj_la = xla; jj_lastpos = jj_scanpos = token; 5182 try { return !jj_3_23(); } 5183 catch(LookaheadSuccess ls) { return true; } 5184 finally { jj_save(22, xla); } 5185 } 5186 5187 private boolean jj_2_24(int xla) { 5188 jj_la = xla; jj_lastpos = jj_scanpos = token; 5189 try { return !jj_3_24(); } 5190 catch(LookaheadSuccess ls) { return true; } 5191 finally { jj_save(23, xla); } 5192 } 5193 5194 private boolean jj_2_25(int xla) { 5195 jj_la = xla; jj_lastpos = jj_scanpos = token; 5196 try { return !jj_3_25(); } 5197 catch(LookaheadSuccess ls) { return true; } 5198 finally { jj_save(24, xla); } 5199 } 5200 5201 private boolean jj_2_26(int xla) { 5202 jj_la = xla; jj_lastpos = jj_scanpos = token; 5203 try { return !jj_3_26(); } 5204 catch(LookaheadSuccess ls) { return true; } 5205 finally { jj_save(25, xla); } 5206 } 5207 5208 private boolean jj_2_27(int xla) { 5209 jj_la = xla; jj_lastpos = jj_scanpos = token; 5210 try { return !jj_3_27(); } 5211 catch(LookaheadSuccess ls) { return true; } 5212 finally { jj_save(26, xla); } 5213 } 5214 5215 private boolean jj_2_28(int xla) { 5216 jj_la = xla; jj_lastpos = jj_scanpos = token; 5217 try { return !jj_3_28(); } 5218 catch(LookaheadSuccess ls) { return true; } 5219 finally { jj_save(27, xla); } 5220 } 5221 5222 private boolean jj_2_29(int xla) { 5223 jj_la = xla; jj_lastpos = jj_scanpos = token; 5224 try { return !jj_3_29(); } 5225 catch(LookaheadSuccess ls) { return true; } 5226 finally { jj_save(28, xla); } 5227 } 5228 5229 private boolean jj_2_30(int xla) { 5230 jj_la = xla; jj_lastpos = jj_scanpos = token; 5231 try { return !jj_3_30(); } 5232 catch(LookaheadSuccess ls) { return true; } 5233 finally { jj_save(29, xla); } 5234 } 5235 5236 private boolean jj_2_31(int xla) { 5237 jj_la = xla; jj_lastpos = jj_scanpos = token; 5238 try { return !jj_3_31(); } 5239 catch(LookaheadSuccess ls) { return true; } 5240 finally { jj_save(30, xla); } 5241 } 5242 5243 private boolean jj_2_32(int xla) { 5244 jj_la = xla; jj_lastpos = jj_scanpos = token; 5245 try { return !jj_3_32(); } 5246 catch(LookaheadSuccess ls) { return true; } 5247 finally { jj_save(31, xla); } 5248 } 5249 5250 private boolean jj_2_33(int xla) { 5251 jj_la = xla; jj_lastpos = jj_scanpos = token; 5252 try { return !jj_3_33(); } 5253 catch(LookaheadSuccess ls) { return true; } 5254 finally { jj_save(32, xla); } 5255 } 5256 5257 private boolean jj_2_34(int xla) { 5258 jj_la = xla; jj_lastpos = jj_scanpos = token; 5259 try { return !jj_3_34(); } 5260 catch(LookaheadSuccess ls) { return true; } 5261 finally { jj_save(33, xla); } 5262 } 5263 5264 private boolean jj_2_35(int xla) { 5265 jj_la = xla; jj_lastpos = jj_scanpos = token; 5266 try { return !jj_3_35(); } 5267 catch(LookaheadSuccess ls) { return true; } 5268 finally { jj_save(34, xla); } 5269 } 5270 5271 private boolean jj_2_36(int xla) { 5272 jj_la = xla; jj_lastpos = jj_scanpos = token; 5273 try { return !jj_3_36(); } 5274 catch(LookaheadSuccess ls) { return true; } 5275 finally { jj_save(35, xla); } 5276 } 5277 5278 private boolean jj_2_37(int xla) { 5279 jj_la = xla; jj_lastpos = jj_scanpos = token; 5280 try { return !jj_3_37(); } 5281 catch(LookaheadSuccess ls) { return true; } 5282 finally { jj_save(36, xla); } 5283 } 5284 5285 private boolean jj_2_38(int xla) { 5286 jj_la = xla; jj_lastpos = jj_scanpos = token; 5287 try { return !jj_3_38(); } 5288 catch(LookaheadSuccess ls) { return true; } 5289 finally { jj_save(37, xla); } 5290 } 5291 5292 private boolean jj_2_39(int xla) { 5293 jj_la = xla; jj_lastpos = jj_scanpos = token; 5294 try { return !jj_3_39(); } 5295 catch(LookaheadSuccess ls) { return true; } 5296 finally { jj_save(38, xla); } 5297 } 5298 5299 private boolean jj_2_40(int xla) { 5300 jj_la = xla; jj_lastpos = jj_scanpos = token; 5301 try { return !jj_3_40(); } 5302 catch(LookaheadSuccess ls) { return true; } 5303 finally { jj_save(39, xla); } 5304 } 5305 5306 private boolean jj_2_41(int xla) { 5307 jj_la = xla; jj_lastpos = jj_scanpos = token; 5308 try { return !jj_3_41(); } 5309 catch(LookaheadSuccess ls) { return true; } 5310 finally { jj_save(40, xla); } 5311 } 5312 5313 private boolean jj_2_42(int xla) { 5314 jj_la = xla; jj_lastpos = jj_scanpos = token; 5315 try { return !jj_3_42(); } 5316 catch(LookaheadSuccess ls) { return true; } 5317 finally { jj_save(41, xla); } 5318 } 5319 5320 private boolean jj_2_43(int xla) { 5321 jj_la = xla; jj_lastpos = jj_scanpos = token; 5322 try { return !jj_3_43(); } 5323 catch(LookaheadSuccess ls) { return true; } 5324 finally { jj_save(42, xla); } 5325 } 5326 5327 private boolean jj_2_44(int xla) { 5328 jj_la = xla; jj_lastpos = jj_scanpos = token; 5329 try { return !jj_3_44(); } 5330 catch(LookaheadSuccess ls) { return true; } 5331 finally { jj_save(43, xla); } 5332 } 5333 5334 private boolean jj_2_45(int xla) { 5335 jj_la = xla; jj_lastpos = jj_scanpos = token; 5336 try { return !jj_3_45(); } 5337 catch(LookaheadSuccess ls) { return true; } 5338 finally { jj_save(44, xla); } 5339 } 5340 5341 private boolean jj_2_46(int xla) { 5342 jj_la = xla; jj_lastpos = jj_scanpos = token; 5343 try { return !jj_3_46(); } 5344 catch(LookaheadSuccess ls) { return true; } 5345 finally { jj_save(45, xla); } 5346 } 5347 5348 private boolean jj_2_47(int xla) { 5349 jj_la = xla; jj_lastpos = jj_scanpos = token; 5350 try { return !jj_3_47(); } 5351 catch(LookaheadSuccess ls) { return true; } 5352 finally { jj_save(46, xla); } 5353 } 5354 5355 private boolean jj_3R_172() { 5356 if (jj_3R_168()) return true; 5357 Token xsp; 5358 xsp = jj_scanpos; 5359 if (jj_3R_207()) jj_scanpos = xsp; 5360 return false; 5361 } 5362 5363 private boolean jj_3R_294() { 5364 if (jj_3R_133()) return true; 5365 Token xsp; 5366 while (true) { 5367 xsp = jj_scanpos; 5368 if (jj_3_25()) { jj_scanpos = xsp; break; } 5369 } 5370 return false; 5371 } 5372 5373 private boolean jj_3R_422() { 5374 if (jj_3R_100()) return true; 5375 return false; 5376 } 5377 5378 private boolean jj_3R_155() { 5379 if (jj_3R_94()) return true; 5380 if (jj_scan_token(RPAREN)) return true; 5381 if (jj_3R_201()) return true; 5382 return false; 5383 } 5384 5385 private boolean jj_3R_424() { 5386 Token xsp; 5387 while (true) { 5388 xsp = jj_scanpos; 5389 if (jj_3R_437()) { jj_scanpos = xsp; break; } 5390 } 5391 xsp = jj_scanpos; 5392 if (jj_3R_438()) jj_scanpos = xsp; 5393 return false; 5394 } 5395 5396 private boolean jj_3_24() { 5397 if (jj_3R_107()) return true; 5398 if (jj_scan_token(RPAREN)) return true; 5399 if (jj_3R_174()) return true; 5400 return false; 5401 } 5402 5403 private boolean jj_3R_88() { 5404 if (jj_scan_token(LBRACKET)) return true; 5405 if (jj_scan_token(RBRACKET)) return true; 5406 return false; 5407 } 5408 5409 private boolean jj_3R_421() { 5410 if (jj_scan_token(IDENTIFIER)) return true; 5411 return false; 5412 } 5413 5414 private boolean jj_3R_423() { 5415 if (jj_3R_436()) return true; 5416 return false; 5417 } 5418 5419 private boolean jj_3R_388() { 5420 if (jj_scan_token(COMMA)) return true; 5421 if (jj_3R_172()) return true; 5422 return false; 5423 } 5424 5425 private boolean jj_3R_361() { 5426 if (jj_scan_token(TRY)) return true; 5427 Token xsp; 5428 xsp = jj_scanpos; 5429 if (jj_3R_423()) jj_scanpos = xsp; 5430 if (jj_3R_128()) return true; 5431 xsp = jj_scanpos; 5432 if (jj_3R_424()) { 5433 jj_scanpos = xsp; 5434 if (jj_3R_425()) return true; 5435 } 5436 return false; 5437 } 5438 5439 private boolean jj_3R_154() { 5440 if (jj_3R_123()) return true; 5441 return false; 5442 } 5443 5444 private boolean jj_3R_302() { 5445 if (jj_3R_87()) return true; 5446 if (jj_3R_172()) return true; 5447 Token xsp; 5448 while (true) { 5449 xsp = jj_scanpos; 5450 if (jj_3R_388()) { jj_scanpos = xsp; break; } 5451 } 5452 if (jj_scan_token(SEMICOLON)) return true; 5453 return false; 5454 } 5455 5456 private boolean jj_3R_104() { 5457 if (jj_scan_token(LPAREN)) return true; 5458 Token xsp; 5459 while (true) { 5460 xsp = jj_scanpos; 5461 if (jj_3R_154()) { jj_scanpos = xsp; break; } 5462 } 5463 xsp = jj_scanpos; 5464 if (jj_3_24()) { 5465 jj_scanpos = xsp; 5466 if (jj_3R_155()) return true; 5467 } 5468 return false; 5469 } 5470 5471 private boolean jj_3R_241() { 5472 if (jj_scan_token(SEMICOLON)) return true; 5473 return false; 5474 } 5475 5476 private boolean jj_3R_420() { 5477 if (jj_scan_token(IDENTIFIER)) return true; 5478 return false; 5479 } 5480 5481 private boolean jj_3R_106() { 5482 if (jj_scan_token(DECR)) return true; 5483 return false; 5484 } 5485 5486 private boolean jj_3_23() { 5487 Token xsp; 5488 xsp = jj_scanpos; 5489 if (jj_3R_105()) { 5490 jj_scanpos = xsp; 5491 if (jj_3R_106()) return true; 5492 } 5493 return false; 5494 } 5495 5496 private boolean jj_3R_105() { 5497 if (jj_scan_token(INCR)) return true; 5498 return false; 5499 } 5500 5501 private boolean jj_3_5() { 5502 if (jj_3R_87()) return true; 5503 if (jj_scan_token(IDENTIFIER)) return true; 5504 Token xsp; 5505 while (true) { 5506 xsp = jj_scanpos; 5507 if (jj_3R_88()) { jj_scanpos = xsp; break; } 5508 } 5509 xsp = jj_scanpos; 5510 if (jj_scan_token(88)) { 5511 jj_scanpos = xsp; 5512 if (jj_scan_token(91)) { 5513 jj_scanpos = xsp; 5514 if (jj_scan_token(87)) return true; 5515 } 5516 } 5517 return false; 5518 } 5519 5520 private boolean jj_3R_86() { 5521 if (jj_3R_125()) return true; 5522 return false; 5523 } 5524 5525 private boolean jj_3_22() { 5526 if (jj_3R_104()) return true; 5527 return false; 5528 } 5529 5530 private boolean jj_3_4() { 5531 Token xsp; 5532 xsp = jj_scanpos; 5533 if (jj_3R_86()) jj_scanpos = xsp; 5534 if (jj_scan_token(IDENTIFIER)) return true; 5535 if (jj_scan_token(LPAREN)) return true; 5536 return false; 5537 } 5538 5539 private boolean jj_3R_216() { 5540 if (jj_3R_245()) return true; 5541 return false; 5542 } 5543 5544 private boolean jj_3R_267() { 5545 if (jj_3R_294()) return true; 5546 Token xsp; 5547 xsp = jj_scanpos; 5548 if (jj_3_23()) jj_scanpos = xsp; 5549 return false; 5550 } 5551 5552 private boolean jj_3R_277() { 5553 if (jj_3R_303()) return true; 5554 return false; 5555 } 5556 5557 private boolean jj_3R_360() { 5558 if (jj_scan_token(SYNCHRONIZED)) return true; 5559 if (jj_scan_token(LPAREN)) return true; 5560 if (jj_3R_100()) return true; 5561 if (jj_scan_token(RPAREN)) return true; 5562 if (jj_3R_128()) return true; 5563 return false; 5564 } 5565 5566 private boolean jj_3R_271() { 5567 if (jj_scan_token(_DEFAULT)) return true; 5568 if (jj_3R_116()) return true; 5569 return false; 5570 } 5571 5572 private boolean jj_3R_276() { 5573 if (jj_3R_302()) return true; 5574 return false; 5575 } 5576 5577 private boolean jj_3R_235() { 5578 if (jj_3R_104()) return true; 5579 return false; 5580 } 5581 5582 private boolean jj_3R_236() { 5583 if (jj_3R_267()) return true; 5584 return false; 5585 } 5586 5587 private boolean jj_3R_266() { 5588 if (jj_scan_token(BANG)) return true; 5589 return false; 5590 } 5591 5592 private boolean jj_3R_275() { 5593 if (jj_3R_301()) return true; 5594 return false; 5595 } 5596 5597 private boolean jj_3R_265() { 5598 if (jj_scan_token(TILDE)) return true; 5599 return false; 5600 } 5601 5602 private boolean jj_3R_274() { 5603 if (jj_3R_300()) return true; 5604 return false; 5605 } 5606 5607 private boolean jj_3R_234() { 5608 Token xsp; 5609 xsp = jj_scanpos; 5610 if (jj_3R_265()) { 5611 jj_scanpos = xsp; 5612 if (jj_3R_266()) return true; 5613 } 5614 if (jj_3R_174()) return true; 5615 return false; 5616 } 5617 5618 private boolean jj_3R_273() { 5619 if (jj_3R_299()) return true; 5620 return false; 5621 } 5622 5623 private boolean jj_3R_272() { 5624 if (jj_3R_298()) return true; 5625 return false; 5626 } 5627 5628 private boolean jj_3R_359() { 5629 if (jj_scan_token(THROW)) return true; 5630 if (jj_3R_100()) return true; 5631 if (jj_scan_token(SEMICOLON)) return true; 5632 return false; 5633 } 5634 5635 private boolean jj_3R_201() { 5636 Token xsp; 5637 xsp = jj_scanpos; 5638 if (jj_3R_234()) { 5639 jj_scanpos = xsp; 5640 if (jj_3R_235()) { 5641 jj_scanpos = xsp; 5642 if (jj_3R_236()) return true; 5643 } 5644 } 5645 return false; 5646 } 5647 5648 private boolean jj_3R_358() { 5649 if (jj_scan_token(RETURN)) return true; 5650 Token xsp; 5651 xsp = jj_scanpos; 5652 if (jj_3R_422()) jj_scanpos = xsp; 5653 if (jj_scan_token(SEMICOLON)) return true; 5654 return false; 5655 } 5656 5657 private boolean jj_3R_461() { 5658 if (jj_scan_token(COMMA)) return true; 5659 if (jj_3R_100()) return true; 5660 return false; 5661 } 5662 5663 private boolean jj_3R_240() { 5664 if (jj_3R_116()) return true; 5665 Token xsp; 5666 xsp = jj_scanpos; 5667 if (jj_3R_271()) jj_scanpos = xsp; 5668 xsp = jj_scanpos; 5669 if (jj_3R_272()) { 5670 jj_scanpos = xsp; 5671 if (jj_3R_273()) { 5672 jj_scanpos = xsp; 5673 if (jj_3R_274()) { 5674 jj_scanpos = xsp; 5675 if (jj_3R_275()) { 5676 jj_scanpos = xsp; 5677 if (jj_3R_276()) { 5678 jj_scanpos = xsp; 5679 if (jj_3R_277()) return true; 5680 } 5681 } 5682 } 5683 } 5684 } 5685 return false; 5686 } 5687 5688 private boolean jj_3R_242() { 5689 if (jj_scan_token(DECR)) return true; 5690 if (jj_3R_174()) return true; 5691 return false; 5692 } 5693 5694 private boolean jj_3R_357() { 5695 if (jj_scan_token(CONTINUE)) return true; 5696 Token xsp; 5697 xsp = jj_scanpos; 5698 if (jj_3R_421()) jj_scanpos = xsp; 5699 if (jj_scan_token(SEMICOLON)) return true; 5700 return false; 5701 } 5702 5703 private boolean jj_3_6() { 5704 if (jj_3R_89()) return true; 5705 return false; 5706 } 5707 5708 private boolean jj_3R_417() { 5709 if (jj_scan_token(ELSE)) return true; 5710 if (jj_3R_306()) return true; 5711 return false; 5712 } 5713 5714 private boolean jj_3R_118() { 5715 if (jj_scan_token(INCR)) return true; 5716 if (jj_3R_174()) return true; 5717 return false; 5718 } 5719 5720 private boolean jj_3R_435() { 5721 if (jj_3R_452()) return true; 5722 return false; 5723 } 5724 5725 private boolean jj_3R_211() { 5726 if (jj_3R_201()) return true; 5727 return false; 5728 } 5729 5730 private boolean jj_3R_206() { 5731 Token xsp; 5732 xsp = jj_scanpos; 5733 if (jj_3_6()) { 5734 jj_scanpos = xsp; 5735 if (jj_3R_240()) { 5736 jj_scanpos = xsp; 5737 if (jj_3R_241()) return true; 5738 } 5739 } 5740 return false; 5741 } 5742 5743 private boolean jj_3R_356() { 5744 if (jj_scan_token(BREAK)) return true; 5745 Token xsp; 5746 xsp = jj_scanpos; 5747 if (jj_3R_420()) jj_scanpos = xsp; 5748 if (jj_scan_token(SEMICOLON)) return true; 5749 return false; 5750 } 5751 5752 private boolean jj_3R_171() { 5753 if (jj_3R_206()) return true; 5754 return false; 5755 } 5756 5757 private boolean jj_3R_452() { 5758 if (jj_3R_459()) return true; 5759 return false; 5760 } 5761 5762 private boolean jj_3R_279() { 5763 if (jj_3R_123()) return true; 5764 return false; 5765 } 5766 5767 private boolean jj_3R_244() { 5768 if (jj_scan_token(MINUS)) return true; 5769 return false; 5770 } 5771 5772 private boolean jj_3R_113() { 5773 if (jj_scan_token(LBRACE)) return true; 5774 Token xsp; 5775 while (true) { 5776 xsp = jj_scanpos; 5777 if (jj_3R_171()) { jj_scanpos = xsp; break; } 5778 } 5779 if (jj_scan_token(RBRACE)) return true; 5780 return false; 5781 } 5782 5783 private boolean jj_3R_305() { 5784 if (jj_3R_123()) return true; 5785 return false; 5786 } 5787 5788 private boolean jj_3R_243() { 5789 if (jj_scan_token(PLUS)) return true; 5790 return false; 5791 } 5792 5793 private boolean jj_3R_210() { 5794 Token xsp; 5795 xsp = jj_scanpos; 5796 if (jj_3R_243()) { 5797 jj_scanpos = xsp; 5798 if (jj_3R_244()) return true; 5799 } 5800 if (jj_3R_174()) return true; 5801 return false; 5802 } 5803 5804 private boolean jj_3R_209() { 5805 if (jj_3R_242()) return true; 5806 return false; 5807 } 5808 5809 private boolean jj_3_41() { 5810 if (jj_3R_116()) return true; 5811 if (jj_3R_87()) return true; 5812 if (jj_scan_token(IDENTIFIER)) return true; 5813 return false; 5814 } 5815 5816 private boolean jj_3R_208() { 5817 if (jj_3R_118()) return true; 5818 return false; 5819 } 5820 5821 private boolean jj_3R_280() { 5822 if (jj_scan_token(BIT_AND)) return true; 5823 Token xsp; 5824 while (true) { 5825 xsp = jj_scanpos; 5826 if (jj_3R_305()) { jj_scanpos = xsp; break; } 5827 } 5828 if (jj_3R_198()) return true; 5829 return false; 5830 } 5831 5832 private boolean jj_3R_459() { 5833 if (jj_3R_100()) return true; 5834 Token xsp; 5835 while (true) { 5836 xsp = jj_scanpos; 5837 if (jj_3R_461()) { jj_scanpos = xsp; break; } 5838 } 5839 return false; 5840 } 5841 5842 private boolean jj_3R_245() { 5843 if (jj_scan_token(EXTENDS)) return true; 5844 Token xsp; 5845 while (true) { 5846 xsp = jj_scanpos; 5847 if (jj_3R_279()) { jj_scanpos = xsp; break; } 5848 } 5849 if (jj_3R_198()) return true; 5850 while (true) { 5851 xsp = jj_scanpos; 5852 if (jj_3R_280()) { jj_scanpos = xsp; break; } 5853 } 5854 return false; 5855 } 5856 5857 private boolean jj_3R_458() { 5858 if (jj_3R_459()) return true; 5859 return false; 5860 } 5861 5862 private boolean jj_3R_434() { 5863 if (jj_3R_100()) return true; 5864 return false; 5865 } 5866 5867 private boolean jj_3R_457() { 5868 if (jj_3R_117()) return true; 5869 return false; 5870 } 5871 5872 private boolean jj_3R_174() { 5873 Token xsp; 5874 xsp = jj_scanpos; 5875 if (jj_3R_208()) { 5876 jj_scanpos = xsp; 5877 if (jj_3R_209()) { 5878 jj_scanpos = xsp; 5879 if (jj_3R_210()) { 5880 jj_scanpos = xsp; 5881 if (jj_3R_211()) return true; 5882 } 5883 } 5884 } 5885 return false; 5886 } 5887 5888 private boolean jj_3R_430() { 5889 if (jj_scan_token(REM)) return true; 5890 return false; 5891 } 5892 5893 private boolean jj_3_3() { 5894 if (jj_scan_token(COMMA)) return true; 5895 if (jj_3R_85()) return true; 5896 return false; 5897 } 5898 5899 private boolean jj_3R_429() { 5900 if (jj_scan_token(SLASH)) return true; 5901 return false; 5902 } 5903 5904 private boolean jj_3R_182() { 5905 if (jj_scan_token(IDENTIFIER)) return true; 5906 Token xsp; 5907 xsp = jj_scanpos; 5908 if (jj_3R_216()) jj_scanpos = xsp; 5909 return false; 5910 } 5911 5912 private boolean jj_3R_428() { 5913 if (jj_scan_token(STAR)) return true; 5914 return false; 5915 } 5916 5917 private boolean jj_3R_451() { 5918 Token xsp; 5919 xsp = jj_scanpos; 5920 if (jj_3R_457()) { 5921 jj_scanpos = xsp; 5922 if (jj_3R_458()) return true; 5923 } 5924 return false; 5925 } 5926 5927 private boolean jj_3R_412() { 5928 Token xsp; 5929 xsp = jj_scanpos; 5930 if (jj_3R_428()) { 5931 jj_scanpos = xsp; 5932 if (jj_3R_429()) { 5933 jj_scanpos = xsp; 5934 if (jj_3R_430()) return true; 5935 } 5936 } 5937 if (jj_3R_174()) return true; 5938 return false; 5939 } 5940 5941 private boolean jj_3R_217() { 5942 if (jj_3R_123()) return true; 5943 return false; 5944 } 5945 5946 private boolean jj_3R_408() { 5947 if (jj_3R_113()) return true; 5948 return false; 5949 } 5950 5951 private boolean jj_3_40() { 5952 if (jj_3R_117()) return true; 5953 if (jj_scan_token(COLON)) return true; 5954 return false; 5955 } 5956 5957 private boolean jj_3R_376() { 5958 if (jj_3R_174()) return true; 5959 Token xsp; 5960 while (true) { 5961 xsp = jj_scanpos; 5962 if (jj_3R_412()) { jj_scanpos = xsp; break; } 5963 } 5964 return false; 5965 } 5966 5967 private boolean jj_3R_183() { 5968 if (jj_scan_token(COMMA)) return true; 5969 Token xsp; 5970 while (true) { 5971 xsp = jj_scanpos; 5972 if (jj_3R_217()) { jj_scanpos = xsp; break; } 5973 } 5974 if (jj_3R_182()) return true; 5975 return false; 5976 } 5977 5978 private boolean jj_3R_181() { 5979 if (jj_3R_123()) return true; 5980 return false; 5981 } 5982 5983 private boolean jj_3R_433() { 5984 if (jj_3R_451()) return true; 5985 return false; 5986 } 5987 5988 private boolean jj_3R_414() { 5989 if (jj_scan_token(MINUS)) return true; 5990 return false; 5991 } 5992 5993 private boolean jj_3R_413() { 5994 if (jj_scan_token(PLUS)) return true; 5995 return false; 5996 } 5997 5998 private boolean jj_3R_125() { 5999 if (jj_scan_token(LT)) return true; 6000 Token xsp; 6001 while (true) { 6002 xsp = jj_scanpos; 6003 if (jj_3R_181()) { jj_scanpos = xsp; break; } 6004 } 6005 if (jj_3R_182()) return true; 6006 while (true) { 6007 xsp = jj_scanpos; 6008 if (jj_3R_183()) { jj_scanpos = xsp; break; } 6009 } 6010 if (jj_scan_token(GT)) return true; 6011 return false; 6012 } 6013 6014 private boolean jj_3R_419() { 6015 Token xsp; 6016 xsp = jj_scanpos; 6017 if (jj_3R_433()) jj_scanpos = xsp; 6018 if (jj_scan_token(SEMICOLON)) return true; 6019 xsp = jj_scanpos; 6020 if (jj_3R_434()) jj_scanpos = xsp; 6021 if (jj_scan_token(SEMICOLON)) return true; 6022 xsp = jj_scanpos; 6023 if (jj_3R_435()) jj_scanpos = xsp; 6024 return false; 6025 } 6026 6027 private boolean jj_3R_402() { 6028 Token xsp; 6029 xsp = jj_scanpos; 6030 if (jj_3R_413()) { 6031 jj_scanpos = xsp; 6032 if (jj_3R_414()) return true; 6033 } 6034 if (jj_3R_376()) return true; 6035 return false; 6036 } 6037 6038 private boolean jj_3R_418() { 6039 if (jj_3R_117()) return true; 6040 if (jj_scan_token(COLON)) return true; 6041 if (jj_3R_100()) return true; 6042 return false; 6043 } 6044 6045 private boolean jj_3R_372() { 6046 if (jj_3R_376()) return true; 6047 Token xsp; 6048 while (true) { 6049 xsp = jj_scanpos; 6050 if (jj_3R_402()) { jj_scanpos = xsp; break; } 6051 } 6052 return false; 6053 } 6054 6055 private boolean jj_3R_355() { 6056 if (jj_scan_token(FOR)) return true; 6057 if (jj_scan_token(LPAREN)) return true; 6058 Token xsp; 6059 xsp = jj_scanpos; 6060 if (jj_3R_418()) { 6061 jj_scanpos = xsp; 6062 if (jj_3R_419()) return true; 6063 } 6064 if (jj_scan_token(RPAREN)) return true; 6065 if (jj_3R_306()) return true; 6066 return false; 6067 } 6068 6069 private boolean jj_3R_407() { 6070 if (jj_3R_187()) return true; 6071 return false; 6072 } 6073 6074 private boolean jj_3_21() { 6075 if (jj_3R_103()) return true; 6076 return false; 6077 } 6078 6079 private boolean jj_3_20() { 6080 if (jj_3R_102()) return true; 6081 return false; 6082 } 6083 6084 private boolean jj_3R_124() { 6085 if (jj_3R_123()) return true; 6086 return false; 6087 } 6088 6089 private boolean jj_3R_101() { 6090 if (jj_scan_token(LSHIFT)) return true; 6091 return false; 6092 } 6093 6094 private boolean jj_3_19() { 6095 Token xsp; 6096 xsp = jj_scanpos; 6097 if (jj_3R_101()) { 6098 jj_scanpos = xsp; 6099 if (jj_3_20()) { 6100 jj_scanpos = xsp; 6101 if (jj_3_21()) return true; 6102 } 6103 } 6104 if (jj_3R_372()) return true; 6105 return false; 6106 } 6107 6108 private boolean jj_3R_85() { 6109 Token xsp; 6110 while (true) { 6111 xsp = jj_scanpos; 6112 if (jj_3R_124()) { jj_scanpos = xsp; break; } 6113 } 6114 if (jj_scan_token(IDENTIFIER)) return true; 6115 xsp = jj_scanpos; 6116 if (jj_3R_407()) jj_scanpos = xsp; 6117 xsp = jj_scanpos; 6118 if (jj_3R_408()) jj_scanpos = xsp; 6119 return false; 6120 } 6121 6122 private boolean jj_3R_398() { 6123 if (jj_3R_206()) return true; 6124 return false; 6125 } 6126 6127 private boolean jj_3R_373() { 6128 if (jj_scan_token(INSTANCEOF)) return true; 6129 if (jj_3R_87()) return true; 6130 return false; 6131 } 6132 6133 private boolean jj_3R_354() { 6134 if (jj_scan_token(DO)) return true; 6135 if (jj_3R_306()) return true; 6136 if (jj_scan_token(WHILE)) return true; 6137 if (jj_scan_token(LPAREN)) return true; 6138 if (jj_3R_100()) return true; 6139 if (jj_scan_token(RPAREN)) return true; 6140 if (jj_scan_token(SEMICOLON)) return true; 6141 return false; 6142 } 6143 6144 private boolean jj_3R_370() { 6145 if (jj_3R_372()) return true; 6146 Token xsp; 6147 while (true) { 6148 xsp = jj_scanpos; 6149 if (jj_3_19()) { jj_scanpos = xsp; break; } 6150 } 6151 return false; 6152 } 6153 6154 private boolean jj_3R_383() { 6155 if (jj_scan_token(SEMICOLON)) return true; 6156 Token xsp; 6157 while (true) { 6158 xsp = jj_scanpos; 6159 if (jj_3R_398()) { jj_scanpos = xsp; break; } 6160 } 6161 return false; 6162 } 6163 6164 private boolean jj_3R_395() { 6165 if (jj_scan_token(GE)) return true; 6166 return false; 6167 } 6168 6169 private boolean jj_3R_394() { 6170 if (jj_scan_token(LE)) return true; 6171 return false; 6172 } 6173 6174 private boolean jj_3R_393() { 6175 if (jj_scan_token(GT)) return true; 6176 return false; 6177 } 6178 6179 private boolean jj_3R_392() { 6180 if (jj_scan_token(LT)) return true; 6181 return false; 6182 } 6183 6184 private boolean jj_3R_377() { 6185 Token xsp; 6186 xsp = jj_scanpos; 6187 if (jj_3R_392()) { 6188 jj_scanpos = xsp; 6189 if (jj_3R_393()) { 6190 jj_scanpos = xsp; 6191 if (jj_3R_394()) { 6192 jj_scanpos = xsp; 6193 if (jj_3R_395()) return true; 6194 } 6195 } 6196 } 6197 if (jj_3R_370()) return true; 6198 return false; 6199 } 6200 6201 private boolean jj_3R_353() { 6202 if (jj_scan_token(WHILE)) return true; 6203 if (jj_scan_token(LPAREN)) return true; 6204 if (jj_3R_100()) return true; 6205 if (jj_scan_token(RPAREN)) return true; 6206 if (jj_3R_306()) return true; 6207 return false; 6208 } 6209 6210 private boolean jj_3R_382() { 6211 if (jj_3R_85()) return true; 6212 Token xsp; 6213 while (true) { 6214 xsp = jj_scanpos; 6215 if (jj_3_3()) { jj_scanpos = xsp; break; } 6216 } 6217 return false; 6218 } 6219 6220 private boolean jj_3R_368() { 6221 if (jj_3R_370()) return true; 6222 Token xsp; 6223 while (true) { 6224 xsp = jj_scanpos; 6225 if (jj_3R_377()) { jj_scanpos = xsp; break; } 6226 } 6227 return false; 6228 } 6229 6230 private boolean jj_3R_381() { 6231 if (jj_3R_397()) return true; 6232 return false; 6233 } 6234 6235 private boolean jj_3R_369() { 6236 if (jj_scan_token(BIT_AND)) return true; 6237 if (jj_3R_345()) return true; 6238 return false; 6239 } 6240 6241 private boolean jj_3R_299() { 6242 if (jj_scan_token(ENUM)) return true; 6243 if (jj_3R_119()) return true; 6244 Token xsp; 6245 xsp = jj_scanpos; 6246 if (jj_3R_381()) jj_scanpos = xsp; 6247 if (jj_scan_token(LBRACE)) return true; 6248 xsp = jj_scanpos; 6249 if (jj_3R_382()) jj_scanpos = xsp; 6250 xsp = jj_scanpos; 6251 if (jj_scan_token(88)) jj_scanpos = xsp; 6252 xsp = jj_scanpos; 6253 if (jj_3R_383()) jj_scanpos = xsp; 6254 if (jj_scan_token(RBRACE)) return true; 6255 return false; 6256 } 6257 6258 private boolean jj_3R_364() { 6259 if (jj_3R_368()) return true; 6260 Token xsp; 6261 xsp = jj_scanpos; 6262 if (jj_3R_373()) jj_scanpos = xsp; 6263 return false; 6264 } 6265 6266 private boolean jj_3R_352() { 6267 if (jj_scan_token(IF)) return true; 6268 if (jj_scan_token(LPAREN)) return true; 6269 if (jj_3R_100()) return true; 6270 if (jj_scan_token(RPAREN)) return true; 6271 if (jj_3R_306()) return true; 6272 Token xsp; 6273 xsp = jj_scanpos; 6274 if (jj_3R_417()) jj_scanpos = xsp; 6275 return false; 6276 } 6277 6278 private boolean jj_3R_405() { 6279 if (jj_3R_123()) return true; 6280 return false; 6281 } 6282 6283 private boolean jj_3R_375() { 6284 if (jj_scan_token(NE)) return true; 6285 return false; 6286 } 6287 6288 private boolean jj_3R_374() { 6289 if (jj_scan_token(EQ)) return true; 6290 return false; 6291 } 6292 6293 private boolean jj_3R_371() { 6294 Token xsp; 6295 xsp = jj_scanpos; 6296 if (jj_3R_374()) { 6297 jj_scanpos = xsp; 6298 if (jj_3R_375()) return true; 6299 } 6300 if (jj_3R_364()) return true; 6301 return false; 6302 } 6303 6304 private boolean jj_3R_365() { 6305 if (jj_scan_token(XOR)) return true; 6306 if (jj_3R_315()) return true; 6307 return false; 6308 } 6309 6310 private boolean jj_3R_346() { 6311 if (jj_scan_token(BIT_OR)) return true; 6312 if (jj_3R_293()) return true; 6313 return false; 6314 } 6315 6316 private boolean jj_3R_406() { 6317 if (jj_scan_token(COMMA)) return true; 6318 if (jj_3R_198()) return true; 6319 return false; 6320 } 6321 6322 private boolean jj_3R_345() { 6323 if (jj_3R_364()) return true; 6324 Token xsp; 6325 while (true) { 6326 xsp = jj_scanpos; 6327 if (jj_3R_371()) { jj_scanpos = xsp; break; } 6328 } 6329 return false; 6330 } 6331 6332 private boolean jj_3R_450() { 6333 if (jj_scan_token(_DEFAULT)) return true; 6334 return false; 6335 } 6336 6337 private boolean jj_3R_449() { 6338 if (jj_scan_token(CASE)) return true; 6339 if (jj_3R_100()) return true; 6340 return false; 6341 } 6342 6343 private boolean jj_3R_397() { 6344 if (jj_scan_token(IMPLEMENTS)) return true; 6345 Token xsp; 6346 while (true) { 6347 xsp = jj_scanpos; 6348 if (jj_3R_405()) { jj_scanpos = xsp; break; } 6349 } 6350 if (jj_3R_198()) return true; 6351 while (true) { 6352 xsp = jj_scanpos; 6353 if (jj_3R_406()) { jj_scanpos = xsp; break; } 6354 } 6355 return false; 6356 } 6357 6358 private boolean jj_3R_403() { 6359 if (jj_3R_123()) return true; 6360 return false; 6361 } 6362 6363 private boolean jj_3R_316() { 6364 if (jj_scan_token(SC_AND)) return true; 6365 if (jj_3R_264()) return true; 6366 return false; 6367 } 6368 6369 private boolean jj_3R_315() { 6370 if (jj_3R_345()) return true; 6371 Token xsp; 6372 while (true) { 6373 xsp = jj_scanpos; 6374 if (jj_3R_369()) { jj_scanpos = xsp; break; } 6375 } 6376 return false; 6377 } 6378 6379 private boolean jj_3R_432() { 6380 Token xsp; 6381 xsp = jj_scanpos; 6382 if (jj_3R_449()) { 6383 jj_scanpos = xsp; 6384 if (jj_3R_450()) return true; 6385 } 6386 if (jj_scan_token(COLON)) return true; 6387 if (jj_3R_184()) return true; 6388 return false; 6389 } 6390 6391 private boolean jj_3R_295() { 6392 if (jj_scan_token(SC_OR)) return true; 6393 if (jj_3R_233()) return true; 6394 return false; 6395 } 6396 6397 private boolean jj_3R_404() { 6398 if (jj_scan_token(COMMA)) return true; 6399 if (jj_3R_198()) return true; 6400 return false; 6401 } 6402 6403 private boolean jj_3R_396() { 6404 if (jj_scan_token(EXTENDS)) return true; 6405 Token xsp; 6406 while (true) { 6407 xsp = jj_scanpos; 6408 if (jj_3R_403()) { jj_scanpos = xsp; break; } 6409 } 6410 if (jj_3R_198()) return true; 6411 while (true) { 6412 xsp = jj_scanpos; 6413 if (jj_3R_404()) { jj_scanpos = xsp; break; } 6414 } 6415 return false; 6416 } 6417 6418 private boolean jj_3R_293() { 6419 if (jj_3R_315()) return true; 6420 Token xsp; 6421 while (true) { 6422 xsp = jj_scanpos; 6423 if (jj_3R_365()) { jj_scanpos = xsp; break; } 6424 } 6425 return false; 6426 } 6427 6428 private boolean jj_3R_416() { 6429 if (jj_3R_432()) return true; 6430 return false; 6431 } 6432 6433 private boolean jj_3R_351() { 6434 if (jj_scan_token(SWITCH)) return true; 6435 if (jj_scan_token(LPAREN)) return true; 6436 if (jj_3R_100()) return true; 6437 if (jj_scan_token(RPAREN)) return true; 6438 if (jj_scan_token(LBRACE)) return true; 6439 Token xsp; 6440 while (true) { 6441 xsp = jj_scanpos; 6442 if (jj_3R_416()) { jj_scanpos = xsp; break; } 6443 } 6444 if (jj_scan_token(RBRACE)) return true; 6445 return false; 6446 } 6447 6448 private boolean jj_3R_319() { 6449 if (jj_scan_token(INTERFACE)) return true; 6450 return false; 6451 } 6452 6453 private boolean jj_3R_264() { 6454 if (jj_3R_293()) return true; 6455 Token xsp; 6456 while (true) { 6457 xsp = jj_scanpos; 6458 if (jj_3R_346()) { jj_scanpos = xsp; break; } 6459 } 6460 return false; 6461 } 6462 6463 private boolean jj_3R_380() { 6464 if (jj_3R_397()) return true; 6465 return false; 6466 } 6467 6468 private boolean jj_3R_173() { 6469 if (jj_scan_token(COMMA)) return true; 6470 if (jj_3R_172()) return true; 6471 return false; 6472 } 6473 6474 private boolean jj_3R_379() { 6475 if (jj_3R_396()) return true; 6476 return false; 6477 } 6478 6479 private boolean jj_3R_378() { 6480 if (jj_3R_125()) return true; 6481 return false; 6482 } 6483 6484 private boolean jj_3R_456() { 6485 if (jj_3R_125()) return true; 6486 return false; 6487 } 6488 6489 private boolean jj_3R_233() { 6490 if (jj_3R_264()) return true; 6491 Token xsp; 6492 while (true) { 6493 xsp = jj_scanpos; 6494 if (jj_3R_316()) { jj_scanpos = xsp; break; } 6495 } 6496 return false; 6497 } 6498 6499 private boolean jj_3R_298() { 6500 Token xsp; 6501 xsp = jj_scanpos; 6502 if (jj_scan_token(20)) { 6503 jj_scanpos = xsp; 6504 if (jj_3R_319()) return true; 6505 } 6506 if (jj_3R_119()) return true; 6507 xsp = jj_scanpos; 6508 if (jj_3R_378()) jj_scanpos = xsp; 6509 xsp = jj_scanpos; 6510 if (jj_3R_379()) jj_scanpos = xsp; 6511 xsp = jj_scanpos; 6512 if (jj_3R_380()) jj_scanpos = xsp; 6513 if (jj_3R_113()) return true; 6514 return false; 6515 } 6516 6517 private boolean jj_3R_448() { 6518 if (jj_scan_token(ARROW)) return true; 6519 if (jj_3R_296()) return true; 6520 return false; 6521 } 6522 6523 private boolean jj_3R_447() { 6524 if (jj_scan_token(DOUBLECOLON)) return true; 6525 Token xsp; 6526 xsp = jj_scanpos; 6527 if (jj_3R_456()) jj_scanpos = xsp; 6528 xsp = jj_scanpos; 6529 if (jj_scan_token(78)) { 6530 jj_scanpos = xsp; 6531 if (jj_scan_token(43)) return true; 6532 } 6533 return false; 6534 } 6535 6536 private boolean jj_3R_446() { 6537 if (jj_3R_99()) return true; 6538 if (jj_3R_100()) return true; 6539 return false; 6540 } 6541 6542 private boolean jj_3R_445() { 6543 if (jj_scan_token(DECR)) return true; 6544 return false; 6545 } 6546 6547 private boolean jj_3R_200() { 6548 if (jj_3R_233()) return true; 6549 Token xsp; 6550 while (true) { 6551 xsp = jj_scanpos; 6552 if (jj_3R_295()) { jj_scanpos = xsp; break; } 6553 } 6554 return false; 6555 } 6556 6557 private boolean jj_3R_444() { 6558 if (jj_scan_token(INCR)) return true; 6559 return false; 6560 } 6561 6562 private boolean jj_3R_431() { 6563 Token xsp; 6564 xsp = jj_scanpos; 6565 if (jj_3R_444()) { 6566 jj_scanpos = xsp; 6567 if (jj_3R_445()) { 6568 jj_scanpos = xsp; 6569 if (jj_3R_446()) { 6570 jj_scanpos = xsp; 6571 if (jj_3R_447()) { 6572 jj_scanpos = xsp; 6573 if (jj_3R_448()) return true; 6574 } 6575 } 6576 } 6577 } 6578 return false; 6579 } 6580 6581 private boolean jj_3R_367() { 6582 if (jj_3R_294()) return true; 6583 Token xsp; 6584 xsp = jj_scanpos; 6585 if (jj_3R_431()) jj_scanpos = xsp; 6586 return false; 6587 } 6588 6589 private boolean jj_3R_366() { 6590 if (jj_3R_242()) return true; 6591 return false; 6592 } 6593 6594 private boolean jj_3R_268() { 6595 if (jj_scan_token(HOOK)) return true; 6596 if (jj_3R_100()) return true; 6597 if (jj_scan_token(COLON)) return true; 6598 if (jj_3R_151()) return true; 6599 return false; 6600 } 6601 6602 private boolean jj_3R_151() { 6603 if (jj_3R_200()) return true; 6604 Token xsp; 6605 xsp = jj_scanpos; 6606 if (jj_3R_268()) jj_scanpos = xsp; 6607 return false; 6608 } 6609 6610 private boolean jj_3_39() { 6611 if (jj_3R_118()) return true; 6612 return false; 6613 } 6614 6615 private boolean jj_3R_350() { 6616 Token xsp; 6617 xsp = jj_scanpos; 6618 if (jj_3_39()) { 6619 jj_scanpos = xsp; 6620 if (jj_3R_366()) { 6621 jj_scanpos = xsp; 6622 if (jj_3R_367()) return true; 6623 } 6624 } 6625 if (jj_scan_token(SEMICOLON)) return true; 6626 return false; 6627 } 6628 6629 private boolean jj_3R_150() { 6630 if (jj_scan_token(ORASSIGN)) return true; 6631 return false; 6632 } 6633 6634 private boolean jj_3R_149() { 6635 if (jj_scan_token(XORASSIGN)) return true; 6636 return false; 6637 } 6638 6639 private boolean jj_3R_148() { 6640 if (jj_scan_token(ANDASSIGN)) return true; 6641 return false; 6642 } 6643 6644 private boolean jj_3R_147() { 6645 if (jj_scan_token(RUNSIGNEDSHIFTASSIGN)) return true; 6646 return false; 6647 } 6648 6649 private boolean jj_3R_146() { 6650 if (jj_scan_token(RSIGNEDSHIFTASSIGN)) return true; 6651 return false; 6652 } 6653 6654 private boolean jj_3R_145() { 6655 if (jj_scan_token(LSHIFTASSIGN)) return true; 6656 return false; 6657 } 6658 6659 private boolean jj_3R_144() { 6660 if (jj_scan_token(MINUSASSIGN)) return true; 6661 return false; 6662 } 6663 6664 private boolean jj_3R_143() { 6665 if (jj_scan_token(PLUSASSIGN)) return true; 6666 return false; 6667 } 6668 6669 private boolean jj_3R_142() { 6670 if (jj_scan_token(REMASSIGN)) return true; 6671 return false; 6672 } 6673 6674 private boolean jj_3R_141() { 6675 if (jj_scan_token(SLASHASSIGN)) return true; 6676 return false; 6677 } 6678 6679 private boolean jj_3R_140() { 6680 if (jj_scan_token(STARASSIGN)) return true; 6681 return false; 6682 } 6683 6684 private boolean jj_3R_139() { 6685 if (jj_scan_token(ASSIGN)) return true; 6686 return false; 6687 } 6688 6689 private boolean jj_3R_318() { 6690 if (jj_3R_128()) return true; 6691 return false; 6692 } 6693 6694 private boolean jj_3R_99() { 6695 Token xsp; 6696 xsp = jj_scanpos; 6697 if (jj_3R_139()) { 6698 jj_scanpos = xsp; 6699 if (jj_3R_140()) { 6700 jj_scanpos = xsp; 6701 if (jj_3R_141()) { 6702 jj_scanpos = xsp; 6703 if (jj_3R_142()) { 6704 jj_scanpos = xsp; 6705 if (jj_3R_143()) { 6706 jj_scanpos = xsp; 6707 if (jj_3R_144()) { 6708 jj_scanpos = xsp; 6709 if (jj_3R_145()) { 6710 jj_scanpos = xsp; 6711 if (jj_3R_146()) { 6712 jj_scanpos = xsp; 6713 if (jj_3R_147()) { 6714 jj_scanpos = xsp; 6715 if (jj_3R_148()) { 6716 jj_scanpos = xsp; 6717 if (jj_3R_149()) { 6718 jj_scanpos = xsp; 6719 if (jj_3R_150()) return true; 6720 } 6721 } 6722 } 6723 } 6724 } 6725 } 6726 } 6727 } 6728 } 6729 } 6730 } 6731 return false; 6732 } 6733 6734 private boolean jj_3R_84() { 6735 if (jj_3R_123()) return true; 6736 return false; 6737 } 6738 6739 private boolean jj_3R_83() { 6740 if (jj_scan_token(STRICTFP)) return true; 6741 return false; 6742 } 6743 6744 private boolean jj_3R_297() { 6745 if (jj_3R_125()) return true; 6746 return false; 6747 } 6748 6749 private boolean jj_3R_317() { 6750 if (jj_3R_100()) return true; 6751 return false; 6752 } 6753 6754 private boolean jj_3R_82() { 6755 if (jj_scan_token(VOLATILE)) return true; 6756 return false; 6757 } 6758 6759 private boolean jj_3R_81() { 6760 if (jj_scan_token(TRANSIENT)) return true; 6761 return false; 6762 } 6763 6764 private boolean jj_3R_114() { 6765 if (jj_3R_123()) return true; 6766 return false; 6767 } 6768 6769 private boolean jj_3R_80() { 6770 if (jj_scan_token(NATIVE)) return true; 6771 return false; 6772 } 6773 6774 private boolean jj_3R_79() { 6775 if (jj_scan_token(SYNCHRONIZED)) return true; 6776 return false; 6777 } 6778 6779 private boolean jj_3R_270() { 6780 if (jj_scan_token(DOUBLECOLON)) return true; 6781 Token xsp; 6782 xsp = jj_scanpos; 6783 if (jj_3R_297()) jj_scanpos = xsp; 6784 xsp = jj_scanpos; 6785 if (jj_scan_token(78)) { 6786 jj_scanpos = xsp; 6787 if (jj_scan_token(43)) return true; 6788 } 6789 return false; 6790 } 6791 6792 private boolean jj_3R_296() { 6793 Token xsp; 6794 xsp = jj_scanpos; 6795 if (jj_3R_317()) { 6796 jj_scanpos = xsp; 6797 if (jj_3R_318()) return true; 6798 } 6799 return false; 6800 } 6801 6802 private boolean jj_3R_78() { 6803 if (jj_scan_token(ABSTRACT)) return true; 6804 return false; 6805 } 6806 6807 private boolean jj_3R_415() { 6808 if (jj_scan_token(COLON)) return true; 6809 if (jj_3R_100()) return true; 6810 return false; 6811 } 6812 6813 private boolean jj_3R_77() { 6814 if (jj_scan_token(FINAL)) return true; 6815 return false; 6816 } 6817 6818 private boolean jj_3R_76() { 6819 if (jj_scan_token(PRIVATE)) return true; 6820 return false; 6821 } 6822 6823 private boolean jj_3R_75() { 6824 if (jj_scan_token(PROTECTED)) return true; 6825 return false; 6826 } 6827 6828 private boolean jj_3R_74() { 6829 if (jj_scan_token(STATIC)) return true; 6830 return false; 6831 } 6832 6833 private boolean jj_3R_349() { 6834 if (jj_scan_token(SEMICOLON)) return true; 6835 return false; 6836 } 6837 6838 private boolean jj_3_34() { 6839 Token xsp; 6840 while (true) { 6841 xsp = jj_scanpos; 6842 if (jj_3R_114()) { jj_scanpos = xsp; break; } 6843 } 6844 if (jj_scan_token(LBRACKET)) return true; 6845 if (jj_scan_token(RBRACKET)) return true; 6846 return false; 6847 } 6848 6849 private boolean jj_3R_73() { 6850 if (jj_scan_token(PUBLIC)) return true; 6851 return false; 6852 } 6853 6854 private boolean jj_3_2() { 6855 Token xsp; 6856 xsp = jj_scanpos; 6857 if (jj_3R_73()) { 6858 jj_scanpos = xsp; 6859 if (jj_3R_74()) { 6860 jj_scanpos = xsp; 6861 if (jj_3R_75()) { 6862 jj_scanpos = xsp; 6863 if (jj_3R_76()) { 6864 jj_scanpos = xsp; 6865 if (jj_3R_77()) { 6866 jj_scanpos = xsp; 6867 if (jj_3R_78()) { 6868 jj_scanpos = xsp; 6869 if (jj_3R_79()) { 6870 jj_scanpos = xsp; 6871 if (jj_3R_80()) { 6872 jj_scanpos = xsp; 6873 if (jj_3R_81()) { 6874 jj_scanpos = xsp; 6875 if (jj_3R_82()) { 6876 jj_scanpos = xsp; 6877 if (jj_3R_83()) { 6878 jj_scanpos = xsp; 6879 if (jj_3R_84()) return true; 6880 } 6881 } 6882 } 6883 } 6884 } 6885 } 6886 } 6887 } 6888 } 6889 } 6890 } 6891 return false; 6892 } 6893 6894 private boolean jj_3R_116() { 6895 Token xsp; 6896 while (true) { 6897 xsp = jj_scanpos; 6898 if (jj_3_2()) { jj_scanpos = xsp; break; } 6899 } 6900 return false; 6901 } 6902 6903 private boolean jj_3_18() { 6904 if (jj_3R_99()) return true; 6905 if (jj_3R_100()) return true; 6906 return false; 6907 } 6908 6909 private boolean jj_3R_269() { 6910 if (jj_scan_token(ARROW)) return true; 6911 if (jj_3R_296()) return true; 6912 return false; 6913 } 6914 6915 private boolean jj_3R_411() { 6916 if (jj_scan_token(COMMA)) return true; 6917 if (jj_3R_119()) return true; 6918 return false; 6919 } 6920 6921 private boolean jj_3R_239() { 6922 Token xsp; 6923 xsp = jj_scanpos; 6924 if (jj_3_18()) { 6925 jj_scanpos = xsp; 6926 if (jj_3R_269()) { 6927 jj_scanpos = xsp; 6928 if (jj_3R_270()) return true; 6929 } 6930 } 6931 return false; 6932 } 6933 6934 private boolean jj_3_38() { 6935 if (jj_3R_117()) return true; 6936 return false; 6937 } 6938 6939 private boolean jj_3R_117() { 6940 if (jj_3R_116()) return true; 6941 if (jj_3R_87()) return true; 6942 if (jj_3R_172()) return true; 6943 Token xsp; 6944 while (true) { 6945 xsp = jj_scanpos; 6946 if (jj_3R_173()) { jj_scanpos = xsp; break; } 6947 } 6948 return false; 6949 } 6950 6951 private boolean jj_3R_100() { 6952 if (jj_3R_151()) return true; 6953 Token xsp; 6954 xsp = jj_scanpos; 6955 if (jj_3R_239()) jj_scanpos = xsp; 6956 return false; 6957 } 6958 6959 private boolean jj_3_37() { 6960 if (jj_3R_116()) return true; 6961 Token xsp; 6962 xsp = jj_scanpos; 6963 if (jj_scan_token(20)) { 6964 jj_scanpos = xsp; 6965 if (jj_scan_token(40)) return true; 6966 } 6967 return false; 6968 } 6969 6970 private boolean jj_3R_283() { 6971 if (jj_3R_306()) return true; 6972 return false; 6973 } 6974 6975 private boolean jj_3R_282() { 6976 if (jj_3R_117()) return true; 6977 if (jj_scan_token(SEMICOLON)) return true; 6978 return false; 6979 } 6980 6981 private boolean jj_3R_281() { 6982 if (jj_3R_116()) return true; 6983 if (jj_3R_298()) return true; 6984 return false; 6985 } 6986 6987 private boolean jj_3R_246() { 6988 Token xsp; 6989 xsp = jj_scanpos; 6990 if (jj_3R_281()) { 6991 jj_scanpos = xsp; 6992 if (jj_3R_282()) { 6993 jj_scanpos = xsp; 6994 if (jj_3R_283()) return true; 6995 } 6996 } 6997 return false; 6998 } 6999 7000 private boolean jj_3R_122() { 7001 if (jj_3R_123()) return true; 7002 return false; 7003 } 7004 7005 private boolean jj_3R_72() { 7006 Token xsp; 7007 while (true) { 7008 xsp = jj_scanpos; 7009 if (jj_3R_122()) { jj_scanpos = xsp; break; } 7010 } 7011 if (jj_scan_token(PACKAGE)) return true; 7012 if (jj_3R_119()) return true; 7013 if (jj_scan_token(SEMICOLON)) return true; 7014 return false; 7015 } 7016 7017 private boolean jj_3_1() { 7018 if (jj_3R_72()) return true; 7019 return false; 7020 } 7021 7022 private boolean jj_3R_401() { 7023 if (jj_3R_119()) return true; 7024 Token xsp; 7025 while (true) { 7026 xsp = jj_scanpos; 7027 if (jj_3R_411()) { jj_scanpos = xsp; break; } 7028 } 7029 return false; 7030 } 7031 7032 private boolean jj_3R_128() { 7033 if (jj_scan_token(LBRACE)) return true; 7034 if (jj_3R_184()) return true; 7035 if (jj_scan_token(RBRACE)) return true; 7036 return false; 7037 } 7038 7039 private boolean jj_3R_227() { 7040 if (jj_scan_token(IDENTIFIER)) return true; 7041 return false; 7042 } 7043 7044 private boolean jj_3R_115() { 7045 if (jj_scan_token(IDENTIFIER)) return true; 7046 if (jj_scan_token(COLON)) return true; 7047 if (jj_3R_306()) return true; 7048 return false; 7049 } 7050 7051 private boolean jj_3R_348() { 7052 if (jj_scan_token(ASSERT)) return true; 7053 if (jj_3R_100()) return true; 7054 Token xsp; 7055 xsp = jj_scanpos; 7056 if (jj_3R_415()) jj_scanpos = xsp; 7057 if (jj_scan_token(SEMICOLON)) return true; 7058 return false; 7059 } 7060 7061 private boolean jj_3_17() { 7062 if (jj_scan_token(DOT)) return true; 7063 if (jj_scan_token(IDENTIFIER)) return true; 7064 return false; 7065 } 7066 7067 private boolean jj_3R_119() { 7068 if (jj_scan_token(IDENTIFIER)) return true; 7069 Token xsp; 7070 while (true) { 7071 xsp = jj_scanpos; 7072 if (jj_3_17()) { jj_scanpos = xsp; break; } 7073 } 7074 return false; 7075 } 7076 7077 private boolean jj_3R_339() { 7078 if (jj_3R_361()) return true; 7079 return false; 7080 } 7081 7082 private boolean jj_3R_338() { 7083 if (jj_3R_360()) return true; 7084 return false; 7085 } 7086 7087 private boolean jj_3R_337() { 7088 if (jj_3R_359()) return true; 7089 return false; 7090 } 7091 7092 private boolean jj_3R_170() { 7093 if (jj_3R_87()) return true; 7094 return false; 7095 } 7096 7097 private boolean jj_3R_336() { 7098 if (jj_3R_358()) return true; 7099 return false; 7100 } 7101 7102 private boolean jj_3R_169() { 7103 if (jj_scan_token(VOID)) return true; 7104 return false; 7105 } 7106 7107 private boolean jj_3R_335() { 7108 if (jj_3R_357()) return true; 7109 return false; 7110 } 7111 7112 private boolean jj_3R_334() { 7113 if (jj_3R_356()) return true; 7114 return false; 7115 } 7116 7117 private boolean jj_3R_333() { 7118 if (jj_3R_355()) return true; 7119 return false; 7120 } 7121 7122 private boolean jj_3R_332() { 7123 if (jj_3R_354()) return true; 7124 return false; 7125 } 7126 7127 private boolean jj_3R_331() { 7128 if (jj_3R_353()) return true; 7129 return false; 7130 } 7131 7132 private boolean jj_3R_111() { 7133 Token xsp; 7134 xsp = jj_scanpos; 7135 if (jj_3R_169()) { 7136 jj_scanpos = xsp; 7137 if (jj_3R_170()) return true; 7138 } 7139 return false; 7140 } 7141 7142 private boolean jj_3R_330() { 7143 if (jj_3R_352()) return true; 7144 return false; 7145 } 7146 7147 private boolean jj_3R_329() { 7148 if (jj_3R_351()) return true; 7149 return false; 7150 } 7151 7152 private boolean jj_3R_328() { 7153 if (jj_3R_350()) return true; 7154 return false; 7155 } 7156 7157 private boolean jj_3R_327() { 7158 if (jj_3R_349()) return true; 7159 return false; 7160 } 7161 7162 private boolean jj_3R_326() { 7163 if (jj_3R_128()) return true; 7164 return false; 7165 } 7166 7167 private boolean jj_3R_163() { 7168 if (jj_scan_token(DOUBLE)) return true; 7169 return false; 7170 } 7171 7172 private boolean jj_3R_325() { 7173 if (jj_3R_348()) return true; 7174 return false; 7175 } 7176 7177 private boolean jj_3R_162() { 7178 if (jj_scan_token(FLOAT)) return true; 7179 return false; 7180 } 7181 7182 private boolean jj_3R_161() { 7183 if (jj_scan_token(LONG)) return true; 7184 return false; 7185 } 7186 7187 private boolean jj_3_36() { 7188 if (jj_3R_115()) return true; 7189 return false; 7190 } 7191 7192 private boolean jj_3R_160() { 7193 if (jj_scan_token(INT)) return true; 7194 return false; 7195 } 7196 7197 private boolean jj_3R_363() { 7198 if (jj_3R_123()) return true; 7199 return false; 7200 } 7201 7202 private boolean jj_3R_159() { 7203 if (jj_scan_token(SHORT)) return true; 7204 return false; 7205 } 7206 7207 private boolean jj_3R_362() { 7208 if (jj_3R_123()) return true; 7209 return false; 7210 } 7211 7212 private boolean jj_3R_158() { 7213 if (jj_scan_token(BYTE)) return true; 7214 return false; 7215 } 7216 7217 private boolean jj_3R_157() { 7218 if (jj_scan_token(CHAR)) return true; 7219 return false; 7220 } 7221 7222 private boolean jj_3R_156() { 7223 if (jj_scan_token(BOOLEAN)) return true; 7224 return false; 7225 } 7226 7227 private boolean jj_3R_306() { 7228 Token xsp; 7229 xsp = jj_scanpos; 7230 if (jj_3_36()) { 7231 jj_scanpos = xsp; 7232 if (jj_3R_325()) { 7233 jj_scanpos = xsp; 7234 if (jj_3R_326()) { 7235 jj_scanpos = xsp; 7236 if (jj_3R_327()) { 7237 jj_scanpos = xsp; 7238 if (jj_3R_328()) { 7239 jj_scanpos = xsp; 7240 if (jj_3R_329()) { 7241 jj_scanpos = xsp; 7242 if (jj_3R_330()) { 7243 jj_scanpos = xsp; 7244 if (jj_3R_331()) { 7245 jj_scanpos = xsp; 7246 if (jj_3R_332()) { 7247 jj_scanpos = xsp; 7248 if (jj_3R_333()) { 7249 jj_scanpos = xsp; 7250 if (jj_3R_334()) { 7251 jj_scanpos = xsp; 7252 if (jj_3R_335()) { 7253 jj_scanpos = xsp; 7254 if (jj_3R_336()) { 7255 jj_scanpos = xsp; 7256 if (jj_3R_337()) { 7257 jj_scanpos = xsp; 7258 if (jj_3R_338()) { 7259 jj_scanpos = xsp; 7260 if (jj_3R_339()) return true; 7261 } 7262 } 7263 } 7264 } 7265 } 7266 } 7267 } 7268 } 7269 } 7270 } 7271 } 7272 } 7273 } 7274 } 7275 } 7276 return false; 7277 } 7278 7279 private boolean jj_3R_344() { 7280 if (jj_scan_token(SUPER)) return true; 7281 Token xsp; 7282 while (true) { 7283 xsp = jj_scanpos; 7284 if (jj_3R_363()) { jj_scanpos = xsp; break; } 7285 } 7286 if (jj_3R_94()) return true; 7287 return false; 7288 } 7289 7290 private boolean jj_3R_107() { 7291 Token xsp; 7292 xsp = jj_scanpos; 7293 if (jj_3R_156()) { 7294 jj_scanpos = xsp; 7295 if (jj_3R_157()) { 7296 jj_scanpos = xsp; 7297 if (jj_3R_158()) { 7298 jj_scanpos = xsp; 7299 if (jj_3R_159()) { 7300 jj_scanpos = xsp; 7301 if (jj_3R_160()) { 7302 jj_scanpos = xsp; 7303 if (jj_3R_161()) { 7304 jj_scanpos = xsp; 7305 if (jj_3R_162()) { 7306 jj_scanpos = xsp; 7307 if (jj_3R_163()) return true; 7308 } 7309 } 7310 } 7311 } 7312 } 7313 } 7314 } 7315 return false; 7316 } 7317 7318 private boolean jj_3R_342() { 7319 if (jj_scan_token(LBRACKET)) return true; 7320 if (jj_scan_token(RBRACKET)) return true; 7321 return false; 7322 } 7323 7324 private boolean jj_3R_343() { 7325 if (jj_scan_token(EXTENDS)) return true; 7326 Token xsp; 7327 while (true) { 7328 xsp = jj_scanpos; 7329 if (jj_3R_362()) { jj_scanpos = xsp; break; } 7330 } 7331 if (jj_3R_94()) return true; 7332 return false; 7333 } 7334 7335 private boolean jj_3R_314() { 7336 Token xsp; 7337 xsp = jj_scanpos; 7338 if (jj_3R_343()) { 7339 jj_scanpos = xsp; 7340 if (jj_3R_344()) return true; 7341 } 7342 return false; 7343 } 7344 7345 private boolean jj_3R_312() { 7346 Token xsp; 7347 if (jj_3R_342()) return true; 7348 while (true) { 7349 xsp = jj_scanpos; 7350 if (jj_3R_342()) { jj_scanpos = xsp; break; } 7351 } 7352 if (jj_3R_185()) return true; 7353 return false; 7354 } 7355 7356 private boolean jj_3_33() { 7357 if (jj_scan_token(LBRACKET)) return true; 7358 if (jj_3R_100()) return true; 7359 if (jj_scan_token(RBRACKET)) return true; 7360 return false; 7361 } 7362 7363 private boolean jj_3_32() { 7364 if (jj_3R_113()) return true; 7365 return false; 7366 } 7367 7368 private boolean jj_3_35() { 7369 Token xsp; 7370 if (jj_3_33()) return true; 7371 while (true) { 7372 xsp = jj_scanpos; 7373 if (jj_3_33()) { jj_scanpos = xsp; break; } 7374 } 7375 while (true) { 7376 xsp = jj_scanpos; 7377 if (jj_3_34()) { jj_scanpos = xsp; break; } 7378 } 7379 return false; 7380 } 7381 7382 private boolean jj_3R_229() { 7383 if (jj_scan_token(COMMA)) return true; 7384 if (jj_3R_199()) return true; 7385 return false; 7386 } 7387 7388 private boolean jj_3R_311() { 7389 if (jj_3R_123()) return true; 7390 return false; 7391 } 7392 7393 private boolean jj_3R_289() { 7394 Token xsp; 7395 while (true) { 7396 xsp = jj_scanpos; 7397 if (jj_3R_311()) { jj_scanpos = xsp; break; } 7398 } 7399 xsp = jj_scanpos; 7400 if (jj_3_35()) { 7401 jj_scanpos = xsp; 7402 if (jj_3R_312()) return true; 7403 } 7404 return false; 7405 } 7406 7407 private boolean jj_3R_313() { 7408 if (jj_3R_123()) return true; 7409 return false; 7410 } 7411 7412 private boolean jj_3R_263() { 7413 if (jj_scan_token(HOOK)) return true; 7414 Token xsp; 7415 xsp = jj_scanpos; 7416 if (jj_3R_314()) jj_scanpos = xsp; 7417 return false; 7418 } 7419 7420 private boolean jj_3R_292() { 7421 if (jj_3R_187()) return true; 7422 Token xsp; 7423 xsp = jj_scanpos; 7424 if (jj_3_32()) jj_scanpos = xsp; 7425 return false; 7426 } 7427 7428 private boolean jj_3R_232() { 7429 if (jj_3R_263()) return true; 7430 return false; 7431 } 7432 7433 private boolean jj_3R_231() { 7434 if (jj_3R_94()) return true; 7435 return false; 7436 } 7437 7438 private boolean jj_3R_460() { 7439 if (jj_3R_462()) return true; 7440 return false; 7441 } 7442 7443 private boolean jj_3R_230() { 7444 if (jj_3R_123()) return true; 7445 return false; 7446 } 7447 7448 private boolean jj_3R_199() { 7449 Token xsp; 7450 while (true) { 7451 xsp = jj_scanpos; 7452 if (jj_3R_230()) { jj_scanpos = xsp; break; } 7453 } 7454 xsp = jj_scanpos; 7455 if (jj_3R_231()) { 7456 jj_scanpos = xsp; 7457 if (jj_3R_232()) return true; 7458 } 7459 return false; 7460 } 7461 7462 private boolean jj_3R_291() { 7463 if (jj_3R_289()) return true; 7464 return false; 7465 } 7466 7467 private boolean jj_3R_96() { 7468 if (jj_3R_123()) return true; 7469 return false; 7470 } 7471 7472 private boolean jj_3R_98() { 7473 if (jj_3R_123()) return true; 7474 return false; 7475 } 7476 7477 private boolean jj_3R_290() { 7478 if (jj_3R_97()) return true; 7479 Token xsp; 7480 while (true) { 7481 xsp = jj_scanpos; 7482 if (jj_3R_313()) { jj_scanpos = xsp; break; } 7483 } 7484 return false; 7485 } 7486 7487 private boolean jj_3R_138() { 7488 if (jj_scan_token(132)) return true; 7489 return false; 7490 } 7491 7492 private boolean jj_3R_262() { 7493 Token xsp; 7494 xsp = jj_scanpos; 7495 if (jj_3R_290()) jj_scanpos = xsp; 7496 if (jj_3R_198()) return true; 7497 xsp = jj_scanpos; 7498 if (jj_3R_291()) { 7499 jj_scanpos = xsp; 7500 if (jj_3R_292()) return true; 7501 } 7502 return false; 7503 } 7504 7505 private boolean jj_3R_95() { 7506 if (jj_3R_123()) return true; 7507 return false; 7508 } 7509 7510 private boolean jj_3R_284() { 7511 if (jj_scan_token(COMMA)) return true; 7512 if (jj_3R_100()) return true; 7513 return false; 7514 } 7515 7516 private boolean jj_3_13() { 7517 Token xsp; 7518 while (true) { 7519 xsp = jj_scanpos; 7520 if (jj_3R_96()) { jj_scanpos = xsp; break; } 7521 } 7522 if (jj_scan_token(LBRACKET)) return true; 7523 if (jj_scan_token(RBRACKET)) return true; 7524 return false; 7525 } 7526 7527 private boolean jj_3R_137() { 7528 if (jj_scan_token(LT)) return true; 7529 if (jj_3R_199()) return true; 7530 Token xsp; 7531 while (true) { 7532 xsp = jj_scanpos; 7533 if (jj_3R_229()) { jj_scanpos = xsp; break; } 7534 } 7535 if (jj_scan_token(GT)) return true; 7536 return false; 7537 } 7538 7539 private boolean jj_3R_97() { 7540 Token xsp; 7541 xsp = jj_scanpos; 7542 if (jj_3R_137()) { 7543 jj_scanpos = xsp; 7544 if (jj_3R_138()) return true; 7545 } 7546 return false; 7547 } 7548 7549 private boolean jj_3_16() { 7550 if (jj_3R_97()) return true; 7551 return false; 7552 } 7553 7554 private boolean jj_3_15() { 7555 if (jj_scan_token(DOT)) return true; 7556 Token xsp; 7557 while (true) { 7558 xsp = jj_scanpos; 7559 if (jj_3R_98()) { jj_scanpos = xsp; break; } 7560 } 7561 if (jj_scan_token(IDENTIFIER)) return true; 7562 xsp = jj_scanpos; 7563 if (jj_3_16()) jj_scanpos = xsp; 7564 return false; 7565 } 7566 7567 private boolean jj_3R_261() { 7568 if (jj_3R_107()) return true; 7569 if (jj_3R_289()) return true; 7570 return false; 7571 } 7572 7573 private boolean jj_3_12() { 7574 Token xsp; 7575 while (true) { 7576 xsp = jj_scanpos; 7577 if (jj_3R_95()) { jj_scanpos = xsp; break; } 7578 } 7579 if (jj_scan_token(LBRACKET)) return true; 7580 if (jj_scan_token(RBRACKET)) return true; 7581 return false; 7582 } 7583 7584 private boolean jj_3R_386() { 7585 if (jj_scan_token(THROWS)) return true; 7586 if (jj_3R_401()) return true; 7587 return false; 7588 } 7589 7590 private boolean jj_3_14() { 7591 if (jj_3R_97()) return true; 7592 return false; 7593 } 7594 7595 private boolean jj_3R_260() { 7596 if (jj_3R_123()) return true; 7597 return false; 7598 } 7599 7600 private boolean jj_3R_198() { 7601 if (jj_scan_token(IDENTIFIER)) return true; 7602 Token xsp; 7603 xsp = jj_scanpos; 7604 if (jj_3_14()) jj_scanpos = xsp; 7605 while (true) { 7606 xsp = jj_scanpos; 7607 if (jj_3_15()) { jj_scanpos = xsp; break; } 7608 } 7609 return false; 7610 } 7611 7612 private boolean jj_3R_225() { 7613 if (jj_scan_token(NEW)) return true; 7614 Token xsp; 7615 while (true) { 7616 xsp = jj_scanpos; 7617 if (jj_3R_260()) { jj_scanpos = xsp; break; } 7618 } 7619 xsp = jj_scanpos; 7620 if (jj_3R_261()) { 7621 jj_scanpos = xsp; 7622 if (jj_3R_262()) return true; 7623 } 7624 return false; 7625 } 7626 7627 private boolean jj_3R_462() { 7628 if (jj_scan_token(_DEFAULT)) return true; 7629 if (jj_3R_121()) return true; 7630 return false; 7631 } 7632 7633 private boolean jj_3R_136() { 7634 if (jj_3R_198()) return true; 7635 Token xsp; 7636 while (true) { 7637 xsp = jj_scanpos; 7638 if (jj_3_13()) { jj_scanpos = xsp; break; } 7639 } 7640 return false; 7641 } 7642 7643 private boolean jj_3R_135() { 7644 if (jj_3R_107()) return true; 7645 Token xsp; 7646 if (jj_3_12()) return true; 7647 while (true) { 7648 xsp = jj_scanpos; 7649 if (jj_3_12()) { jj_scanpos = xsp; break; } 7650 } 7651 return false; 7652 } 7653 7654 private boolean jj_3R_94() { 7655 Token xsp; 7656 xsp = jj_scanpos; 7657 if (jj_3R_135()) { 7658 jj_scanpos = xsp; 7659 if (jj_3R_136()) return true; 7660 } 7661 return false; 7662 } 7663 7664 private boolean jj_3R_247() { 7665 if (jj_3R_100()) return true; 7666 Token xsp; 7667 while (true) { 7668 xsp = jj_scanpos; 7669 if (jj_3R_284()) { jj_scanpos = xsp; break; } 7670 } 7671 return false; 7672 } 7673 7674 private boolean jj_3R_455() { 7675 if (jj_3R_87()) return true; 7676 if (jj_scan_token(IDENTIFIER)) return true; 7677 if (jj_scan_token(LPAREN)) return true; 7678 if (jj_scan_token(RPAREN)) return true; 7679 Token xsp; 7680 xsp = jj_scanpos; 7681 if (jj_3R_460()) jj_scanpos = xsp; 7682 if (jj_scan_token(SEMICOLON)) return true; 7683 return false; 7684 } 7685 7686 private boolean jj_3R_219() { 7687 if (jj_3R_247()) return true; 7688 return false; 7689 } 7690 7691 private boolean jj_3_47() { 7692 if (jj_3R_87()) return true; 7693 if (jj_scan_token(IDENTIFIER)) return true; 7694 if (jj_scan_token(LPAREN)) return true; 7695 return false; 7696 } 7697 7698 private boolean jj_3R_443() { 7699 if (jj_3R_302()) return true; 7700 return false; 7701 } 7702 7703 private boolean jj_3R_442() { 7704 if (jj_3R_300()) return true; 7705 return false; 7706 } 7707 7708 private boolean jj_3R_187() { 7709 if (jj_scan_token(LPAREN)) return true; 7710 Token xsp; 7711 xsp = jj_scanpos; 7712 if (jj_3R_219()) jj_scanpos = xsp; 7713 if (jj_scan_token(RPAREN)) return true; 7714 return false; 7715 } 7716 7717 private boolean jj_3R_126() { 7718 if (jj_3R_107()) return true; 7719 return false; 7720 } 7721 7722 private boolean jj_3R_441() { 7723 if (jj_3R_299()) return true; 7724 return false; 7725 } 7726 7727 private boolean jj_3_11() { 7728 if (jj_3R_94()) return true; 7729 return false; 7730 } 7731 7732 private boolean jj_3R_440() { 7733 if (jj_3R_298()) return true; 7734 return false; 7735 } 7736 7737 private boolean jj_3R_87() { 7738 Token xsp; 7739 xsp = jj_scanpos; 7740 if (jj_3_11()) { 7741 jj_scanpos = xsp; 7742 if (jj_3R_126()) return true; 7743 } 7744 return false; 7745 } 7746 7747 private boolean jj_3R_439() { 7748 if (jj_3R_455()) return true; 7749 return false; 7750 } 7751 7752 private boolean jj_3R_286() { 7753 if (jj_scan_token(NULL)) return true; 7754 return false; 7755 } 7756 7757 private boolean jj_3R_308() { 7758 if (jj_scan_token(FALSE)) return true; 7759 return false; 7760 } 7761 7762 private boolean jj_3R_307() { 7763 if (jj_scan_token(TRUE)) return true; 7764 return false; 7765 } 7766 7767 private boolean jj_3_46() { 7768 if (jj_scan_token(COMMA)) return true; 7769 if (jj_3R_121()) return true; 7770 return false; 7771 } 7772 7773 private boolean jj_3R_426() { 7774 if (jj_scan_token(SEMICOLON)) return true; 7775 return false; 7776 } 7777 7778 private boolean jj_3R_427() { 7779 if (jj_3R_116()) return true; 7780 Token xsp; 7781 xsp = jj_scanpos; 7782 if (jj_3R_439()) { 7783 jj_scanpos = xsp; 7784 if (jj_3R_440()) { 7785 jj_scanpos = xsp; 7786 if (jj_3R_441()) { 7787 jj_scanpos = xsp; 7788 if (jj_3R_442()) { 7789 jj_scanpos = xsp; 7790 if (jj_3R_443()) return true; 7791 } 7792 } 7793 } 7794 } 7795 return false; 7796 } 7797 7798 private boolean jj_3R_127() { 7799 if (jj_scan_token(STATIC)) return true; 7800 return false; 7801 } 7802 7803 private boolean jj_3R_89() { 7804 Token xsp; 7805 xsp = jj_scanpos; 7806 if (jj_3R_127()) jj_scanpos = xsp; 7807 if (jj_3R_128()) return true; 7808 return false; 7809 } 7810 7811 private boolean jj_3R_285() { 7812 Token xsp; 7813 xsp = jj_scanpos; 7814 if (jj_3R_307()) { 7815 jj_scanpos = xsp; 7816 if (jj_3R_308()) return true; 7817 } 7818 return false; 7819 } 7820 7821 private boolean jj_3R_409() { 7822 Token xsp; 7823 xsp = jj_scanpos; 7824 if (jj_3R_426()) { 7825 jj_scanpos = xsp; 7826 if (jj_3R_427()) return true; 7827 } 7828 return false; 7829 } 7830 7831 private boolean jj_3R_254() { 7832 if (jj_3R_286()) return true; 7833 return false; 7834 } 7835 7836 private boolean jj_3R_218() { 7837 if (jj_3R_246()) return true; 7838 return false; 7839 } 7840 7841 private boolean jj_3R_253() { 7842 if (jj_3R_285()) return true; 7843 return false; 7844 } 7845 7846 private boolean jj_3R_184() { 7847 Token xsp; 7848 while (true) { 7849 xsp = jj_scanpos; 7850 if (jj_3R_218()) { jj_scanpos = xsp; break; } 7851 } 7852 return false; 7853 } 7854 7855 private boolean jj_3R_399() { 7856 if (jj_3R_409()) return true; 7857 return false; 7858 } 7859 7860 private boolean jj_3_9() { 7861 if (jj_3R_92()) return true; 7862 if (jj_scan_token(DOT)) return true; 7863 return false; 7864 } 7865 7866 private boolean jj_3R_252() { 7867 if (jj_scan_token(STRING_LITERAL)) return true; 7868 return false; 7869 } 7870 7871 private boolean jj_3R_251() { 7872 if (jj_scan_token(CHARACTER_LITERAL)) return true; 7873 return false; 7874 } 7875 7876 private boolean jj_3R_384() { 7877 if (jj_scan_token(LBRACE)) return true; 7878 Token xsp; 7879 while (true) { 7880 xsp = jj_scanpos; 7881 if (jj_3R_399()) { jj_scanpos = xsp; break; } 7882 } 7883 if (jj_scan_token(RBRACE)) return true; 7884 return false; 7885 } 7886 7887 private boolean jj_3R_93() { 7888 if (jj_3R_97()) return true; 7889 return false; 7890 } 7891 7892 private boolean jj_3R_189() { 7893 if (jj_3R_97()) return true; 7894 return false; 7895 } 7896 7897 private boolean jj_3_10() { 7898 Token xsp; 7899 xsp = jj_scanpos; 7900 if (jj_3R_93()) jj_scanpos = xsp; 7901 if (jj_scan_token(THIS)) return true; 7902 if (jj_scan_token(LPAREN)) return true; 7903 return false; 7904 } 7905 7906 private boolean jj_3R_250() { 7907 if (jj_scan_token(FLOATING_POINT_LITERAL)) return true; 7908 return false; 7909 } 7910 7911 private boolean jj_3R_188() { 7912 if (jj_3R_92()) return true; 7913 if (jj_scan_token(DOT)) return true; 7914 return false; 7915 } 7916 7917 private boolean jj_3R_249() { 7918 if (jj_scan_token(LONG_LITERAL)) return true; 7919 return false; 7920 } 7921 7922 private boolean jj_3R_132() { 7923 Token xsp; 7924 xsp = jj_scanpos; 7925 if (jj_3R_188()) jj_scanpos = xsp; 7926 xsp = jj_scanpos; 7927 if (jj_3R_189()) jj_scanpos = xsp; 7928 if (jj_scan_token(SUPER)) return true; 7929 if (jj_3R_187()) return true; 7930 if (jj_scan_token(SEMICOLON)) return true; 7931 return false; 7932 } 7933 7934 private boolean jj_3R_186() { 7935 if (jj_3R_97()) return true; 7936 return false; 7937 } 7938 7939 private boolean jj_3R_248() { 7940 if (jj_scan_token(INTEGER_LITERAL)) return true; 7941 return false; 7942 } 7943 7944 private boolean jj_3R_131() { 7945 Token xsp; 7946 xsp = jj_scanpos; 7947 if (jj_3R_186()) jj_scanpos = xsp; 7948 if (jj_scan_token(THIS)) return true; 7949 if (jj_3R_187()) return true; 7950 if (jj_scan_token(SEMICOLON)) return true; 7951 return false; 7952 } 7953 7954 private boolean jj_3R_300() { 7955 if (jj_scan_token(AT)) return true; 7956 if (jj_scan_token(INTERFACE)) return true; 7957 if (jj_3R_119()) return true; 7958 if (jj_3R_384()) return true; 7959 return false; 7960 } 7961 7962 private boolean jj_3R_112() { 7963 if (jj_3R_97()) return true; 7964 return false; 7965 } 7966 7967 private boolean jj_3R_220() { 7968 Token xsp; 7969 xsp = jj_scanpos; 7970 if (jj_3R_248()) { 7971 jj_scanpos = xsp; 7972 if (jj_3R_249()) { 7973 jj_scanpos = xsp; 7974 if (jj_3R_250()) { 7975 jj_scanpos = xsp; 7976 if (jj_3R_251()) { 7977 jj_scanpos = xsp; 7978 if (jj_3R_252()) { 7979 jj_scanpos = xsp; 7980 if (jj_3R_253()) { 7981 jj_scanpos = xsp; 7982 if (jj_3R_254()) return true; 7983 } 7984 } 7985 } 7986 } 7987 } 7988 } 7989 return false; 7990 } 7991 7992 private boolean jj_3R_91() { 7993 Token xsp; 7994 xsp = jj_scanpos; 7995 if (jj_3R_131()) { 7996 jj_scanpos = xsp; 7997 if (jj_3R_132()) return true; 7998 } 7999 return false; 8000 } 8001 8002 private boolean jj_3R_166() { 8003 if (jj_scan_token(LBRACKET)) return true; 8004 if (jj_3R_100()) return true; 8005 if (jj_scan_token(RBRACKET)) return true; 8006 return false; 8007 } 8008 8009 private boolean jj_3_31() { 8010 Token xsp; 8011 xsp = jj_scanpos; 8012 if (jj_3R_112()) jj_scanpos = xsp; 8013 if (jj_scan_token(IDENTIFIER)) return true; 8014 return false; 8015 } 8016 8017 private boolean jj_3R_324() { 8018 if (jj_scan_token(COMMA)) return true; 8019 if (jj_3R_323()) return true; 8020 return false; 8021 } 8022 8023 private boolean jj_3R_347() { 8024 if (jj_3R_121()) return true; 8025 Token xsp; 8026 while (true) { 8027 xsp = jj_scanpos; 8028 if (jj_3_46()) { jj_scanpos = xsp; break; } 8029 } 8030 return false; 8031 } 8032 8033 private boolean jj_3R_238() { 8034 if (jj_3R_187()) return true; 8035 return false; 8036 } 8037 8038 private boolean jj_3R_237() { 8039 if (jj_3R_97()) return true; 8040 return false; 8041 } 8042 8043 private boolean jj_3R_278() { 8044 if (jj_3R_304()) return true; 8045 return false; 8046 } 8047 8048 private boolean jj_3_8() { 8049 if (jj_3R_91()) return true; 8050 return false; 8051 } 8052 8053 private boolean jj_3R_204() { 8054 Token xsp; 8055 xsp = jj_scanpos; 8056 if (jj_3R_237()) jj_scanpos = xsp; 8057 if (jj_3R_227()) return true; 8058 xsp = jj_scanpos; 8059 if (jj_3R_238()) jj_scanpos = xsp; 8060 return false; 8061 } 8062 8063 private boolean jj_3R_212() { 8064 if (jj_scan_token(LBRACE)) return true; 8065 Token xsp; 8066 xsp = jj_scanpos; 8067 if (jj_3R_347()) jj_scanpos = xsp; 8068 xsp = jj_scanpos; 8069 if (jj_scan_token(88)) jj_scanpos = xsp; 8070 if (jj_scan_token(RBRACE)) return true; 8071 return false; 8072 } 8073 8074 private boolean jj_3_7() { 8075 if (jj_scan_token(COMMA)) return true; 8076 if (jj_3R_90()) return true; 8077 return false; 8078 } 8079 8080 private boolean jj_3R_203() { 8081 if (jj_3R_225()) return true; 8082 return false; 8083 } 8084 8085 private boolean jj_3R_167() { 8086 if (jj_scan_token(ELLIPSIS)) return true; 8087 return false; 8088 } 8089 8090 private boolean jj_3R_202() { 8091 if (jj_scan_token(THIS)) return true; 8092 return false; 8093 } 8094 8095 private boolean jj_3R_177() { 8096 if (jj_3R_151()) return true; 8097 return false; 8098 } 8099 8100 private boolean jj_3R_287() { 8101 if (jj_3R_309()) return true; 8102 return false; 8103 } 8104 8105 private boolean jj_3R_176() { 8106 if (jj_3R_212()) return true; 8107 return false; 8108 } 8109 8110 private boolean jj_3R_175() { 8111 if (jj_3R_123()) return true; 8112 return false; 8113 } 8114 8115 private boolean jj_3R_387() { 8116 if (jj_3R_91()) return true; 8117 return false; 8118 } 8119 8120 private boolean jj_3R_340() { 8121 if (jj_scan_token(COMMA)) return true; 8122 if (jj_3R_110()) return true; 8123 return false; 8124 } 8125 8126 private boolean jj_3R_165() { 8127 if (jj_scan_token(DOT)) return true; 8128 Token xsp; 8129 xsp = jj_scanpos; 8130 if (jj_3R_202()) { 8131 jj_scanpos = xsp; 8132 if (jj_3R_203()) { 8133 jj_scanpos = xsp; 8134 if (jj_3R_204()) return true; 8135 } 8136 } 8137 return false; 8138 } 8139 8140 private boolean jj_3R_320() { 8141 if (jj_3R_125()) return true; 8142 return false; 8143 } 8144 8145 private boolean jj_3R_301() { 8146 Token xsp; 8147 xsp = jj_scanpos; 8148 if (jj_3R_320()) jj_scanpos = xsp; 8149 if (jj_3R_227()) return true; 8150 if (jj_3R_385()) return true; 8151 xsp = jj_scanpos; 8152 if (jj_3R_386()) jj_scanpos = xsp; 8153 if (jj_scan_token(LBRACE)) return true; 8154 xsp = jj_scanpos; 8155 if (jj_3R_387()) jj_scanpos = xsp; 8156 if (jj_3R_184()) return true; 8157 if (jj_scan_token(RBRACE)) return true; 8158 return false; 8159 } 8160 8161 private boolean jj_3R_121() { 8162 Token xsp; 8163 xsp = jj_scanpos; 8164 if (jj_3R_175()) { 8165 jj_scanpos = xsp; 8166 if (jj_3R_176()) { 8167 jj_scanpos = xsp; 8168 if (jj_3R_177()) return true; 8169 } 8170 } 8171 return false; 8172 } 8173 8174 private boolean jj_3R_109() { 8175 Token xsp; 8176 xsp = jj_scanpos; 8177 if (jj_3R_165()) { 8178 jj_scanpos = xsp; 8179 if (jj_3R_166()) return true; 8180 } 8181 return false; 8182 } 8183 8184 private boolean jj_3R_410() { 8185 if (jj_scan_token(COMMA)) return true; 8186 if (jj_3R_110()) return true; 8187 return false; 8188 } 8189 8190 private boolean jj_3R_323() { 8191 if (jj_scan_token(IDENTIFIER)) return true; 8192 if (jj_scan_token(ASSIGN)) return true; 8193 if (jj_3R_121()) return true; 8194 return false; 8195 } 8196 8197 private boolean jj_3R_164() { 8198 if (jj_scan_token(DOT)) return true; 8199 if (jj_scan_token(SUPER)) return true; 8200 return false; 8201 } 8202 8203 private boolean jj_3_30() { 8204 if (jj_3R_109()) return true; 8205 return false; 8206 } 8207 8208 private boolean jj_3R_226() { 8209 if (jj_3R_125()) return true; 8210 return false; 8211 } 8212 8213 private boolean jj_3R_304() { 8214 if (jj_3R_323()) return true; 8215 Token xsp; 8216 while (true) { 8217 xsp = jj_scanpos; 8218 if (jj_3R_324()) { jj_scanpos = xsp; break; } 8219 } 8220 return false; 8221 } 8222 8223 private boolean jj_3R_108() { 8224 Token xsp; 8225 xsp = jj_scanpos; 8226 if (jj_3_30()) { 8227 jj_scanpos = xsp; 8228 if (jj_3R_164()) return true; 8229 } 8230 return false; 8231 } 8232 8233 private boolean jj_3R_228() { 8234 if (jj_3R_187()) return true; 8235 return false; 8236 } 8237 8238 private boolean jj_3R_110() { 8239 if (jj_3R_116()) return true; 8240 if (jj_3R_87()) return true; 8241 Token xsp; 8242 xsp = jj_scanpos; 8243 if (jj_3R_167()) jj_scanpos = xsp; 8244 if (jj_3R_168()) return true; 8245 return false; 8246 } 8247 8248 private boolean jj_3R_197() { 8249 if (jj_3R_227()) return true; 8250 Token xsp; 8251 xsp = jj_scanpos; 8252 if (jj_3R_228()) jj_scanpos = xsp; 8253 return false; 8254 } 8255 8256 private boolean jj_3_29() { 8257 if (jj_3R_111()) return true; 8258 if (jj_scan_token(DOUBLECOLON)) return true; 8259 return false; 8260 } 8261 8262 private boolean jj_3R_214() { 8263 if (jj_scan_token(AT)) return true; 8264 if (jj_3R_119()) return true; 8265 if (jj_scan_token(LPAREN)) return true; 8266 if (jj_3R_121()) return true; 8267 if (jj_scan_token(RPAREN)) return true; 8268 return false; 8269 } 8270 8271 private boolean jj_3R_389() { 8272 if (jj_scan_token(LBRACKET)) return true; 8273 if (jj_scan_token(RBRACKET)) return true; 8274 return false; 8275 } 8276 8277 private boolean jj_3_28() { 8278 if (jj_3R_111()) return true; 8279 if (jj_scan_token(DOT)) return true; 8280 if (jj_scan_token(CLASS)) return true; 8281 return false; 8282 } 8283 8284 private boolean jj_3R_341() { 8285 if (jj_scan_token(COMMA)) return true; 8286 if (jj_3R_168()) return true; 8287 return false; 8288 } 8289 8290 private boolean jj_3R_120() { 8291 if (jj_scan_token(IDENTIFIER)) return true; 8292 if (jj_scan_token(ASSIGN)) return true; 8293 return false; 8294 } 8295 8296 private boolean jj_3R_205() { 8297 if (jj_scan_token(LBRACKET)) return true; 8298 if (jj_scan_token(RBRACKET)) return true; 8299 return false; 8300 } 8301 8302 private boolean jj_3R_288() { 8303 if (jj_3R_310()) return true; 8304 return false; 8305 } 8306 8307 private boolean jj_3R_310() { 8308 if (jj_scan_token(COMMA)) return true; 8309 if (jj_3R_168()) return true; 8310 Token xsp; 8311 while (true) { 8312 xsp = jj_scanpos; 8313 if (jj_3R_341()) { jj_scanpos = xsp; break; } 8314 } 8315 return false; 8316 } 8317 8318 private boolean jj_3R_196() { 8319 if (jj_3R_111()) return true; 8320 if (jj_scan_token(DOUBLECOLON)) return true; 8321 Token xsp; 8322 xsp = jj_scanpos; 8323 if (jj_3R_226()) jj_scanpos = xsp; 8324 xsp = jj_scanpos; 8325 if (jj_scan_token(78)) { 8326 jj_scanpos = xsp; 8327 if (jj_scan_token(43)) return true; 8328 } 8329 return false; 8330 } 8331 8332 private boolean jj_3R_215() { 8333 if (jj_scan_token(AT)) return true; 8334 if (jj_3R_119()) return true; 8335 return false; 8336 } 8337 8338 private boolean jj_3R_322() { 8339 if (jj_3R_90()) return true; 8340 Token xsp; 8341 while (true) { 8342 xsp = jj_scanpos; 8343 if (jj_3_7()) { jj_scanpos = xsp; break; } 8344 } 8345 return false; 8346 } 8347 8348 private boolean jj_3R_195() { 8349 if (jj_3R_111()) return true; 8350 if (jj_scan_token(DOT)) return true; 8351 if (jj_scan_token(CLASS)) return true; 8352 return false; 8353 } 8354 8355 private boolean jj_3R_194() { 8356 if (jj_3R_225()) return true; 8357 return false; 8358 } 8359 8360 private boolean jj_3_27() { 8361 if (jj_3R_110()) return true; 8362 return false; 8363 } 8364 8365 private boolean jj_3_45() { 8366 if (jj_scan_token(AT)) return true; 8367 if (jj_3R_119()) return true; 8368 if (jj_scan_token(LPAREN)) return true; 8369 return false; 8370 } 8371 8372 private boolean jj_3R_309() { 8373 if (jj_scan_token(COMMA)) return true; 8374 if (jj_3R_110()) return true; 8375 Token xsp; 8376 while (true) { 8377 xsp = jj_scanpos; 8378 if (jj_3R_340()) { jj_scanpos = xsp; break; } 8379 } 8380 return false; 8381 } 8382 8383 private boolean jj_3_43() { 8384 if (jj_scan_token(SEMICOLON)) return true; 8385 if (jj_3R_117()) return true; 8386 return false; 8387 } 8388 8389 private boolean jj_3_44() { 8390 if (jj_scan_token(AT)) return true; 8391 if (jj_3R_119()) return true; 8392 if (jj_scan_token(LPAREN)) return true; 8393 Token xsp; 8394 xsp = jj_scanpos; 8395 if (jj_3R_120()) { 8396 jj_scanpos = xsp; 8397 if (jj_scan_token(82)) return true; 8398 } 8399 return false; 8400 } 8401 8402 private boolean jj_3R_213() { 8403 if (jj_scan_token(AT)) return true; 8404 if (jj_3R_119()) return true; 8405 if (jj_scan_token(LPAREN)) return true; 8406 Token xsp; 8407 xsp = jj_scanpos; 8408 if (jj_3R_278()) jj_scanpos = xsp; 8409 if (jj_scan_token(RPAREN)) return true; 8410 return false; 8411 } 8412 8413 private boolean jj_3R_400() { 8414 if (jj_3R_110()) return true; 8415 Token xsp; 8416 while (true) { 8417 xsp = jj_scanpos; 8418 if (jj_3R_410()) { jj_scanpos = xsp; break; } 8419 } 8420 return false; 8421 } 8422 8423 private boolean jj_3R_180() { 8424 if (jj_3R_215()) return true; 8425 return false; 8426 } 8427 8428 private boolean jj_3R_259() { 8429 if (jj_3R_100()) return true; 8430 Token xsp; 8431 xsp = jj_scanpos; 8432 if (jj_3R_288()) jj_scanpos = xsp; 8433 return false; 8434 } 8435 8436 private boolean jj_3R_258() { 8437 if (jj_3R_110()) return true; 8438 Token xsp; 8439 xsp = jj_scanpos; 8440 if (jj_3R_287()) jj_scanpos = xsp; 8441 return false; 8442 } 8443 8444 private boolean jj_3R_179() { 8445 if (jj_3R_214()) return true; 8446 return false; 8447 } 8448 8449 private boolean jj_3R_224() { 8450 Token xsp; 8451 xsp = jj_scanpos; 8452 if (jj_3R_258()) { 8453 jj_scanpos = xsp; 8454 if (jj_3R_259()) return true; 8455 } 8456 return false; 8457 } 8458 8459 private boolean jj_3R_385() { 8460 if (jj_scan_token(LPAREN)) return true; 8461 Token xsp; 8462 xsp = jj_scanpos; 8463 if (jj_3R_400()) jj_scanpos = xsp; 8464 if (jj_scan_token(RPAREN)) return true; 8465 return false; 8466 } 8467 8468 private boolean jj_3R_178() { 8469 if (jj_3R_213()) return true; 8470 return false; 8471 } 8472 8473 private boolean jj_3R_257() { 8474 if (jj_3R_125()) return true; 8475 return false; 8476 } 8477 8478 private boolean jj_3R_193() { 8479 if (jj_scan_token(LPAREN)) return true; 8480 Token xsp; 8481 xsp = jj_scanpos; 8482 if (jj_3R_224()) jj_scanpos = xsp; 8483 if (jj_scan_token(RPAREN)) return true; 8484 return false; 8485 } 8486 8487 private boolean jj_3R_222() { 8488 if (jj_scan_token(DOUBLECOLON)) return true; 8489 Token xsp; 8490 xsp = jj_scanpos; 8491 if (jj_3R_257()) jj_scanpos = xsp; 8492 xsp = jj_scanpos; 8493 if (jj_scan_token(78)) { 8494 jj_scanpos = xsp; 8495 if (jj_scan_token(43)) return true; 8496 } 8497 return false; 8498 } 8499 8500 private boolean jj_3R_123() { 8501 Token xsp; 8502 xsp = jj_scanpos; 8503 if (jj_3R_178()) { 8504 jj_scanpos = xsp; 8505 if (jj_3R_179()) { 8506 jj_scanpos = xsp; 8507 if (jj_3R_180()) return true; 8508 } 8509 } 8510 return false; 8511 } 8512 8513 private boolean jj_3R_223() { 8514 if (jj_3R_187()) return true; 8515 return false; 8516 } 8517 8518 private boolean jj_3R_152() { 8519 return false; 8520 } 8521 8522 private boolean jj_3R_391() { 8523 if (jj_3R_128()) return true; 8524 return false; 8525 } 8526 8527 private boolean jj_3R_390() { 8528 if (jj_scan_token(THROWS)) return true; 8529 if (jj_3R_401()) return true; 8530 return false; 8531 } 8532 8533 private boolean jj_3R_321() { 8534 if (jj_3R_125()) return true; 8535 return false; 8536 } 8537 8538 private boolean jj_3R_303() { 8539 Token xsp; 8540 xsp = jj_scanpos; 8541 if (jj_3R_321()) jj_scanpos = xsp; 8542 if (jj_3R_111()) return true; 8543 if (jj_3R_119()) return true; 8544 if (jj_3R_385()) return true; 8545 while (true) { 8546 xsp = jj_scanpos; 8547 if (jj_3R_389()) { jj_scanpos = xsp; break; } 8548 } 8549 xsp = jj_scanpos; 8550 if (jj_3R_390()) jj_scanpos = xsp; 8551 xsp = jj_scanpos; 8552 if (jj_3R_391()) { 8553 jj_scanpos = xsp; 8554 if (jj_scan_token(87)) return true; 8555 } 8556 return false; 8557 } 8558 8559 private boolean jj_3R_153() { 8560 return false; 8561 } 8562 8563 private boolean jj_3R_102() { 8564 jj_lookingAhead = true; 8565 jj_semLA = getToken(1).kind == GT && 8566 ((GTToken)getToken(1)).realKind == RSIGNEDSHIFT; 8567 jj_lookingAhead = false; 8568 if (!jj_semLA || jj_3R_152()) return true; 8569 if (jj_scan_token(GT)) return true; 8570 if (jj_scan_token(GT)) return true; 8571 return false; 8572 } 8573 8574 private boolean jj_3R_256() { 8575 if (jj_3R_187()) return true; 8576 return false; 8577 } 8578 8579 private boolean jj_3R_221() { 8580 if (jj_scan_token(DOT)) return true; 8581 Token xsp; 8582 xsp = jj_scanpos; 8583 if (jj_3R_255()) jj_scanpos = xsp; 8584 if (jj_3R_227()) return true; 8585 xsp = jj_scanpos; 8586 if (jj_3R_256()) jj_scanpos = xsp; 8587 return false; 8588 } 8589 8590 private boolean jj_3R_255() { 8591 if (jj_3R_97()) return true; 8592 return false; 8593 } 8594 8595 private boolean jj_3_26() { 8596 if (jj_3R_109()) return true; 8597 return false; 8598 } 8599 8600 private boolean jj_3R_192() { 8601 if (jj_scan_token(SUPER)) return true; 8602 Token xsp; 8603 xsp = jj_scanpos; 8604 if (jj_3R_221()) { 8605 jj_scanpos = xsp; 8606 if (jj_3R_222()) { 8607 jj_scanpos = xsp; 8608 if (jj_3R_223()) return true; 8609 } 8610 } 8611 return false; 8612 } 8613 8614 private boolean jj_3R_103() { 8615 jj_lookingAhead = true; 8616 jj_semLA = getToken(1).kind == GT && 8617 ((GTToken)getToken(1)).realKind == RUNSIGNEDSHIFT; 8618 jj_lookingAhead = false; 8619 if (!jj_semLA || jj_3R_153()) return true; 8620 if (jj_scan_token(GT)) return true; 8621 if (jj_scan_token(GT)) return true; 8622 if (jj_scan_token(GT)) return true; 8623 return false; 8624 } 8625 8626 private boolean jj_3R_191() { 8627 if (jj_scan_token(THIS)) return true; 8628 return false; 8629 } 8630 8631 private boolean jj_3R_185() { 8632 if (jj_scan_token(LBRACE)) return true; 8633 Token xsp; 8634 xsp = jj_scanpos; 8635 if (jj_3R_322()) jj_scanpos = xsp; 8636 xsp = jj_scanpos; 8637 if (jj_scan_token(88)) jj_scanpos = xsp; 8638 if (jj_scan_token(RBRACE)) return true; 8639 return false; 8640 } 8641 8642 private boolean jj_3R_190() { 8643 if (jj_3R_220()) return true; 8644 return false; 8645 } 8646 8647 private boolean jj_3R_134() { 8648 if (jj_3R_109()) return true; 8649 return false; 8650 } 8651 8652 private boolean jj_3R_130() { 8653 if (jj_3R_100()) return true; 8654 return false; 8655 } 8656 8657 private boolean jj_3R_129() { 8658 if (jj_3R_185()) return true; 8659 return false; 8660 } 8661 8662 private boolean jj_3R_207() { 8663 if (jj_scan_token(ASSIGN)) return true; 8664 if (jj_3R_90()) return true; 8665 return false; 8666 } 8667 8668 private boolean jj_3R_453() { 8669 if (jj_3R_117()) return true; 8670 Token xsp; 8671 while (true) { 8672 xsp = jj_scanpos; 8673 if (jj_3_43()) { jj_scanpos = xsp; break; } 8674 } 8675 return false; 8676 } 8677 8678 private boolean jj_3R_133() { 8679 Token xsp; 8680 xsp = jj_scanpos; 8681 if (jj_3R_190()) { 8682 jj_scanpos = xsp; 8683 if (jj_3R_191()) { 8684 jj_scanpos = xsp; 8685 if (jj_3R_192()) { 8686 jj_scanpos = xsp; 8687 if (jj_3R_193()) { 8688 jj_scanpos = xsp; 8689 if (jj_3R_194()) { 8690 jj_scanpos = xsp; 8691 if (jj_3R_195()) { 8692 jj_scanpos = xsp; 8693 if (jj_3R_196()) { 8694 jj_scanpos = xsp; 8695 if (jj_3R_197()) return true; 8696 } 8697 } 8698 } 8699 } 8700 } 8701 } 8702 } 8703 return false; 8704 } 8705 8706 private boolean jj_3_25() { 8707 if (jj_3R_108()) return true; 8708 return false; 8709 } 8710 8711 private boolean jj_3R_90() { 8712 Token xsp; 8713 xsp = jj_scanpos; 8714 if (jj_3R_129()) { 8715 jj_scanpos = xsp; 8716 if (jj_3R_130()) return true; 8717 } 8718 return false; 8719 } 8720 8721 private boolean jj_3R_454() { 8722 if (jj_scan_token(BIT_OR)) return true; 8723 if (jj_3R_87()) return true; 8724 return false; 8725 } 8726 8727 private boolean jj_3R_438() { 8728 if (jj_scan_token(FINALLY)) return true; 8729 if (jj_3R_128()) return true; 8730 return false; 8731 } 8732 8733 private boolean jj_3R_425() { 8734 if (jj_scan_token(FINALLY)) return true; 8735 if (jj_3R_128()) return true; 8736 return false; 8737 } 8738 8739 private boolean jj_3_42() { 8740 if (jj_scan_token(SEMICOLON)) return true; 8741 return false; 8742 } 8743 8744 private boolean jj_3R_436() { 8745 if (jj_scan_token(LPAREN)) return true; 8746 if (jj_3R_453()) return true; 8747 Token xsp; 8748 xsp = jj_scanpos; 8749 if (jj_3_42()) jj_scanpos = xsp; 8750 if (jj_scan_token(RPAREN)) return true; 8751 return false; 8752 } 8753 8754 private boolean jj_3R_437() { 8755 if (jj_scan_token(CATCH)) return true; 8756 if (jj_scan_token(LPAREN)) return true; 8757 if (jj_3R_116()) return true; 8758 if (jj_3R_87()) return true; 8759 Token xsp; 8760 while (true) { 8761 xsp = jj_scanpos; 8762 if (jj_3R_454()) { jj_scanpos = xsp; break; } 8763 } 8764 if (jj_3R_168()) return true; 8765 if (jj_scan_token(RPAREN)) return true; 8766 if (jj_3R_128()) return true; 8767 return false; 8768 } 8769 8770 private boolean jj_3R_168() { 8771 if (jj_scan_token(IDENTIFIER)) return true; 8772 Token xsp; 8773 while (true) { 8774 xsp = jj_scanpos; 8775 if (jj_3R_205()) { jj_scanpos = xsp; break; } 8776 } 8777 return false; 8778 } 8779 8780 private boolean jj_3R_92() { 8781 if (jj_3R_133()) return true; 8782 Token xsp; 8783 while (true) { 8784 xsp = jj_scanpos; 8785 if (jj_3R_134()) { jj_scanpos = xsp; break; } 8786 } 8787 return false; 8788 } 8789 8790 /** Generated Token Manager. */ 8791 public ASTParserTokenManager token_source; 8792 JavaCharStream jj_input_stream; 8793 /** Current token. */ 8794 public Token token; 8795 /** Next token. */ 8796 public Token jj_nt; 8797 private int jj_ntk; 8798 private Token jj_scanpos, jj_lastpos; 8799 private int jj_la; 8800 /** Whether we are looking ahead. */ 8801 private boolean jj_lookingAhead = false; 8802 private boolean jj_semLA; 8803 private int jj_gen; 8804 final private int[] jj_la1 = new int[175]; 8805 static private int[] jj_la1_0; 8806 static private int[] jj_la1_1; 8807 static private int[] jj_la1_2; 8808 static private int[] jj_la1_3; 8809 static private int[] jj_la1_4; 8810 static { 8811 jj_la1_init_0(); 8812 jj_la1_init_1(); 8813 jj_la1_init_2(); 8814 jj_la1_init_3(); 8815 jj_la1_init_4(); 8816 } 8817 private static void jj_la1_init_0() { 8818 jj_la1_0 = new int[] {0x0,0x48101000,0x1,0x0,0x0,0x0,0x40001000,0x8100000,0x48101000,0x100000,0x0,0x10000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4a995000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x10000000,0x0,0x0,0x0,0x4a995000,0x800000,0x8100000,0x2094000,0x4a995000,0x0,0x0,0x0,0x22094000,0x22094000,0x0,0x0,0x0,0x0,0x0,0x0,0x42095000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x22094000,0x6359f000,0x0,0x2094000,0x0,0x0,0x2094000,0x0,0x0,0x0,0x0,0x2094000,0x0,0x0,0x10000000,0x10000000,0x2094000,0x2094000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x22094000,0x0,0x0,0x22094000,0x0,0x0,0x2094000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x22094000,0x62095000,0x0,0x0,0x0,0x20000000,0x0,0x0,0x0,0x0,0x0,0x0,0x20000000,0x20000000,0x22094000,0x0,0x0,0x0,0x0,0x0,0x2094000,0x0,0x0,0x0,0x0,0x2349e000,0x0,0x2349e000,0x0,0x22094000,0x0,0x0,0x0,0x0,0x22094000,0x820000,0x820000,0x4000000,0x62095000,0x22094000,0x22094000,0x62095000,0x22094000,0x0,0x0,0x0,0x22094000,0x0,0x40000,0x0,0x80000000,0x0,0x0,0x0,0x22094000,0x22094000,0x0,0x4a195000,0xa194000,0x4a195000,0x800000,}; 8819 } 8820 private static void jj_la1_init_1() { 8821 jj_la1_1 = new int[] {0x20,0x8899c500,0x0,0x0,0x80000,0x0,0x8899c400,0x100,0x8899c500,0x100,0x0,0x0,0x10,0x0,0x0,0x0,0x0,0x10,0x0,0x0,0xc89dc781,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc89dc781,0x0,0x100,0x40040281,0xc89dc781,0x0,0x0,0x0,0x51241a81,0x51241a81,0x0,0x0,0x0,0x4000000,0x0,0x0,0x889dc681,0x0,0x0,0x0,0x0,0x4000000,0x0,0x0,0x51241a81,0xfbffdf8b,0x80000,0x40281,0x0,0x0,0x40281,0x0,0x0,0x0,0x0,0x40281,0x0,0x0,0x200000,0x200000,0x40281,0x40040281,0x0,0x0,0x0,0x0,0x0,0x800,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x40,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x51241a81,0x0,0x0,0x51241a81,0x0,0x0,0x40281,0x0,0x0,0x0,0x800,0x0,0x0,0x0,0x51241a81,0xd9bdde81,0x0,0x800,0x0,0x11201800,0x0,0x0,0x0,0x0,0x1000800,0x0,0x10001000,0x10000000,0x51241a81,0x0,0x0,0x0,0x0,0x0,0x40281,0x0,0x0,0x0,0x0,0x73e61a8b,0x0,0x73e61a8b,0x0,0x51241a81,0x0,0x800,0x0,0x0,0x51241a81,0x0,0x0,0x0,0xd9bdde81,0x51241a81,0x51241a81,0xd9bdde81,0x51241a81,0x0,0x0,0x0,0x51241a81,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x51241a81,0x51241a81,0x0,0x889dc781,0x40381,0x889dc781,0x0,}; 8822 } 8823 private static void jj_la1_init_2() { 8824 jj_la1_2 = new int[] {0x0,0x4800000,0x0,0x4000000,0x0,0x2000000,0x4000000,0x4000000,0x4800000,0x0,0x10000000,0x0,0x0,0x4000000,0x1000000,0x4000000,0x1000000,0x0,0x4004000,0x1000000,0x14884000,0x800000,0x4000000,0x20000,0x80000,0x4000000,0x1000000,0x4000000,0x0,0x4000000,0x0,0x4000000,0x14884000,0x0,0x4000000,0x10004000,0x14804000,0x1000000,0x8000000,0x200000,0x600a7086,0x600a7086,0x1000000,0x10000000,0x200000,0x0,0x880000,0x1000000,0x4004000,0x1000000,0x1000000,0x0,0x10000000,0x0,0x10000000,0x10000000,0x10027086,0x48a7087,0x0,0x0,0x4000000,0x4000000,0x4000,0x4000000,0x1000000,0x10000000,0x4000000,0x80004000,0x4000000,0x4000000,0x0,0x0,0x0,0x4000,0x4000000,0x1000000,0x4000000,0x1000000,0x10000000,0x4000,0x0,0x8000000,0x8000000,0x80000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x10000000,0x10000000,0x0,0x0,0x0,0x0,0x0,0x0,0x60027086,0x60000000,0x60000000,0x27086,0x0,0x4000000,0x4000,0x10000000,0x20000,0x10000000,0x4000,0x2020000,0x1000000,0x1000000,0x60027086,0x64027086,0x10000000,0x4000,0x20000,0x23086,0x4000,0x2000000,0x10000000,0x20000,0x0,0x2200000,0x3086,0x0,0x60027086,0x1000000,0x4000000,0x4000000,0x10000000,0x4220000,0x10004000,0x4000000,0x4000000,0x200000,0x200000,0x8a7087,0x0,0x8a7087,0x1000000,0x600a7086,0x10000000,0x4000,0x8000000,0x8000000,0x27086,0x0,0x0,0x0,0x64027086,0x60027086,0x60027086,0x64827086,0x60027086,0x1000000,0x4000,0x4000,0x60027086,0x20000,0x0,0x0,0x0,0x4000000,0x4000,0x1000000,0x640a7086,0x640a7086,0x1000000,0x4804000,0x4004000,0x4804000,0x0,}; 8825 } 8826 private static void jj_la1_init_3() { 8827 jj_la1_3 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x780,0x780,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20000000,0x0,0x0,0x0,0x0,0x0,0x180,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc0000000,0xdffc0000,0x1ffc0000,0x0,0x20,0x40,0x4000,0x8000,0x2000,0x12,0x12,0x0,0xc,0xc,0x20000,0x600,0x600,0x11800,0x11800,0x600,0x780,0x0,0x0,0x0,0x180,0x0,0x0,0x0,0x0,0x0,0x0,0x80000000,0x0,0x0,0x780,0x780,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x780,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x180,0x1,0x180,0x0,0x780,0x0,0x0,0xdffc0180,0xdffc0180,0x100,0x0,0x0,0x0,0x780,0x780,0x780,0x780,0x780,0x0,0x0,0x0,0x780,0x0,0x0,0x4000,0x0,0x0,0x0,0x0,0x780,0x780,0x0,0x0,0x0,0x0,0x0,}; 8828 } 8829 private static void jj_la1_init_4() { 8830 jj_la1_4 = new int[] {0x0,0x0,0x8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x10,0x10,0x10,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x10,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4,0x4,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x10,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x10,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x10,0x0,0x10,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,}; 8831 } 8832 final private JJCalls[] jj_2_rtns = new JJCalls[47]; 8833 private boolean jj_rescan = false; 8834 private int jj_gc = 0; 8835 8836 /** Constructor with InputStream. */ 8837 public ASTParser(java.io.InputStream stream) { 8838 this(stream, null); 8839 } 8840 /** Constructor with InputStream and supplied encoding */ 8841 public ASTParser(java.io.InputStream stream, String encoding) { 8842 try { jj_input_stream = new JavaCharStream(stream, encoding, 1, 1); } catch(java.io.UnsupportedEncodingException e) { throw new RuntimeException(e); } 8843 token_source = new ASTParserTokenManager(jj_input_stream); 8844 token = new Token(); 8845 jj_ntk = -1; 8846 jj_gen = 0; 8847 for (int i = 0; i < 175; i++) jj_la1[i] = -1; 8848 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); 8849 } 8850 8851 /** Reinitialise. */ 8852 public void ReInit(java.io.InputStream stream) { 8853 ReInit(stream, null); 8854 } 8855 /** Reinitialise. */ 8856 public void ReInit(java.io.InputStream stream, String encoding) { 8857 try { jj_input_stream.ReInit(stream, encoding, 1, 1); } catch(java.io.UnsupportedEncodingException e) { throw new RuntimeException(e); } 8858 token_source.ReInit(jj_input_stream); 8859 token = new Token(); 8860 jj_ntk = -1; 8861 jj_gen = 0; 8862 for (int i = 0; i < 175; i++) jj_la1[i] = -1; 8863 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); 8864 } 8865 8866 /** Constructor. */ 8867 public ASTParser(java.io.Reader stream) { 8868 jj_input_stream = new JavaCharStream(stream, 1, 1); 8869 token_source = new ASTParserTokenManager(jj_input_stream); 8870 token = new Token(); 8871 jj_ntk = -1; 8872 jj_gen = 0; 8873 for (int i = 0; i < 175; i++) jj_la1[i] = -1; 8874 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); 8875 } 8876 8877 /** Reinitialise. */ 8878 public void ReInit(java.io.Reader stream) { 8879 jj_input_stream.ReInit(stream, 1, 1); 8880 token_source.ReInit(jj_input_stream); 8881 token = new Token(); 8882 jj_ntk = -1; 8883 jj_gen = 0; 8884 for (int i = 0; i < 175; i++) jj_la1[i] = -1; 8885 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); 8886 } 8887 8888 /** Constructor with generated Token Manager. */ 8889 public ASTParser(ASTParserTokenManager tm) { 8890 token_source = tm; 8891 token = new Token(); 8892 jj_ntk = -1; 8893 jj_gen = 0; 8894 for (int i = 0; i < 175; i++) jj_la1[i] = -1; 8895 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); 8896 } 8897 8898 /** Reinitialise. */ 8899 public void ReInit(ASTParserTokenManager tm) { 8900 token_source = tm; 8901 token = new Token(); 8902 jj_ntk = -1; 8903 jj_gen = 0; 8904 for (int i = 0; i < 175; i++) jj_la1[i] = -1; 8905 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); 8906 } 8907 8908 private Token jj_consume_token(int kind) { 8909 Token oldToken; 8910 if ((oldToken = token).next != null) token = token.next; 8911 else token = token.next = token_source.getNextToken(); 8912 jj_ntk = -1; 8913 if (token.kind == kind) { 8914 jj_gen++; 8915 if (++jj_gc > 100) { 8916 jj_gc = 0; 8917 for (int i = 0; i < jj_2_rtns.length; i++) { 8918 JJCalls c = jj_2_rtns[i]; 8919 while (c != null) { 8920 if (c.gen < jj_gen) c.first = null; 8921 c = c.next; 8922 } 8923 } 8924 } 8925 return token; 8926 } 8927 token = oldToken; 8928 jj_kind = kind; 8929 throw generateParseException(); 8930 } 8931 8932 static private final class LookaheadSuccess extends java.lang.Error { } 8933 final private LookaheadSuccess jj_ls = new LookaheadSuccess(); 8934 private boolean jj_scan_token(int kind) { 8935 if (jj_scanpos == jj_lastpos) { 8936 jj_la--; 8937 if (jj_scanpos.next == null) { 8938 jj_lastpos = jj_scanpos = jj_scanpos.next = token_source.getNextToken(); 8939 } else { 8940 jj_lastpos = jj_scanpos = jj_scanpos.next; 8941 } 8942 } else { 8943 jj_scanpos = jj_scanpos.next; 8944 } 8945 if (jj_rescan) { 8946 int i = 0; Token tok = token; 8947 while (tok != null && tok != jj_scanpos) { i++; tok = tok.next; } 8948 if (tok != null) jj_add_error_token(kind, i); 8949 } 8950 if (jj_scanpos.kind != kind) return true; 8951 if (jj_la == 0 && jj_scanpos == jj_lastpos) throw jj_ls; 8952 return false; 8953 } 8954 8955 8956/** Get the next Token. */ 8957 final public Token getNextToken() { 8958 if (token.next != null) token = token.next; 8959 else token = token.next = token_source.getNextToken(); 8960 jj_ntk = -1; 8961 jj_gen++; 8962 return token; 8963 } 8964 8965/** Get the specific Token. */ 8966 final public Token getToken(int index) { 8967 Token t = jj_lookingAhead ? jj_scanpos : token; 8968 for (int i = 0; i < index; i++) { 8969 if (t.next != null) t = t.next; 8970 else t = t.next = token_source.getNextToken(); 8971 } 8972 return t; 8973 } 8974 8975 private int jj_ntk() { 8976 if ((jj_nt=token.next) == null) 8977 return (jj_ntk = (token.next=token_source.getNextToken()).kind); 8978 else 8979 return (jj_ntk = jj_nt.kind); 8980 } 8981 8982 private java.util.List<int[]> jj_expentries = new java.util.ArrayList<int[]>(); 8983 private int[] jj_expentry; 8984 private int jj_kind = -1; 8985 private int[] jj_lasttokens = new int[100]; 8986 private int jj_endpos; 8987 8988 private void jj_add_error_token(int kind, int pos) { 8989 if (pos >= 100) return; 8990 if (pos == jj_endpos + 1) { 8991 jj_lasttokens[jj_endpos++] = kind; 8992 } else if (jj_endpos != 0) { 8993 jj_expentry = new int[jj_endpos]; 8994 for (int i = 0; i < jj_endpos; i++) { 8995 jj_expentry[i] = jj_lasttokens[i]; 8996 } 8997 jj_entries_loop: for (java.util.Iterator<?> it = jj_expentries.iterator(); it.hasNext();) { 8998 int[] oldentry = (int[])(it.next()); 8999 if (oldentry.length == jj_expentry.length) { 9000 for (int i = 0; i < jj_expentry.length; i++) { 9001 if (oldentry[i] != jj_expentry[i]) { 9002 continue jj_entries_loop; 9003 } 9004 } 9005 jj_expentries.add(jj_expentry); 9006 break jj_entries_loop; 9007 } 9008 } 9009 if (pos != 0) jj_lasttokens[(jj_endpos = pos) - 1] = kind; 9010 } 9011 } 9012 9013 /** Generate ParseException. */ 9014 public ParseException generateParseException() { 9015 jj_expentries.clear(); 9016 boolean[] la1tokens = new boolean[133]; 9017 if (jj_kind >= 0) { 9018 la1tokens[jj_kind] = true; 9019 jj_kind = -1; 9020 } 9021 for (int i = 0; i < 175; i++) { 9022 if (jj_la1[i] == jj_gen) { 9023 for (int j = 0; j < 32; j++) { 9024 if ((jj_la1_0[i] & (1<<j)) != 0) { 9025 la1tokens[j] = true; 9026 } 9027 if ((jj_la1_1[i] & (1<<j)) != 0) { 9028 la1tokens[32+j] = true; 9029 } 9030 if ((jj_la1_2[i] & (1<<j)) != 0) { 9031 la1tokens[64+j] = true; 9032 } 9033 if ((jj_la1_3[i] & (1<<j)) != 0) { 9034 la1tokens[96+j] = true; 9035 } 9036 if ((jj_la1_4[i] & (1<<j)) != 0) { 9037 la1tokens[128+j] = true; 9038 } 9039 } 9040 } 9041 } 9042 for (int i = 0; i < 133; i++) { 9043 if (la1tokens[i]) { 9044 jj_expentry = new int[1]; 9045 jj_expentry[0] = i; 9046 jj_expentries.add(jj_expentry); 9047 } 9048 } 9049 jj_endpos = 0; 9050 jj_rescan_token(); 9051 jj_add_error_token(0, 0); 9052 int[][] exptokseq = new int[jj_expentries.size()][]; 9053 for (int i = 0; i < jj_expentries.size(); i++) { 9054 exptokseq[i] = jj_expentries.get(i); 9055 } 9056 return new ParseException(token, exptokseq, tokenImage); 9057 } 9058 9059 /** Enable tracing. */ 9060 final public void enable_tracing() { 9061 } 9062 9063 /** Disable tracing. */ 9064 final public void disable_tracing() { 9065 } 9066 9067 private void jj_rescan_token() { 9068 jj_rescan = true; 9069 for (int i = 0; i < 47; i++) { 9070 try { 9071 JJCalls p = jj_2_rtns[i]; 9072 do { 9073 if (p.gen > jj_gen) { 9074 jj_la = p.arg; jj_lastpos = jj_scanpos = p.first; 9075 switch (i) { 9076 case 0: jj_3_1(); break; 9077 case 1: jj_3_2(); break; 9078 case 2: jj_3_3(); break; 9079 case 3: jj_3_4(); break; 9080 case 4: jj_3_5(); break; 9081 case 5: jj_3_6(); break; 9082 case 6: jj_3_7(); break; 9083 case 7: jj_3_8(); break; 9084 case 8: jj_3_9(); break; 9085 case 9: jj_3_10(); break; 9086 case 10: jj_3_11(); break; 9087 case 11: jj_3_12(); break; 9088 case 12: jj_3_13(); break; 9089 case 13: jj_3_14(); break; 9090 case 14: jj_3_15(); break; 9091 case 15: jj_3_16(); break; 9092 case 16: jj_3_17(); break; 9093 case 17: jj_3_18(); break; 9094 case 18: jj_3_19(); break; 9095 case 19: jj_3_20(); break; 9096 case 20: jj_3_21(); break; 9097 case 21: jj_3_22(); break; 9098 case 22: jj_3_23(); break; 9099 case 23: jj_3_24(); break; 9100 case 24: jj_3_25(); break; 9101 case 25: jj_3_26(); break; 9102 case 26: jj_3_27(); break; 9103 case 27: jj_3_28(); break; 9104 case 28: jj_3_29(); break; 9105 case 29: jj_3_30(); break; 9106 case 30: jj_3_31(); break; 9107 case 31: jj_3_32(); break; 9108 case 32: jj_3_33(); break; 9109 case 33: jj_3_34(); break; 9110 case 34: jj_3_35(); break; 9111 case 35: jj_3_36(); break; 9112 case 36: jj_3_37(); break; 9113 case 37: jj_3_38(); break; 9114 case 38: jj_3_39(); break; 9115 case 39: jj_3_40(); break; 9116 case 40: jj_3_41(); break; 9117 case 41: jj_3_42(); break; 9118 case 42: jj_3_43(); break; 9119 case 43: jj_3_44(); break; 9120 case 44: jj_3_45(); break; 9121 case 45: jj_3_46(); break; 9122 case 46: jj_3_47(); break; 9123 } 9124 } 9125 p = p.next; 9126 } while (p != null); 9127 } catch(LookaheadSuccess ls) { } 9128 } 9129 jj_rescan = false; 9130 } 9131 9132 private void jj_save(int index, int xla) { 9133 JJCalls p = jj_2_rtns[index]; 9134 while (p.gen > jj_gen) { 9135 if (p.next == null) { p = p.next = new JJCalls(); break; } 9136 p = p.next; 9137 } 9138 p.gen = jj_gen + xla - jj_la; p.first = token; p.arg = xla; 9139 } 9140 9141 static final class JJCalls { 9142 int gen; 9143 Token first; 9144 int arg; 9145 JJCalls next; 9146 } 9147 9148} 9149