001/* GoloParser.java */ 002/* Generated By:JJTree&JavaCC: Do not edit this line. GoloParser.java */ 003package org.eclipse.golo.compiler.parser; 004 005import java.util.List; 006import java.util.LinkedList; 007import java.util.LinkedHashSet; 008import java.util.Collections; 009import java.math.BigDecimal; 010import java.math.BigInteger; 011 012import org.eclipse.golo.compiler.utils.StringUnescaping; 013import org.eclipse.golo.compiler.utils.StringBlockIndenter; 014import org.eclipse.golo.compiler.GoloCompilationException; 015import gololang.ir.ClassReference; 016import gololang.ir.FunctionRef; 017 018public class GoloParser/*@bgen(jjtree)*/implements GoloParserTreeConstants, GoloParserConstants {/*@bgen(jjtree)*/ 019 protected JJTGoloParserState jjtree = new JJTGoloParserState(); 020 public GoloCompilationException.Builder exceptionBuilder; 021 022 private boolean errorAlreadyReported = false; 023 024 void skipto(int kind, ParseException e, GoloASTNode node) throws ParseException { 025 if (exceptionBuilder == null) { 026 throw e; 027 } 028 if (!errorAlreadyReported) { 029 exceptionBuilder.report(e, node); 030 errorAlreadyReported = true; 031 } 032 if ("<EOF>".equals(e.tokenImage[0])) { 033 return; 034 } 035 Token t; 036 do { 037 t = getNextToken(); 038 } while (t.kind != kind); 039 } 040 041 void error() throws ParseException {/*@bgen(jjtree) error */ 042ASTerror jjtn000 = new ASTerror(JJTERROR); 043boolean jjtc000 = true; 044jjtree.openNodeScope(jjtn000); 045jjtn000.jjtSetFirstToken(getToken(1)); 046try {throw generateParseException();/*@bgen(jjtree)*/ 047} finally { 048 if (jjtc000) { 049 jjtree.closeNodeScope(jjtn000, true); 050 jjtn000.jjtSetLastToken(getToken(0)); 051 } 052} 053 } 054 055 final public void BlankLine() throws ParseException { 056 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 057 case NEWLINE:{ 058 jj_consume_token(NEWLINE); 059 break; 060 } 061 case COMMENT:{ 062 jj_consume_token(COMMENT); 063 break; 064 } 065 default: 066 jj_la1[0] = jj_gen; 067 jj_consume_token(-1); 068 throw new ParseException(); 069 } 070 } 071 072 final public void BlankLines() throws ParseException { 073 label_1: 074 while (true) { 075 if (jj_2_1(2)) { 076 ; 077 } else { 078 break label_1; 079 } 080 BlankLine(); 081 } 082 } 083 084 final public String QualifiedName() throws ParseException {Token rootToken; 085 Token nextToken; 086 StringBuilder nameBuilder; 087 rootToken = jj_consume_token(IDENTIFIER); 088nameBuilder = new StringBuilder(rootToken.image); 089 label_2: 090 while (true) { 091 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 092 case 74:{ 093 ; 094 break; 095 } 096 default: 097 jj_la1[1] = jj_gen; 098 break label_2; 099 } 100 jj_consume_token(74); 101 nextToken = jj_consume_token(IDENTIFIER); 102nameBuilder.append(".").append(nextToken.image); 103 } 104{if ("" != null) return nameBuilder.toString();} 105 throw new Error("Missing return statement in function"); 106 } 107 108// TODO: allows macros on function parameters ? 109 final public List<String> Parameters() throws ParseException {Token rootToken; 110 Token nextToken; 111 List<String> parameters = new LinkedList<String>(); 112 rootToken = jj_consume_token(IDENTIFIER); 113parameters.add(rootToken.image); 114 label_3: 115 while (true) { 116 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 117 case 75:{ 118 ; 119 break; 120 } 121 default: 122 jj_la1[2] = jj_gen; 123 break label_3; 124 } 125 jj_consume_token(75); 126 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 127 case NEWLINE: 128 case COMMENT:{ 129 BlankLine(); 130 break; 131 } 132 default: 133 jj_la1[3] = jj_gen; 134 ; 135 } 136 nextToken = jj_consume_token(IDENTIFIER); 137parameters.add(nextToken.image); 138 } 139{if ("" != null) return parameters;} 140 throw new Error("Missing return statement in function"); 141 } 142 143 final public List<String> AugmentationNames() throws ParseException {String rootToken; 144 String nextToken; 145 List<String> names = new LinkedList<String>(); 146 rootToken = QualifiedName(); 147names.add(rootToken); 148 label_4: 149 while (true) { 150 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 151 case 75:{ 152 ; 153 break; 154 } 155 default: 156 jj_la1[4] = jj_gen; 157 break label_4; 158 } 159 jj_consume_token(75); 160 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 161 case NEWLINE: 162 case COMMENT:{ 163 BlankLine(); 164 break; 165 } 166 default: 167 jj_la1[5] = jj_gen; 168 ; 169 } 170 nextToken = QualifiedName(); 171names.add(nextToken); 172 } 173{if ("" != null) return names;} 174 throw new Error("Missing return statement in function"); 175 } 176 177 final public String StringLiteral() throws ParseException {Token literal; 178 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 179 case STRING:{ 180 literal = jj_consume_token(STRING); 181{if ("" != null) return StringUnescaping.unescape(literal.image.substring(1, literal.image.length() - 1));} 182 break; 183 } 184 case MULTI_STRING:{ 185 literal = jj_consume_token(MULTI_STRING); 186{if ("" != null) return literal.image.substring(3, literal.image.length() - 3);} 187 break; 188 } 189 default: 190 jj_la1[6] = jj_gen; 191 jj_consume_token(-1); 192 throw new ParseException(); 193 } 194 throw new Error("Missing return statement in function"); 195 } 196 197 final public Character CharLiteral() throws ParseException {Token literal; 198 literal = jj_consume_token(CHAR); 199{if ("" != null) return Character.valueOf(StringUnescaping.unescape(literal.image.substring(1, literal.image.length() - 1)).charAt(0));} 200 throw new Error("Missing return statement in function"); 201 } 202 203 final public Long LongLiteral() throws ParseException {Token literal; 204 literal = jj_consume_token(LONG_NUMBER); 205String image = literal.image.substring(0, literal.image.length() - 2); 206 {if ("" != null) return Long.valueOf(image.replace("_",""));} 207 throw new Error("Missing return statement in function"); 208 } 209 210 final public BigInteger BigIntegerLiteral() throws ParseException {Token literal; 211 literal = jj_consume_token(BIGINTEGER); 212String image = literal.image.substring(0, literal.image.length() - 2); 213 {if ("" != null) return new BigInteger(image.replace("_",""));} 214 throw new Error("Missing return statement in function"); 215 } 216 217 final public Integer IntegerLiteral() throws ParseException {Token literal; 218 literal = jj_consume_token(NUMBER); 219String image = literal.image.replace("_",""); 220 {if ("" != null) return Integer.valueOf(image);} 221 throw new Error("Missing return statement in function"); 222 } 223 224 final public ClassReference ClassLiteral() throws ParseException {Token literal; 225 literal = jj_consume_token(CLASSREF); 226String image = literal.image; 227 int suffixLength = image.endsWith("class") ? 6 : 7; 228 {if ("" != null) return ClassReference.of(image.substring(0, image.length() - suffixLength));} 229 throw new Error("Missing return statement in function"); 230 } 231 232 final public Double DoubleLiteral() throws ParseException {Token literal; 233 literal = jj_consume_token(FLOATING_NUMBER); 234{if ("" != null) return Double.valueOf(literal.image.replace("_", ""));} 235 throw new Error("Missing return statement in function"); 236 } 237 238 final public Float FloatLiteral() throws ParseException {Token literal; 239 literal = jj_consume_token(FLOAT); 240{if ("" != null) return Float.valueOf(literal.image 241 .substring(0, literal.image.length() - 2) 242 .replace("_", ""));} 243 throw new Error("Missing return statement in function"); 244 } 245 246 final public BigDecimal BigDecimalLiteral() throws ParseException {Token literal; 247 literal = jj_consume_token(BIGDECIMAL); 248{if ("" != null) return new BigDecimal(literal.image 249 .substring(0, literal.image.length() - 2) 250 .replace("_", ""));} 251 throw new Error("Missing return statement in function"); 252 } 253 254 final public FunctionRef FunctionRef() throws ParseException {Token literal; 255 literal = jj_consume_token(FUNREF); 256String module = null; 257 String name; 258 int arity = -1; 259 boolean varargs = false; 260 String[] parts = literal.image.substring(1).split("::"); 261 if (parts.length > 1) { 262 module = parts[0]; 263 name = parts[1]; 264 } else { 265 name = parts[0]; 266 } 267 parts = name.split("\\\\"); 268 if (parts.length > 1) { 269 name = parts[0]; 270 if (parts[1].endsWith("...")) { 271 arity = Integer.valueOf(parts[1].substring(0, parts[1].length() - 3)); 272 varargs = true; 273 } else { 274 arity = Integer.valueOf(parts[1]); 275 } 276 } 277 {if ("" != null) return FunctionRef.of(module, name, arity, varargs);} 278 throw new Error("Missing return statement in function"); 279 } 280 281 final public String Documentation() throws ParseException {Token token; 282 token = jj_consume_token(DOCUMENTATION); 283String result = token.image.trim(); 284 result = result.substring(4, result.length() - 4); 285 if (token.beginColumn > 1) { 286 result = StringBlockIndenter.unindent(result, token.beginColumn - 1); 287 } 288 {if ("" != null) return result;} 289 throw new Error("Missing return statement in function"); 290 } 291 292// ............................................................................................. // 293 final public 294ASTCompilationUnit CompilationUnit() throws ParseException {/*@bgen(jjtree) CompilationUnit */ 295 ASTCompilationUnit jjtn000 = new ASTCompilationUnit(JJTCOMPILATIONUNIT); 296 boolean jjtc000 = true; 297 jjtree.openNodeScope(jjtn000); 298 jjtn000.jjtSetFirstToken(getToken(1));ASTLetOrVar state; 299 ASTMacroInvocation macro; 300 try { 301 try { 302 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 303 case NEWLINE: 304 case MODULE: 305 case DECORATOR: 306 case COMMENT: 307 case DOCUMENTATION:{ 308 BlankLines(); 309 ModuleDeclaration(); 310 BlankLines(); 311 label_5: 312 while (true) { 313 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 314 case IMPORT:{ 315 ; 316 break; 317 } 318 default: 319 jj_la1[7] = jj_gen; 320 break label_5; 321 } 322 ImportDeclaration(); 323 BlankLines(); 324 } 325 label_6: 326 while (true) { 327 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 328 case FUNCTION: 329 case LOCAL: 330 case AUGMENT: 331 case NAMEDAUGMENTATION: 332 case STRUCT: 333 case UNION: 334 case DECORATOR: 335 case MACRO_INVOCATION: 336 case MACRO: 337 case VAR: 338 case LET: 339 case DOCUMENTATION:{ 340 ; 341 break; 342 } 343 default: 344 jj_la1[8] = jj_gen; 345 break label_6; 346 } 347 try { 348 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 349 case FUNCTION: 350 case LOCAL: 351 case AUGMENT: 352 case NAMEDAUGMENTATION: 353 case STRUCT: 354 case UNION: 355 case DECORATOR: 356 case MACRO_INVOCATION: 357 case MACRO: 358 case DOCUMENTATION:{ 359 ToplevelDeclaration(); 360 BlankLines(); 361 break; 362 } 363 case VAR: 364 case LET:{ 365 state = LetOrVar(); 366 BlankLines(); 367state.setModuleState(true); 368 break; 369 } 370 default: 371 jj_la1[9] = jj_gen; 372 jj_consume_token(-1); 373 throw new ParseException(); 374 } 375 } catch (ParseException e) { 376skipto(NEWLINE, e, jjtn000); 377 } 378 } 379 break; 380 } 381 default: 382 jj_la1[10] = jj_gen; 383 error(); 384 } 385 jj_consume_token(0); 386 } catch (ParseException e) { 387skipto(NEWLINE, e, jjtn000); 388 } 389jjtree.closeNodeScope(jjtn000, true); 390 jjtc000 = false; 391 jjtn000.jjtSetLastToken(getToken(0)); 392{if ("" != null) return jjtn000;} 393 } catch (Throwable jjte000) { 394if (jjtc000) { 395 jjtree.clearNodeScope(jjtn000); 396 jjtc000 = false; 397 } else { 398 jjtree.popNode(); 399 } 400 if (jjte000 instanceof RuntimeException) { 401 {if (true) throw (RuntimeException)jjte000;} 402 } 403 if (jjte000 instanceof ParseException) { 404 {if (true) throw (ParseException)jjte000;} 405 } 406 {if (true) throw (Error)jjte000;} 407 } finally { 408if (jjtc000) { 409 jjtree.closeNodeScope(jjtn000, true); 410 jjtn000.jjtSetLastToken(getToken(0)); 411 } 412 } 413 throw new Error("Missing return statement in function"); 414 } 415 416 final public void ModuleDeclaration() throws ParseException {/*@bgen(jjtree) ModuleDeclaration */ 417 ASTModuleDeclaration jjtn000 = new ASTModuleDeclaration(JJTMODULEDECLARATION); 418 boolean jjtc000 = true; 419 jjtree.openNodeScope(jjtn000); 420 jjtn000.jjtSetFirstToken(getToken(1));String name; 421 String documentation = null; 422 try { 423 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 424 case DOCUMENTATION:{ 425 documentation = Documentation(); 426 break; 427 } 428 default: 429 jj_la1[11] = jj_gen; 430 ; 431 } 432 label_7: 433 while (true) { 434 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 435 case DECORATOR:{ 436 ; 437 break; 438 } 439 default: 440 jj_la1[12] = jj_gen; 441 break label_7; 442 } 443 DecoratorDeclaration(); 444 } 445 jj_consume_token(MODULE); 446 name = QualifiedName(); 447jjtree.closeNodeScope(jjtn000, true); 448 jjtc000 = false; 449 jjtn000.jjtSetLastToken(getToken(0)); 450jjtn000.setName(name); 451 jjtn000.setDocumentation(documentation); 452 } catch (Throwable jjte000) { 453if (jjtc000) { 454 jjtree.clearNodeScope(jjtn000); 455 jjtc000 = false; 456 } else { 457 jjtree.popNode(); 458 } 459 if (jjte000 instanceof RuntimeException) { 460 {if (true) throw (RuntimeException)jjte000;} 461 } 462 if (jjte000 instanceof ParseException) { 463 {if (true) throw (ParseException)jjte000;} 464 } 465 {if (true) throw (Error)jjte000;} 466 } finally { 467if (jjtc000) { 468 jjtree.closeNodeScope(jjtn000, true); 469 jjtn000.jjtSetLastToken(getToken(0)); 470 } 471 } 472 } 473 474 final public List<String> MultiImport() throws ParseException {List<String> modules = new LinkedList<String>(); 475 String rootName; 476 String nextName; 477 jj_consume_token(76); 478 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 479 case NEWLINE: 480 case COMMENT:{ 481 BlankLine(); 482 break; 483 } 484 default: 485 jj_la1[13] = jj_gen; 486 ; 487 } 488 rootName = QualifiedName(); 489modules.add(rootName); 490 label_8: 491 while (true) { 492 jj_consume_token(75); 493 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 494 case NEWLINE: 495 case COMMENT:{ 496 BlankLine(); 497 break; 498 } 499 default: 500 jj_la1[14] = jj_gen; 501 ; 502 } 503 nextName = QualifiedName(); 504modules.add(nextName); 505 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 506 case 75:{ 507 ; 508 break; 509 } 510 default: 511 jj_la1[15] = jj_gen; 512 break label_8; 513 } 514 } 515 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 516 case NEWLINE: 517 case COMMENT:{ 518 BlankLine(); 519 break; 520 } 521 default: 522 jj_la1[16] = jj_gen; 523 ; 524 } 525 jj_consume_token(77); 526{if ("" != null) return modules;} 527 throw new Error("Missing return statement in function"); 528 } 529 530 final public void ImportDeclaration() throws ParseException {/*@bgen(jjtree) ImportDeclaration */ 531 ASTImportDeclaration jjtn000 = new ASTImportDeclaration(JJTIMPORTDECLARATION); 532 boolean jjtc000 = true; 533 jjtree.openNodeScope(jjtn000); 534 jjtn000.jjtSetFirstToken(getToken(1));String name; 535 Token relative = null; 536 List<String> multiples = null; 537 try { 538 try { 539 jj_consume_token(IMPORT); 540 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 541 case 74:{ 542 relative = jj_consume_token(74); 543 break; 544 } 545 default: 546 jj_la1[17] = jj_gen; 547 ; 548 } 549 name = QualifiedName(); 550 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 551 case 76:{ 552 multiples = MultiImport(); 553 break; 554 } 555 default: 556 jj_la1[18] = jj_gen; 557 ; 558 } 559jjtn000.setName(name); 560 if (relative != null) { 561 jjtn000.setRelative(true); 562 } 563 if (multiples != null) { 564 jjtn000.setMultiple(multiples); 565 } 566 } catch (ParseException e) { 567skipto(NEWLINE, e, jjtn000); 568 } 569 } catch (Throwable jjte000) { 570if (jjtc000) { 571 jjtree.clearNodeScope(jjtn000); 572 jjtc000 = false; 573 } else { 574 jjtree.popNode(); 575 } 576 if (jjte000 instanceof RuntimeException) { 577 {if (true) throw (RuntimeException)jjte000;} 578 } 579 if (jjte000 instanceof ParseException) { 580 {if (true) throw (ParseException)jjte000;} 581 } 582 {if (true) throw (Error)jjte000;} 583 } finally { 584if (jjtc000) { 585 jjtree.closeNodeScope(jjtn000, true); 586 jjtn000.jjtSetLastToken(getToken(0)); 587 } 588 } 589 } 590 591 final public void ToplevelDeclaration() throws ParseException {/*@bgen(jjtree) ToplevelDeclaration */ 592 ASTToplevelDeclaration jjtn000 = new ASTToplevelDeclaration(JJTTOPLEVELDECLARATION); 593 boolean jjtc000 = true; 594 jjtree.openNodeScope(jjtn000); 595 jjtn000.jjtSetFirstToken(getToken(1));ASTFunctionDeclaration functionDecl; 596 ASTAugmentDeclaration augmentDecl; 597 ASTStructDeclaration structDecl; 598 ASTUnionDeclaration unionDecl; 599 ASTNamedAugmentationDeclaration namedAugmentationDecl; 600 Token local = null; 601 String documentation = null; 602 ASTMacroInvocation macro; 603 try { 604 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 605 case FUNCTION: 606 case LOCAL: 607 case AUGMENT: 608 case NAMEDAUGMENTATION: 609 case STRUCT: 610 case UNION: 611 case DECORATOR: 612 case MACRO: 613 case DOCUMENTATION:{ 614 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 615 case DOCUMENTATION:{ 616 documentation = Documentation(); 617 break; 618 } 619 default: 620 jj_la1[19] = jj_gen; 621 ; 622 } 623 label_9: 624 while (true) { 625 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 626 case DECORATOR:{ 627 ; 628 break; 629 } 630 default: 631 jj_la1[20] = jj_gen; 632 break label_9; 633 } 634 DecoratorDeclaration(); 635 } 636 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 637 case FUNCTION: 638 case LOCAL: 639 case MACRO:{ 640 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 641 case LOCAL:{ 642 local = jj_consume_token(LOCAL); 643 break; 644 } 645 default: 646 jj_la1[21] = jj_gen; 647 ; 648 } 649 functionDecl = FunctionDeclaration(); 650jjtree.closeNodeScope(jjtn000, true); 651 jjtc000 = false; 652 jjtn000.jjtSetLastToken(getToken(0)); 653if (local != null) { 654 functionDecl.setLocal(true); 655 } 656 functionDecl.setDocumentation(documentation); 657 break; 658 } 659 case STRUCT:{ 660 structDecl = StructDeclaration(); 661jjtree.closeNodeScope(jjtn000, true); 662 jjtc000 = false; 663 jjtn000.jjtSetLastToken(getToken(0)); 664structDecl.setDocumentation(documentation); 665 break; 666 } 667 case UNION:{ 668 unionDecl = UnionDeclaration(); 669jjtree.closeNodeScope(jjtn000, true); 670 jjtc000 = false; 671 jjtn000.jjtSetLastToken(getToken(0)); 672unionDecl.setDocumentation(documentation); 673 break; 674 } 675 case AUGMENT:{ 676 augmentDecl = AugmentDeclaration(); 677jjtree.closeNodeScope(jjtn000, true); 678 jjtc000 = false; 679 jjtn000.jjtSetLastToken(getToken(0)); 680augmentDecl.setDocumentation(documentation); 681 break; 682 } 683 case NAMEDAUGMENTATION:{ 684 namedAugmentationDecl = NamedAugmentationDeclaration(); 685jjtree.closeNodeScope(jjtn000, true); 686 jjtc000 = false; 687 jjtn000.jjtSetLastToken(getToken(0)); 688namedAugmentationDecl.setDocumentation(documentation); 689 break; 690 } 691 default: 692 jj_la1[22] = jj_gen; 693 jj_consume_token(-1); 694 throw new ParseException(); 695 } 696 break; 697 } 698 case MACRO_INVOCATION:{ 699 macro = MacroInvocation(); 700jjtree.closeNodeScope(jjtn000, true); 701 jjtc000 = false; 702 jjtn000.jjtSetLastToken(getToken(0)); 703macro.setTopLevel(true); 704 break; 705 } 706 default: 707 jj_la1[23] = jj_gen; 708 jj_consume_token(-1); 709 throw new ParseException(); 710 } 711 } catch (Throwable jjte000) { 712if (jjtc000) { 713 jjtree.clearNodeScope(jjtn000); 714 jjtc000 = false; 715 } else { 716 jjtree.popNode(); 717 } 718 if (jjte000 instanceof RuntimeException) { 719 {if (true) throw (RuntimeException)jjte000;} 720 } 721 if (jjte000 instanceof ParseException) { 722 {if (true) throw (ParseException)jjte000;} 723 } 724 {if (true) throw (Error)jjte000;} 725 } finally { 726if (jjtc000) { 727 jjtree.closeNodeScope(jjtn000, true); 728 jjtn000.jjtSetLastToken(getToken(0)); 729 } 730 } 731 } 732 733 final public ASTMemberDeclaration MemberDeclaration() throws ParseException {/*@bgen(jjtree) MemberDeclaration */ 734 ASTMemberDeclaration jjtn000 = new ASTMemberDeclaration(JJTMEMBERDECLARATION); 735 boolean jjtc000 = true; 736 jjtree.openNodeScope(jjtn000); 737 jjtn000.jjtSetFirstToken(getToken(1));Token name; 738 String documentation = null; 739 try { 740 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 741 case DOCUMENTATION:{ 742 documentation = Documentation(); 743 break; 744 } 745 default: 746 jj_la1[24] = jj_gen; 747 ; 748 } 749 name = jj_consume_token(IDENTIFIER); 750jjtree.closeNodeScope(jjtn000, true); 751 jjtc000 = false; 752 jjtn000.jjtSetLastToken(getToken(0)); 753jjtn000.setName(name.image); 754 jjtn000.jjtSetFirstToken(name); 755 jjtn000.setDocumentation(documentation); 756 {if ("" != null) return jjtn000;} 757 } catch (Throwable jjte000) { 758if (jjtc000) { 759 jjtree.clearNodeScope(jjtn000); 760 jjtc000 = false; 761 } else { 762 jjtree.popNode(); 763 } 764 if (jjte000 instanceof RuntimeException) { 765 {if (true) throw (RuntimeException)jjte000;} 766 } 767 if (jjte000 instanceof ParseException) { 768 {if (true) throw (ParseException)jjte000;} 769 } 770 {if (true) throw (Error)jjte000;} 771 } finally { 772if (jjtc000) { 773 jjtree.closeNodeScope(jjtn000, true); 774 jjtn000.jjtSetLastToken(getToken(0)); 775 } 776 } 777 throw new Error("Missing return statement in function"); 778 } 779 780 final public ASTStructDeclaration StructDeclaration() throws ParseException {/*@bgen(jjtree) StructDeclaration */ 781 ASTStructDeclaration jjtn000 = new ASTStructDeclaration(JJTSTRUCTDECLARATION); 782 boolean jjtc000 = true; 783 jjtree.openNodeScope(jjtn000); 784 jjtn000.jjtSetFirstToken(getToken(1));Token name; 785 try { 786 jj_consume_token(STRUCT); 787 name = jj_consume_token(IDENTIFIER); 788 jj_consume_token(78); 789 jj_consume_token(79); 790 BlankLines(); 791 MemberDeclaration(); 792 BlankLines(); 793 label_10: 794 while (true) { 795 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 796 case 75:{ 797 ; 798 break; 799 } 800 default: 801 jj_la1[25] = jj_gen; 802 break label_10; 803 } 804 jj_consume_token(75); 805 BlankLines(); 806 MemberDeclaration(); 807 BlankLines(); 808 } 809 jj_consume_token(77); 810jjtree.closeNodeScope(jjtn000, true); 811 jjtc000 = false; 812 jjtn000.jjtSetLastToken(getToken(0)); 813jjtn000.setName(name.image); 814 {if ("" != null) return jjtn000;} 815 } catch (Throwable jjte000) { 816if (jjtc000) { 817 jjtree.clearNodeScope(jjtn000); 818 jjtc000 = false; 819 } else { 820 jjtree.popNode(); 821 } 822 if (jjte000 instanceof RuntimeException) { 823 {if (true) throw (RuntimeException)jjte000;} 824 } 825 if (jjte000 instanceof ParseException) { 826 {if (true) throw (ParseException)jjte000;} 827 } 828 {if (true) throw (Error)jjte000;} 829 } finally { 830if (jjtc000) { 831 jjtree.closeNodeScope(jjtn000, true); 832 jjtn000.jjtSetLastToken(getToken(0)); 833 } 834 } 835 throw new Error("Missing return statement in function"); 836 } 837 838 final public void UnionValue() throws ParseException {/*@bgen(jjtree) UnionValue */ 839 ASTUnionValue jjtn000 = new ASTUnionValue(JJTUNIONVALUE); 840 boolean jjtc000 = true; 841 jjtree.openNodeScope(jjtn000); 842 jjtn000.jjtSetFirstToken(getToken(1));Token name; 843 String documentation = null; 844 try { 845 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 846 case DOCUMENTATION:{ 847 documentation = Documentation(); 848 break; 849 } 850 default: 851 jj_la1[26] = jj_gen; 852 ; 853 } 854 label_11: 855 while (true) { 856 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 857 case DECORATOR:{ 858 ; 859 break; 860 } 861 default: 862 jj_la1[27] = jj_gen; 863 break label_11; 864 } 865 DecoratorDeclaration(); 866 } 867 name = jj_consume_token(IDENTIFIER); 868 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 869 case 78:{ 870 jj_consume_token(78); 871 jj_consume_token(79); 872 BlankLines(); 873 MemberDeclaration(); 874 BlankLines(); 875 label_12: 876 while (true) { 877 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 878 case 75:{ 879 ; 880 break; 881 } 882 default: 883 jj_la1[28] = jj_gen; 884 break label_12; 885 } 886 jj_consume_token(75); 887 BlankLines(); 888 MemberDeclaration(); 889 BlankLines(); 890 } 891 jj_consume_token(77); 892 break; 893 } 894 default: 895 jj_la1[29] = jj_gen; 896 ; 897 } 898jjtree.closeNodeScope(jjtn000, true); 899 jjtc000 = false; 900 jjtn000.jjtSetLastToken(getToken(0)); 901jjtn000.setName(name.image); 902 jjtn000.jjtSetFirstToken(name); 903 jjtn000.setDocumentation(documentation); 904 } catch (Throwable jjte000) { 905if (jjtc000) { 906 jjtree.clearNodeScope(jjtn000); 907 jjtc000 = false; 908 } else { 909 jjtree.popNode(); 910 } 911 if (jjte000 instanceof RuntimeException) { 912 {if (true) throw (RuntimeException)jjte000;} 913 } 914 if (jjte000 instanceof ParseException) { 915 {if (true) throw (ParseException)jjte000;} 916 } 917 {if (true) throw (Error)jjte000;} 918 } finally { 919if (jjtc000) { 920 jjtree.closeNodeScope(jjtn000, true); 921 jjtn000.jjtSetLastToken(getToken(0)); 922 } 923 } 924 } 925 926 final public ASTUnionDeclaration UnionDeclaration() throws ParseException {/*@bgen(jjtree) UnionDeclaration */ 927 ASTUnionDeclaration jjtn000 = new ASTUnionDeclaration(JJTUNIONDECLARATION); 928 boolean jjtc000 = true; 929 jjtree.openNodeScope(jjtn000); 930 jjtn000.jjtSetFirstToken(getToken(1));Token name; 931 Token valueName; 932 try { 933 jj_consume_token(UNION); 934 name = jj_consume_token(IDENTIFIER); 935 jj_consume_token(78); 936 jj_consume_token(79); 937 BlankLines(); 938 label_13: 939 while (true) { 940 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 941 case DECORATOR: 942 case IDENTIFIER: 943 case DOCUMENTATION:{ 944 ; 945 break; 946 } 947 default: 948 jj_la1[30] = jj_gen; 949 break label_13; 950 } 951 UnionValue(); 952 BlankLines(); 953 } 954 jj_consume_token(77); 955jjtree.closeNodeScope(jjtn000, true); 956 jjtc000 = false; 957 jjtn000.jjtSetLastToken(getToken(0)); 958jjtn000.setName(name.image); 959 {if ("" != null) return jjtn000;} 960 } catch (Throwable jjte000) { 961if (jjtc000) { 962 jjtree.clearNodeScope(jjtn000); 963 jjtc000 = false; 964 } else { 965 jjtree.popNode(); 966 } 967 if (jjte000 instanceof RuntimeException) { 968 {if (true) throw (RuntimeException)jjte000;} 969 } 970 if (jjte000 instanceof ParseException) { 971 {if (true) throw (ParseException)jjte000;} 972 } 973 {if (true) throw (Error)jjte000;} 974 } finally { 975if (jjtc000) { 976 jjtree.closeNodeScope(jjtn000, true); 977 jjtn000.jjtSetLastToken(getToken(0)); 978 } 979 } 980 throw new Error("Missing return statement in function"); 981 } 982 983 final public void AugmentationDeclaration() throws ParseException {String documentation = null; 984 ASTFunctionDeclaration func; 985 ASTMacroInvocation macro; 986 jj_consume_token(79); 987 BlankLines(); 988 label_14: 989 while (true) { 990 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 991 case FUNCTION: 992 case DECORATOR: 993 case MACRO_INVOCATION: 994 case MACRO: 995 case DOCUMENTATION:{ 996 ; 997 break; 998 } 999 default: 1000 jj_la1[31] = jj_gen; 1001 break label_14; 1002 } 1003 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1004 case FUNCTION: 1005 case DECORATOR: 1006 case MACRO: 1007 case DOCUMENTATION:{ 1008 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1009 case DOCUMENTATION:{ 1010 documentation = Documentation(); 1011 break; 1012 } 1013 default: 1014 jj_la1[32] = jj_gen; 1015 ; 1016 } 1017 label_15: 1018 while (true) { 1019 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1020 case DECORATOR:{ 1021 ; 1022 break; 1023 } 1024 default: 1025 jj_la1[33] = jj_gen; 1026 break label_15; 1027 } 1028 DecoratorDeclaration(); 1029 } 1030 func = FunctionDeclaration(); 1031func.setAugmentation(true); 1032 func.setDocumentation(documentation); 1033 break; 1034 } 1035 case MACRO_INVOCATION:{ 1036 macro = MacroInvocation(); 1037macro.setTopLevel(true); 1038 break; 1039 } 1040 default: 1041 jj_la1[34] = jj_gen; 1042 jj_consume_token(-1); 1043 throw new ParseException(); 1044 } 1045 BlankLines(); 1046 } 1047 jj_consume_token(77); 1048 } 1049 1050 final public ASTNamedAugmentationDeclaration NamedAugmentationDeclaration() throws ParseException {/*@bgen(jjtree) NamedAugmentationDeclaration */ 1051 ASTNamedAugmentationDeclaration jjtn000 = new ASTNamedAugmentationDeclaration(JJTNAMEDAUGMENTATIONDECLARATION); 1052 boolean jjtc000 = true; 1053 jjtree.openNodeScope(jjtn000); 1054 jjtn000.jjtSetFirstToken(getToken(1));Token name; 1055 try { 1056 jj_consume_token(NAMEDAUGMENTATION); 1057 name = jj_consume_token(IDENTIFIER); 1058 jj_consume_token(78); 1059 AugmentationDeclaration(); 1060jjtree.closeNodeScope(jjtn000, true); 1061 jjtc000 = false; 1062 jjtn000.jjtSetLastToken(getToken(0)); 1063jjtn000.setName(name.image); 1064 {if ("" != null) return jjtn000;} 1065 } catch (Throwable jjte000) { 1066if (jjtc000) { 1067 jjtree.clearNodeScope(jjtn000); 1068 jjtc000 = false; 1069 } else { 1070 jjtree.popNode(); 1071 } 1072 if (jjte000 instanceof RuntimeException) { 1073 {if (true) throw (RuntimeException)jjte000;} 1074 } 1075 if (jjte000 instanceof ParseException) { 1076 {if (true) throw (ParseException)jjte000;} 1077 } 1078 {if (true) throw (Error)jjte000;} 1079 } finally { 1080if (jjtc000) { 1081 jjtree.closeNodeScope(jjtn000, true); 1082 jjtn000.jjtSetLastToken(getToken(0)); 1083 } 1084 } 1085 throw new Error("Missing return statement in function"); 1086 } 1087 1088 final public ASTAugmentDeclaration AugmentDeclaration() throws ParseException {/*@bgen(jjtree) AugmentDeclaration */ 1089 ASTAugmentDeclaration jjtn000 = new ASTAugmentDeclaration(JJTAUGMENTDECLARATION); 1090 boolean jjtc000 = true; 1091 jjtree.openNodeScope(jjtn000); 1092 jjtn000.jjtSetFirstToken(getToken(1));String target; 1093 List<String> names = null; 1094 try { 1095 jj_consume_token(AUGMENT); 1096 target = QualifiedName(); 1097 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1098 case 79:{ 1099 AugmentationDeclaration(); 1100 break; 1101 } 1102 case WITH:{ 1103 jj_consume_token(WITH); 1104 names = AugmentationNames(); 1105 break; 1106 } 1107 default: 1108 jj_la1[35] = jj_gen; 1109 jj_consume_token(-1); 1110 throw new ParseException(); 1111 } 1112jjtree.closeNodeScope(jjtn000, true); 1113 jjtc000 = false; 1114 jjtn000.jjtSetLastToken(getToken(0)); 1115jjtn000.setTarget(target); 1116 jjtn000.setAugmentationNames(names); 1117 {if ("" != null) return jjtn000;} 1118 } catch (Throwable jjte000) { 1119if (jjtc000) { 1120 jjtree.clearNodeScope(jjtn000); 1121 jjtc000 = false; 1122 } else { 1123 jjtree.popNode(); 1124 } 1125 if (jjte000 instanceof RuntimeException) { 1126 {if (true) throw (RuntimeException)jjte000;} 1127 } 1128 if (jjte000 instanceof ParseException) { 1129 {if (true) throw (ParseException)jjte000;} 1130 } 1131 {if (true) throw (Error)jjte000;} 1132 } finally { 1133if (jjtc000) { 1134 jjtree.closeNodeScope(jjtn000, true); 1135 jjtn000.jjtSetLastToken(getToken(0)); 1136 } 1137 } 1138 throw new Error("Missing return statement in function"); 1139 } 1140 1141 final public ASTFunctionDeclaration FunctionDeclaration() throws ParseException {/*@bgen(jjtree) FunctionDeclaration */ 1142 ASTFunctionDeclaration jjtn000 = new ASTFunctionDeclaration(JJTFUNCTIONDECLARATION); 1143 boolean jjtc000 = true; 1144 jjtree.openNodeScope(jjtn000); 1145 jjtn000.jjtSetFirstToken(getToken(1));Token name; 1146 try { 1147 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1148 case FUNCTION:{ 1149 jj_consume_token(FUNCTION); 1150 break; 1151 } 1152 case MACRO:{ 1153 jj_consume_token(MACRO); 1154jjtn000.setMacro(true); 1155 break; 1156 } 1157 default: 1158 jj_la1[36] = jj_gen; 1159 jj_consume_token(-1); 1160 throw new ParseException(); 1161 } 1162 name = jj_consume_token(IDENTIFIER); 1163 jj_consume_token(78); 1164 Function(); 1165jjtree.closeNodeScope(jjtn000, true); 1166 jjtc000 = false; 1167 jjtn000.jjtSetLastToken(getToken(0)); 1168jjtn000.setName(name.image); 1169 {if ("" != null) return jjtn000;} 1170 } catch (Throwable jjte000) { 1171if (jjtc000) { 1172 jjtree.clearNodeScope(jjtn000); 1173 jjtc000 = false; 1174 } else { 1175 jjtree.popNode(); 1176 } 1177 if (jjte000 instanceof RuntimeException) { 1178 {if (true) throw (RuntimeException)jjte000;} 1179 } 1180 if (jjte000 instanceof ParseException) { 1181 {if (true) throw (ParseException)jjte000;} 1182 } 1183 {if (true) throw (Error)jjte000;} 1184 } finally { 1185if (jjtc000) { 1186 jjtree.closeNodeScope(jjtn000, true); 1187 jjtn000.jjtSetLastToken(getToken(0)); 1188 } 1189 } 1190 throw new Error("Missing return statement in function"); 1191 } 1192 1193 final public ASTDecoratorDeclaration DecoratorDeclaration() throws ParseException {/*@bgen(jjtree) DecoratorDeclaration */ 1194 ASTDecoratorDeclaration jjtn000 = new ASTDecoratorDeclaration(JJTDECORATORDECLARATION); 1195 boolean jjtc000 = true; 1196 jjtree.openNodeScope(jjtn000); 1197 jjtn000.jjtSetFirstToken(getToken(1));Token constant = null; 1198 try { 1199 jj_consume_token(DECORATOR); 1200 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1201 case CONSTANT_INVOCATION:{ 1202 constant = jj_consume_token(CONSTANT_INVOCATION); 1203 break; 1204 } 1205 default: 1206 jj_la1[37] = jj_gen; 1207 ; 1208 } 1209 if (jj_2_2(2)) { 1210 InvocationExpression(); 1211 } else if (jj_2_3(2)) { 1212 Reference(); 1213 } else { 1214 jj_consume_token(-1); 1215 throw new ParseException(); 1216 } 1217 BlankLines(); 1218jjtree.closeNodeScope(jjtn000, true); 1219 jjtc000 = false; 1220 jjtn000.jjtSetLastToken(getToken(0)); 1221if (constant != null) { 1222 jjtn000.setConstant(true); 1223 } 1224 {if ("" != null) return jjtn000;} 1225 } catch (Throwable jjte000) { 1226if (jjtc000) { 1227 jjtree.clearNodeScope(jjtn000); 1228 jjtc000 = false; 1229 } else { 1230 jjtree.popNode(); 1231 } 1232 if (jjte000 instanceof RuntimeException) { 1233 {if (true) throw (RuntimeException)jjte000;} 1234 } 1235 if (jjte000 instanceof ParseException) { 1236 {if (true) throw (ParseException)jjte000;} 1237 } 1238 {if (true) throw (Error)jjte000;} 1239 } finally { 1240if (jjtc000) { 1241 jjtree.closeNodeScope(jjtn000, true); 1242 jjtn000.jjtSetLastToken(getToken(0)); 1243 } 1244 } 1245 throw new Error("Missing return statement in function"); 1246 } 1247 1248// ............................................................................................. // 1249 final public 1250void Statement() throws ParseException { 1251 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1252 case NEWLINE: 1253 case COMMENT:{ 1254 BlankLine(); 1255 break; 1256 } 1257 default: 1258 jj_la1[38] = jj_gen; 1259 if (jj_2_4(2)) { 1260 Assignment(); 1261 } else if (jj_2_5(3)) { 1262 DestructuringAssignment(); 1263 } else if (jj_2_6(2)) { 1264 LetOrVar(); 1265 } else { 1266 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1267 case MATCH: 1268 case UNARY_OPERATOR: 1269 case MACRO_INVOCATION: 1270 case NUMBER: 1271 case LONG_NUMBER: 1272 case BIGINTEGER: 1273 case FLOATING_NUMBER: 1274 case FLOAT: 1275 case BIGDECIMAL: 1276 case STRING: 1277 case CHAR: 1278 case NULL: 1279 case TRUE: 1280 case FALSE: 1281 case CLASSREF: 1282 case FUNREF: 1283 case COLL_START: 1284 case MULTI_STRING: 1285 case IDENTIFIER: 1286 case 79: 1287 case 80: 1288 case 83: 1289 case 84:{ 1290 ExpressionStatement(); 1291 break; 1292 } 1293 case RETURN:{ 1294 Return(); 1295 break; 1296 } 1297 case IF:{ 1298 ConditionalBranching(); 1299 break; 1300 } 1301 case WHILE:{ 1302 WhileLoop(); 1303 break; 1304 } 1305 case FOR:{ 1306 ForLoop(); 1307 break; 1308 } 1309 case FOREACH:{ 1310 ForEachLoop(); 1311 break; 1312 } 1313 case THROW:{ 1314 Throw(); 1315 break; 1316 } 1317 case TRY:{ 1318 TryCatchFinally(); 1319 break; 1320 } 1321 case CASE:{ 1322 Case(); 1323 break; 1324 } 1325 case CONTINUE:{ 1326 Continue(); 1327 break; 1328 } 1329 case BREAK:{ 1330 Break(); 1331 break; 1332 } 1333 default: 1334 jj_la1[39] = jj_gen; 1335 jj_consume_token(-1); 1336 throw new ParseException(); 1337 } 1338 } 1339 } 1340 } 1341 1342 final public void Continue() throws ParseException {/*@bgen(jjtree) Continue */ 1343 ASTContinue jjtn000 = new ASTContinue(JJTCONTINUE); 1344 boolean jjtc000 = true; 1345 jjtree.openNodeScope(jjtn000); 1346 jjtn000.jjtSetFirstToken(getToken(1)); 1347 try { 1348 jj_consume_token(CONTINUE); 1349 } finally { 1350if (jjtc000) { 1351 jjtree.closeNodeScope(jjtn000, true); 1352 jjtn000.jjtSetLastToken(getToken(0)); 1353 } 1354 } 1355 } 1356 1357 final public void Break() throws ParseException {/*@bgen(jjtree) Break */ 1358 ASTBreak jjtn000 = new ASTBreak(JJTBREAK); 1359 boolean jjtc000 = true; 1360 jjtree.openNodeScope(jjtn000); 1361 jjtn000.jjtSetFirstToken(getToken(1)); 1362 try { 1363 jj_consume_token(BREAK); 1364 } finally { 1365if (jjtc000) { 1366 jjtree.closeNodeScope(jjtn000, true); 1367 jjtn000.jjtSetLastToken(getToken(0)); 1368 } 1369 } 1370 } 1371 1372 final public void Throw() throws ParseException {/*@bgen(jjtree) Throw */ 1373 ASTThrow jjtn000 = new ASTThrow(JJTTHROW); 1374 boolean jjtc000 = true; 1375 jjtree.openNodeScope(jjtn000); 1376 jjtn000.jjtSetFirstToken(getToken(1)); 1377 try { 1378 jj_consume_token(THROW); 1379 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1380 case NEWLINE: 1381 case COMMENT:{ 1382 BlankLine(); 1383 break; 1384 } 1385 default: 1386 jj_la1[40] = jj_gen; 1387 ; 1388 } 1389 ExpressionStatement(); 1390 } catch (Throwable jjte000) { 1391if (jjtc000) { 1392 jjtree.clearNodeScope(jjtn000); 1393 jjtc000 = false; 1394 } else { 1395 jjtree.popNode(); 1396 } 1397 if (jjte000 instanceof RuntimeException) { 1398 {if (true) throw (RuntimeException)jjte000;} 1399 } 1400 if (jjte000 instanceof ParseException) { 1401 {if (true) throw (ParseException)jjte000;} 1402 } 1403 {if (true) throw (Error)jjte000;} 1404 } finally { 1405if (jjtc000) { 1406 jjtree.closeNodeScope(jjtn000, true); 1407 jjtn000.jjtSetLastToken(getToken(0)); 1408 } 1409 } 1410 } 1411 1412 final public void WhileLoop() throws ParseException {/*@bgen(jjtree) WhileLoop */ 1413 ASTWhileLoop jjtn000 = new ASTWhileLoop(JJTWHILELOOP); 1414 boolean jjtc000 = true; 1415 jjtree.openNodeScope(jjtn000); 1416 jjtn000.jjtSetFirstToken(getToken(1)); 1417 try { 1418 jj_consume_token(WHILE); 1419 ExpressionStatement(); 1420 Block(); 1421 } catch (Throwable jjte000) { 1422if (jjtc000) { 1423 jjtree.clearNodeScope(jjtn000); 1424 jjtc000 = false; 1425 } else { 1426 jjtree.popNode(); 1427 } 1428 if (jjte000 instanceof RuntimeException) { 1429 {if (true) throw (RuntimeException)jjte000;} 1430 } 1431 if (jjte000 instanceof ParseException) { 1432 {if (true) throw (ParseException)jjte000;} 1433 } 1434 {if (true) throw (Error)jjte000;} 1435 } finally { 1436if (jjtc000) { 1437 jjtree.closeNodeScope(jjtn000, true); 1438 jjtn000.jjtSetLastToken(getToken(0)); 1439 } 1440 } 1441 } 1442 1443 final public void ForLoop() throws ParseException {/*@bgen(jjtree) ForLoop */ 1444 ASTForLoop jjtn000 = new ASTForLoop(JJTFORLOOP); 1445 boolean jjtc000 = true; 1446 jjtree.openNodeScope(jjtn000); 1447 jjtn000.jjtSetFirstToken(getToken(1)); 1448 try { 1449 jj_consume_token(FOR); 1450 jj_consume_token(80); 1451 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1452 case NEWLINE: 1453 case COMMENT:{ 1454 BlankLine(); 1455 break; 1456 } 1457 default: 1458 jj_la1[41] = jj_gen; 1459 ; 1460 } 1461 LetOrVar(); 1462 jj_consume_token(75); 1463 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1464 case NEWLINE: 1465 case COMMENT:{ 1466 BlankLine(); 1467 break; 1468 } 1469 default: 1470 jj_la1[42] = jj_gen; 1471 ; 1472 } 1473 ExpressionStatement(); 1474 jj_consume_token(75); 1475 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1476 case NEWLINE: 1477 case COMMENT:{ 1478 BlankLine(); 1479 break; 1480 } 1481 default: 1482 jj_la1[43] = jj_gen; 1483 ; 1484 } 1485 Statement(); 1486 jj_consume_token(81); 1487 if (jj_2_7(2)) { 1488 Block(); 1489 } else { 1490 ; 1491 } 1492 } catch (Throwable jjte000) { 1493if (jjtc000) { 1494 jjtree.clearNodeScope(jjtn000); 1495 jjtc000 = false; 1496 } else { 1497 jjtree.popNode(); 1498 } 1499 if (jjte000 instanceof RuntimeException) { 1500 {if (true) throw (RuntimeException)jjte000;} 1501 } 1502 if (jjte000 instanceof ParseException) { 1503 {if (true) throw (ParseException)jjte000;} 1504 } 1505 {if (true) throw (Error)jjte000;} 1506 } finally { 1507if (jjtc000) { 1508 jjtree.closeNodeScope(jjtn000, true); 1509 jjtn000.jjtSetLastToken(getToken(0)); 1510 } 1511 } 1512 } 1513 1514 final public void ForEachLoop() throws ParseException {/*@bgen(jjtree) ForEachLoop */ 1515 ASTForEachLoop jjtn000 = new ASTForEachLoop(JJTFOREACHLOOP); 1516 boolean jjtc000 = true; 1517 jjtree.openNodeScope(jjtn000); 1518 jjtn000.jjtSetFirstToken(getToken(1));Token elementId; 1519 List<String> names; 1520 Token varargsToken = null; 1521 try { 1522 jj_consume_token(FOREACH); 1523 if (jj_2_8(2)) { 1524 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1525 case IDENTIFIER:{ 1526 elementId = jj_consume_token(IDENTIFIER); 1527 jj_consume_token(IN); 1528 ExpressionStatement(); 1529 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1530 case WHEN:{ 1531 jj_consume_token(WHEN); 1532 ExpressionStatement(); 1533 break; 1534 } 1535 default: 1536 jj_la1[44] = jj_gen; 1537 ; 1538 } 1539 break; 1540 } 1541 case 80:{ 1542 jj_consume_token(80); 1543 elementId = jj_consume_token(IDENTIFIER); 1544 jj_consume_token(IN); 1545 ExpressionStatement(); 1546 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1547 case WHEN:{ 1548 jj_consume_token(WHEN); 1549 ExpressionStatement(); 1550 break; 1551 } 1552 default: 1553 jj_la1[45] = jj_gen; 1554 ; 1555 } 1556 jj_consume_token(81); 1557 break; 1558 } 1559 default: 1560 jj_la1[46] = jj_gen; 1561 jj_consume_token(-1); 1562 throw new ParseException(); 1563 } 1564jjtn000.setElementIdentifier(elementId.image); 1565 } else if (jj_2_9(2)) { 1566 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1567 case IDENTIFIER:{ 1568 names = DestructuredNames(); 1569 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1570 case 82:{ 1571 varargsToken = jj_consume_token(82); 1572 break; 1573 } 1574 default: 1575 jj_la1[47] = jj_gen; 1576 ; 1577 } 1578 jj_consume_token(IN); 1579 ExpressionStatement(); 1580 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1581 case WHEN:{ 1582 jj_consume_token(WHEN); 1583 ExpressionStatement(); 1584 break; 1585 } 1586 default: 1587 jj_la1[48] = jj_gen; 1588 ; 1589 } 1590 break; 1591 } 1592 case 80:{ 1593 jj_consume_token(80); 1594 names = DestructuredNames(); 1595 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1596 case 82:{ 1597 varargsToken = jj_consume_token(82); 1598 break; 1599 } 1600 default: 1601 jj_la1[49] = jj_gen; 1602 ; 1603 } 1604 jj_consume_token(IN); 1605 ExpressionStatement(); 1606 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1607 case WHEN:{ 1608 jj_consume_token(WHEN); 1609 ExpressionStatement(); 1610 break; 1611 } 1612 default: 1613 jj_la1[50] = jj_gen; 1614 ; 1615 } 1616 jj_consume_token(81); 1617 break; 1618 } 1619 default: 1620 jj_la1[51] = jj_gen; 1621 jj_consume_token(-1); 1622 throw new ParseException(); 1623 } 1624jjtn000.setNames(names); 1625 jjtn000.setVarargs(varargsToken != null); 1626 } else { 1627 jj_consume_token(-1); 1628 throw new ParseException(); 1629 } 1630 if (jj_2_10(2)) { 1631 Block(); 1632 } else { 1633 ; 1634 } 1635 } catch (Throwable jjte000) { 1636if (jjtc000) { 1637 jjtree.clearNodeScope(jjtn000); 1638 jjtc000 = false; 1639 } else { 1640 jjtree.popNode(); 1641 } 1642 if (jjte000 instanceof RuntimeException) { 1643 {if (true) throw (RuntimeException)jjte000;} 1644 } 1645 if (jjte000 instanceof ParseException) { 1646 {if (true) throw (ParseException)jjte000;} 1647 } 1648 {if (true) throw (Error)jjte000;} 1649 } finally { 1650if (jjtc000) { 1651 jjtree.closeNodeScope(jjtn000, true); 1652 jjtn000.jjtSetLastToken(getToken(0)); 1653 } 1654 } 1655 } 1656 1657 final public void TryCatchFinally() throws ParseException {/*@bgen(jjtree) TryCatchFinally */ 1658 ASTTryCatchFinally jjtn000 = new ASTTryCatchFinally(JJTTRYCATCHFINALLY); 1659 boolean jjtc000 = true; 1660 jjtree.openNodeScope(jjtn000); 1661 jjtn000.jjtSetFirstToken(getToken(1));Token exceptionId; 1662 try { 1663 jj_consume_token(TRY); 1664 Block(); 1665 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1666 case FINALLY:{ 1667 jj_consume_token(FINALLY); 1668 Block(); 1669jjtree.closeNodeScope(jjtn000, true); 1670 jjtc000 = false; 1671 jjtn000.jjtSetLastToken(getToken(0)); 1672jjtn000.setExceptionId(null); 1673 break; 1674 } 1675 case CATCH:{ 1676 jj_consume_token(CATCH); 1677 jj_consume_token(80); 1678 exceptionId = jj_consume_token(IDENTIFIER); 1679 jj_consume_token(81); 1680 Block(); 1681 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1682 case FINALLY:{ 1683 jj_consume_token(FINALLY); 1684 Block(); 1685 break; 1686 } 1687 default: 1688 jj_la1[52] = jj_gen; 1689 ; 1690 } 1691jjtree.closeNodeScope(jjtn000, true); 1692 jjtc000 = false; 1693 jjtn000.jjtSetLastToken(getToken(0)); 1694jjtn000.setExceptionId(exceptionId.image); 1695 break; 1696 } 1697 default: 1698 jj_la1[53] = jj_gen; 1699 jj_consume_token(-1); 1700 throw new ParseException(); 1701 } 1702 } catch (Throwable jjte000) { 1703if (jjtc000) { 1704 jjtree.clearNodeScope(jjtn000); 1705 jjtc000 = false; 1706 } else { 1707 jjtree.popNode(); 1708 } 1709 if (jjte000 instanceof RuntimeException) { 1710 {if (true) throw (RuntimeException)jjte000;} 1711 } 1712 if (jjte000 instanceof ParseException) { 1713 {if (true) throw (ParseException)jjte000;} 1714 } 1715 {if (true) throw (Error)jjte000;} 1716 } finally { 1717if (jjtc000) { 1718 jjtree.closeNodeScope(jjtn000, true); 1719 jjtn000.jjtSetLastToken(getToken(0)); 1720 } 1721 } 1722 } 1723 1724 final public void ExpressionStatement() throws ParseException {/*@bgen(jjtree) ExpressionStatement */ 1725 ASTExpressionStatement jjtn000 = new ASTExpressionStatement(JJTEXPRESSIONSTATEMENT); 1726 boolean jjtc000 = true; 1727 jjtree.openNodeScope(jjtn000); 1728 jjtn000.jjtSetFirstToken(getToken(1)); 1729 try { 1730 OrIfNullExpression(); 1731 if (jj_2_11(2)) { 1732 LocalDeclaration(); 1733 } else { 1734 ; 1735 } 1736 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1737 case NEWLINE: 1738 case COMMENT:{ 1739 BlankLine(); 1740 break; 1741 } 1742 default: 1743 jj_la1[54] = jj_gen; 1744 ; 1745 } 1746 } catch (Throwable jjte000) { 1747if (jjtc000) { 1748 jjtree.clearNodeScope(jjtn000); 1749 jjtc000 = false; 1750 } else { 1751 jjtree.popNode(); 1752 } 1753 if (jjte000 instanceof RuntimeException) { 1754 {if (true) throw (RuntimeException)jjte000;} 1755 } 1756 if (jjte000 instanceof ParseException) { 1757 {if (true) throw (ParseException)jjte000;} 1758 } 1759 {if (true) throw (Error)jjte000;} 1760 } finally { 1761if (jjtc000) { 1762 jjtree.closeNodeScope(jjtn000, true); 1763 jjtn000.jjtSetLastToken(getToken(0)); 1764 } 1765 } 1766 } 1767 1768 final public void LocalDeclaration() throws ParseException {/*@bgen(jjtree) LocalDeclaration */ 1769 ASTLocalDeclaration jjtn000 = new ASTLocalDeclaration(JJTLOCALDECLARATION); 1770 boolean jjtc000 = true; 1771 jjtree.openNodeScope(jjtn000); 1772 jjtn000.jjtSetFirstToken(getToken(1)); 1773 try { 1774 jj_consume_token(WITH); 1775 jj_consume_token(79); 1776 label_16: 1777 while (true) { 1778 if (jj_2_12(3)) { 1779 Assignment(); 1780 } else { 1781 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1782 case VAR: 1783 case LET: 1784 case IDENTIFIER:{ 1785 DestructuringAssignment(); 1786 break; 1787 } 1788 case NEWLINE: 1789 case COMMENT:{ 1790 BlankLine(); 1791 break; 1792 } 1793 default: 1794 jj_la1[55] = jj_gen; 1795 jj_consume_token(-1); 1796 throw new ParseException(); 1797 } 1798 } 1799 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1800 case NEWLINE: 1801 case VAR: 1802 case LET: 1803 case IDENTIFIER: 1804 case COMMENT:{ 1805 ; 1806 break; 1807 } 1808 default: 1809 jj_la1[56] = jj_gen; 1810 break label_16; 1811 } 1812 } 1813 jj_consume_token(77); 1814 } catch (Throwable jjte000) { 1815if (jjtc000) { 1816 jjtree.clearNodeScope(jjtn000); 1817 jjtc000 = false; 1818 } else { 1819 jjtree.popNode(); 1820 } 1821 if (jjte000 instanceof RuntimeException) { 1822 {if (true) throw (RuntimeException)jjte000;} 1823 } 1824 if (jjte000 instanceof ParseException) { 1825 {if (true) throw (ParseException)jjte000;} 1826 } 1827 {if (true) throw (Error)jjte000;} 1828 } finally { 1829if (jjtc000) { 1830 jjtree.closeNodeScope(jjtn000, true); 1831 jjtn000.jjtSetLastToken(getToken(0)); 1832 } 1833 } 1834 } 1835 1836 final public void Atom() throws ParseException { 1837 if (jj_2_13(2)) { 1838 FunctionInvocation(); 1839 } else if (jj_2_14(2)) { 1840 Reference(); 1841 } else { 1842 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1843 case MACRO_INVOCATION:{ 1844 MacroInvocation(); 1845 break; 1846 } 1847 case MATCH:{ 1848 Match(); 1849 break; 1850 } 1851 case NUMBER: 1852 case LONG_NUMBER: 1853 case BIGINTEGER: 1854 case FLOATING_NUMBER: 1855 case FLOAT: 1856 case BIGDECIMAL: 1857 case STRING: 1858 case CHAR: 1859 case NULL: 1860 case TRUE: 1861 case FALSE: 1862 case CLASSREF: 1863 case FUNREF: 1864 case MULTI_STRING:{ 1865 Literal(); 1866 break; 1867 } 1868 case 79: 1869 case 83: 1870 case 84:{ 1871 Function(); 1872 break; 1873 } 1874 case COLL_START:{ 1875 CollectionLiteral(); 1876 break; 1877 } 1878 case 80:{ 1879 jj_consume_token(80); 1880 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1881 case NEWLINE: 1882 case COMMENT:{ 1883 BlankLine(); 1884 break; 1885 } 1886 default: 1887 jj_la1[57] = jj_gen; 1888 ; 1889 } 1890 ExpressionStatement(); 1891 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1892 case NEWLINE: 1893 case COMMENT:{ 1894 BlankLine(); 1895 break; 1896 } 1897 default: 1898 jj_la1[58] = jj_gen; 1899 ; 1900 } 1901 jj_consume_token(81); 1902 break; 1903 } 1904 default: 1905 jj_la1[59] = jj_gen; 1906 jj_consume_token(-1); 1907 throw new ParseException(); 1908 } 1909 } 1910 } 1911 1912 final public void UnaryExpression() throws ParseException {Token token = null; 1913 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1914 case UNARY_OPERATOR:{ 1915 token = jj_consume_token(UNARY_OPERATOR); 1916 break; 1917 } 1918 default: 1919 jj_la1[60] = jj_gen; 1920 ; 1921 } 1922 InvocationExpression(); 1923ASTUnaryExpression jjtn001 = new ASTUnaryExpression(JJTUNARYEXPRESSION); 1924 boolean jjtc001 = true; 1925 jjtree.openNodeScope(jjtn001); 1926 jjtn001.jjtSetFirstToken(getToken(1)); 1927 try { 1928jjtree.closeNodeScope(jjtn001, token != null); 1929 jjtc001 = false; 1930 jjtn001.jjtSetLastToken(getToken(0)); 1931if (token != null) { 1932 jjtn001.setOperator(token.image); 1933 } 1934 } finally { 1935if (jjtc001) { 1936 jjtree.closeNodeScope(jjtn001, token != null); 1937 jjtn001.jjtSetLastToken(getToken(0)); 1938 } 1939 } 1940 } 1941 1942 final public void InvocationExpression() throws ParseException {Token token = null; 1943 ASTAnonymousFunctionInvocation anon = null; 1944 Atom(); 1945ASTInvocationExpression jjtn001 = new ASTInvocationExpression(JJTINVOCATIONEXPRESSION); 1946 boolean jjtc001 = true; 1947 jjtree.openNodeScope(jjtn001); 1948 jjtn001.jjtSetFirstToken(getToken(1)); 1949 try { 1950 label_17: 1951 while (true) { 1952 if (jj_2_15(2)) { 1953 ; 1954 } else { 1955 break label_17; 1956 } 1957 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1958 case NEWLINE: 1959 case COMMENT:{ 1960 BlankLine(); 1961 break; 1962 } 1963 default: 1964 jj_la1[61] = jj_gen; 1965 ; 1966 } 1967 token = jj_consume_token(INVOCATION_OPERATOR); 1968 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 1969 case NEWLINE: 1970 case COMMENT:{ 1971 BlankLine(); 1972 break; 1973 } 1974 default: 1975 jj_la1[62] = jj_gen; 1976 ; 1977 } 1978 MethodInvocation(); 1979jjtn001.addOperator(token.image); 1980 } 1981 } catch (Throwable jjte001) { 1982if (jjtc001) { 1983 jjtree.clearNodeScope(jjtn001); 1984 jjtc001 = false; 1985 } else { 1986 jjtree.popNode(); 1987 } 1988 if (jjte001 instanceof RuntimeException) { 1989 {if (true) throw (RuntimeException)jjte001;} 1990 } 1991 if (jjte001 instanceof ParseException) { 1992 {if (true) throw (ParseException)jjte001;} 1993 } 1994 {if (true) throw (Error)jjte001;} 1995 } finally { 1996if (jjtc001) { 1997 jjtree.closeNodeScope(jjtn001, token != null); 1998 jjtn001.jjtSetLastToken(getToken(0)); 1999 } 2000 } 2001 label_18: 2002 while (true) { 2003 if (jj_2_16(2)) { 2004 ; 2005 } else { 2006 break label_18; 2007 } 2008 anon = AnonymousFunctionInvocation(); 2009anon.setOnExpression(true); 2010 } 2011 } 2012 2013 final public void MultiplicativeExpression() throws ParseException {Token token = null; 2014 UnaryExpression(); 2015ASTMultiplicativeExpression jjtn001 = new ASTMultiplicativeExpression(JJTMULTIPLICATIVEEXPRESSION); 2016 boolean jjtc001 = true; 2017 jjtree.openNodeScope(jjtn001); 2018 jjtn001.jjtSetFirstToken(getToken(1)); 2019 try { 2020 label_19: 2021 while (true) { 2022 if (jj_2_17(2)) { 2023 ; 2024 } else { 2025 break label_19; 2026 } 2027 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2028 case NEWLINE: 2029 case COMMENT:{ 2030 BlankLine(); 2031 break; 2032 } 2033 default: 2034 jj_la1[63] = jj_gen; 2035 ; 2036 } 2037 token = jj_consume_token(MULTIPLICATIVE_OPERATOR); 2038 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2039 case NEWLINE: 2040 case COMMENT:{ 2041 BlankLine(); 2042 break; 2043 } 2044 default: 2045 jj_la1[64] = jj_gen; 2046 ; 2047 } 2048 InvocationExpression(); 2049jjtn001.addOperator(token.image); 2050 } 2051 } catch (Throwable jjte001) { 2052if (jjtc001) { 2053 jjtree.clearNodeScope(jjtn001); 2054 jjtc001 = false; 2055 } else { 2056 jjtree.popNode(); 2057 } 2058 if (jjte001 instanceof RuntimeException) { 2059 {if (true) throw (RuntimeException)jjte001;} 2060 } 2061 if (jjte001 instanceof ParseException) { 2062 {if (true) throw (ParseException)jjte001;} 2063 } 2064 {if (true) throw (Error)jjte001;} 2065 } finally { 2066if (jjtc001) { 2067 jjtree.closeNodeScope(jjtn001, token != null); 2068 jjtn001.jjtSetLastToken(getToken(0)); 2069 } 2070 } 2071 } 2072 2073 final public void AdditiveExpression() throws ParseException {Token token = null; 2074 MultiplicativeExpression(); 2075ASTAdditiveExpression jjtn001 = new ASTAdditiveExpression(JJTADDITIVEEXPRESSION); 2076 boolean jjtc001 = true; 2077 jjtree.openNodeScope(jjtn001); 2078 jjtn001.jjtSetFirstToken(getToken(1)); 2079 try { 2080 label_20: 2081 while (true) { 2082 if (jj_2_18(2)) { 2083 ; 2084 } else { 2085 break label_20; 2086 } 2087 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2088 case NEWLINE: 2089 case COMMENT:{ 2090 BlankLine(); 2091 break; 2092 } 2093 default: 2094 jj_la1[65] = jj_gen; 2095 ; 2096 } 2097 token = jj_consume_token(ADDITIVE_OPERATOR); 2098 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2099 case NEWLINE: 2100 case COMMENT:{ 2101 BlankLine(); 2102 break; 2103 } 2104 default: 2105 jj_la1[66] = jj_gen; 2106 ; 2107 } 2108 MultiplicativeExpression(); 2109jjtn001.addOperator(token.image); 2110 } 2111 } catch (Throwable jjte001) { 2112if (jjtc001) { 2113 jjtree.clearNodeScope(jjtn001); 2114 jjtc001 = false; 2115 } else { 2116 jjtree.popNode(); 2117 } 2118 if (jjte001 instanceof RuntimeException) { 2119 {if (true) throw (RuntimeException)jjte001;} 2120 } 2121 if (jjte001 instanceof ParseException) { 2122 {if (true) throw (ParseException)jjte001;} 2123 } 2124 {if (true) throw (Error)jjte001;} 2125 } finally { 2126if (jjtc001) { 2127 jjtree.closeNodeScope(jjtn001, token != null); 2128 jjtn001.jjtSetLastToken(getToken(0)); 2129 } 2130 } 2131 } 2132 2133 final public void RelationalExpression() throws ParseException {Token token = null; 2134 AdditiveExpression(); 2135ASTRelationalExpression jjtn001 = new ASTRelationalExpression(JJTRELATIONALEXPRESSION); 2136 boolean jjtc001 = true; 2137 jjtree.openNodeScope(jjtn001); 2138 jjtn001.jjtSetFirstToken(getToken(1)); 2139 try { 2140 if (jj_2_19(2)) { 2141 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2142 case NEWLINE: 2143 case COMMENT:{ 2144 BlankLine(); 2145 break; 2146 } 2147 default: 2148 jj_la1[67] = jj_gen; 2149 ; 2150 } 2151 token = jj_consume_token(RELATIONAL_OPERATOR); 2152 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2153 case NEWLINE: 2154 case COMMENT:{ 2155 BlankLine(); 2156 break; 2157 } 2158 default: 2159 jj_la1[68] = jj_gen; 2160 ; 2161 } 2162 AdditiveExpression(); 2163jjtn001.setOperator(token.image); 2164 } else { 2165 ; 2166 } 2167 } catch (Throwable jjte001) { 2168if (jjtc001) { 2169 jjtree.clearNodeScope(jjtn001); 2170 jjtc001 = false; 2171 } else { 2172 jjtree.popNode(); 2173 } 2174 if (jjte001 instanceof RuntimeException) { 2175 {if (true) throw (RuntimeException)jjte001;} 2176 } 2177 if (jjte001 instanceof ParseException) { 2178 {if (true) throw (ParseException)jjte001;} 2179 } 2180 {if (true) throw (Error)jjte001;} 2181 } finally { 2182if (jjtc001) { 2183 jjtree.closeNodeScope(jjtn001, token != null); 2184 jjtn001.jjtSetLastToken(getToken(0)); 2185 } 2186 } 2187 } 2188 2189 final public void EqualityExpression() throws ParseException {Token token = null; 2190 RelationalExpression(); 2191ASTEqualityExpression jjtn001 = new ASTEqualityExpression(JJTEQUALITYEXPRESSION); 2192 boolean jjtc001 = true; 2193 jjtree.openNodeScope(jjtn001); 2194 jjtn001.jjtSetFirstToken(getToken(1)); 2195 try { 2196 if (jj_2_20(2)) { 2197 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2198 case NEWLINE: 2199 case COMMENT:{ 2200 BlankLine(); 2201 break; 2202 } 2203 default: 2204 jj_la1[69] = jj_gen; 2205 ; 2206 } 2207 token = jj_consume_token(EQUALITY_OPERATOR); 2208 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2209 case NEWLINE: 2210 case COMMENT:{ 2211 BlankLine(); 2212 break; 2213 } 2214 default: 2215 jj_la1[70] = jj_gen; 2216 ; 2217 } 2218 RelationalExpression(); 2219jjtn001.setOperator(token.image); 2220 } else { 2221 ; 2222 } 2223 } catch (Throwable jjte001) { 2224if (jjtc001) { 2225 jjtree.clearNodeScope(jjtn001); 2226 jjtc001 = false; 2227 } else { 2228 jjtree.popNode(); 2229 } 2230 if (jjte001 instanceof RuntimeException) { 2231 {if (true) throw (RuntimeException)jjte001;} 2232 } 2233 if (jjte001 instanceof ParseException) { 2234 {if (true) throw (ParseException)jjte001;} 2235 } 2236 {if (true) throw (Error)jjte001;} 2237 } finally { 2238if (jjtc001) { 2239 jjtree.closeNodeScope(jjtn001, token != null); 2240 jjtn001.jjtSetLastToken(getToken(0)); 2241 } 2242 } 2243 } 2244 2245 final public void AndExpression() throws ParseException {int count = 0; 2246 EqualityExpression(); 2247ASTAndExpression jjtn001 = new ASTAndExpression(JJTANDEXPRESSION); 2248 boolean jjtc001 = true; 2249 jjtree.openNodeScope(jjtn001); 2250 jjtn001.jjtSetFirstToken(getToken(1)); 2251 try { 2252 label_21: 2253 while (true) { 2254 if (jj_2_21(2)) { 2255 ; 2256 } else { 2257 break label_21; 2258 } 2259 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2260 case NEWLINE: 2261 case COMMENT:{ 2262 BlankLine(); 2263 break; 2264 } 2265 default: 2266 jj_la1[71] = jj_gen; 2267 ; 2268 } 2269 jj_consume_token(AND_OPERATOR); 2270 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2271 case NEWLINE: 2272 case COMMENT:{ 2273 BlankLine(); 2274 break; 2275 } 2276 default: 2277 jj_la1[72] = jj_gen; 2278 ; 2279 } 2280 EqualityExpression(); 2281jjtn001.increaseCount(); 2282 count++; 2283 } 2284 } catch (Throwable jjte001) { 2285if (jjtc001) { 2286 jjtree.clearNodeScope(jjtn001); 2287 jjtc001 = false; 2288 } else { 2289 jjtree.popNode(); 2290 } 2291 if (jjte001 instanceof RuntimeException) { 2292 {if (true) throw (RuntimeException)jjte001;} 2293 } 2294 if (jjte001 instanceof ParseException) { 2295 {if (true) throw (ParseException)jjte001;} 2296 } 2297 {if (true) throw (Error)jjte001;} 2298 } finally { 2299if (jjtc001) { 2300 jjtree.closeNodeScope(jjtn001, count > 0); 2301 jjtn001.jjtSetLastToken(getToken(0)); 2302 } 2303 } 2304 } 2305 2306 final public void OrExpression() throws ParseException {int count = 0; 2307 AndExpression(); 2308ASTOrExpression jjtn001 = new ASTOrExpression(JJTOREXPRESSION); 2309 boolean jjtc001 = true; 2310 jjtree.openNodeScope(jjtn001); 2311 jjtn001.jjtSetFirstToken(getToken(1)); 2312 try { 2313 label_22: 2314 while (true) { 2315 if (jj_2_22(2)) { 2316 ; 2317 } else { 2318 break label_22; 2319 } 2320 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2321 case NEWLINE: 2322 case COMMENT:{ 2323 BlankLine(); 2324 break; 2325 } 2326 default: 2327 jj_la1[73] = jj_gen; 2328 ; 2329 } 2330 jj_consume_token(OR_OPERATOR); 2331 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2332 case NEWLINE: 2333 case COMMENT:{ 2334 BlankLine(); 2335 break; 2336 } 2337 default: 2338 jj_la1[74] = jj_gen; 2339 ; 2340 } 2341 AndExpression(); 2342jjtn001.increaseCount(); 2343 count++; 2344 } 2345 } catch (Throwable jjte001) { 2346if (jjtc001) { 2347 jjtree.clearNodeScope(jjtn001); 2348 jjtc001 = false; 2349 } else { 2350 jjtree.popNode(); 2351 } 2352 if (jjte001 instanceof RuntimeException) { 2353 {if (true) throw (RuntimeException)jjte001;} 2354 } 2355 if (jjte001 instanceof ParseException) { 2356 {if (true) throw (ParseException)jjte001;} 2357 } 2358 {if (true) throw (Error)jjte001;} 2359 } finally { 2360if (jjtc001) { 2361 jjtree.closeNodeScope(jjtn001, count > 0); 2362 jjtn001.jjtSetLastToken(getToken(0)); 2363 } 2364 } 2365 } 2366 2367 final public void OrIfNullExpression() throws ParseException {int count = 0; 2368 OrExpression(); 2369ASTOrIfNullExpression jjtn001 = new ASTOrIfNullExpression(JJTORIFNULLEXPRESSION); 2370 boolean jjtc001 = true; 2371 jjtree.openNodeScope(jjtn001); 2372 jjtn001.jjtSetFirstToken(getToken(1)); 2373 try { 2374 label_23: 2375 while (true) { 2376 if (jj_2_23(2)) { 2377 ; 2378 } else { 2379 break label_23; 2380 } 2381 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2382 case NEWLINE: 2383 case COMMENT:{ 2384 BlankLine(); 2385 break; 2386 } 2387 default: 2388 jj_la1[75] = jj_gen; 2389 ; 2390 } 2391 jj_consume_token(OR_IFNULL_OPERATOR); 2392 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2393 case NEWLINE: 2394 case COMMENT:{ 2395 BlankLine(); 2396 break; 2397 } 2398 default: 2399 jj_la1[76] = jj_gen; 2400 ; 2401 } 2402 OrExpression(); 2403jjtn001.increaseCount(); 2404 count++; 2405 } 2406 } catch (Throwable jjte001) { 2407if (jjtc001) { 2408 jjtree.clearNodeScope(jjtn001); 2409 jjtc001 = false; 2410 } else { 2411 jjtree.popNode(); 2412 } 2413 if (jjte001 instanceof RuntimeException) { 2414 {if (true) throw (RuntimeException)jjte001;} 2415 } 2416 if (jjte001 instanceof ParseException) { 2417 {if (true) throw (ParseException)jjte001;} 2418 } 2419 {if (true) throw (Error)jjte001;} 2420 } finally { 2421if (jjtc001) { 2422 jjtree.closeNodeScope(jjtn001, count > 0); 2423 jjtn001.jjtSetLastToken(getToken(0)); 2424 } 2425 } 2426 } 2427 2428 final public void MethodInvocation() throws ParseException {/*@bgen(jjtree) MethodInvocation */ 2429 ASTMethodInvocation jjtn000 = new ASTMethodInvocation(JJTMETHODINVOCATION); 2430 boolean jjtc000 = true; 2431 jjtree.openNodeScope(jjtn000); 2432 jjtn000.jjtSetFirstToken(getToken(1));Token token; 2433 try { 2434 token = jj_consume_token(IDENTIFIER); 2435 Arguments(); 2436 label_24: 2437 while (true) { 2438 if (jj_2_24(2)) { 2439 ; 2440 } else { 2441 break label_24; 2442 } 2443 AnonymousFunctionInvocation(); 2444 } 2445jjtree.closeNodeScope(jjtn000, true); 2446 jjtc000 = false; 2447 jjtn000.jjtSetLastToken(getToken(0)); 2448jjtn000.setName(token.image); 2449 } catch (Throwable jjte000) { 2450if (jjtc000) { 2451 jjtree.clearNodeScope(jjtn000); 2452 jjtc000 = false; 2453 } else { 2454 jjtree.popNode(); 2455 } 2456 if (jjte000 instanceof RuntimeException) { 2457 {if (true) throw (RuntimeException)jjte000;} 2458 } 2459 if (jjte000 instanceof ParseException) { 2460 {if (true) throw (ParseException)jjte000;} 2461 } 2462 {if (true) throw (Error)jjte000;} 2463 } finally { 2464if (jjtc000) { 2465 jjtree.closeNodeScope(jjtn000, true); 2466 jjtn000.jjtSetLastToken(getToken(0)); 2467 } 2468 } 2469 } 2470 2471 final public void Block() throws ParseException {/*@bgen(jjtree) Block */ 2472 ASTBlock jjtn000 = new ASTBlock(JJTBLOCK); 2473 boolean jjtc000 = true; 2474 jjtree.openNodeScope(jjtn000); 2475 jjtn000.jjtSetFirstToken(getToken(1)); 2476 try { 2477 try { 2478 jj_consume_token(79); 2479 label_25: 2480 while (true) { 2481 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2482 case NEWLINE: 2483 case RETURN: 2484 case IF: 2485 case WHILE: 2486 case FOR: 2487 case FOREACH: 2488 case THROW: 2489 case TRY: 2490 case CASE: 2491 case MATCH: 2492 case BREAK: 2493 case CONTINUE: 2494 case UNARY_OPERATOR: 2495 case MACRO_INVOCATION: 2496 case VAR: 2497 case LET: 2498 case NUMBER: 2499 case LONG_NUMBER: 2500 case BIGINTEGER: 2501 case FLOATING_NUMBER: 2502 case FLOAT: 2503 case BIGDECIMAL: 2504 case STRING: 2505 case CHAR: 2506 case NULL: 2507 case TRUE: 2508 case FALSE: 2509 case CLASSREF: 2510 case FUNREF: 2511 case COLL_START: 2512 case MULTI_STRING: 2513 case IDENTIFIER: 2514 case COMMENT: 2515 case 79: 2516 case 80: 2517 case 83: 2518 case 84:{ 2519 ; 2520 break; 2521 } 2522 default: 2523 jj_la1[77] = jj_gen; 2524 break label_25; 2525 } 2526 try { 2527 Statement(); 2528 } catch (ParseException e) { 2529skipto(NEWLINE, e, jjtn000); 2530 } 2531 } 2532 jj_consume_token(77); 2533 } catch (ParseException e) { 2534skipto(NEWLINE, e, jjtn000); 2535 } 2536 } catch (Throwable jjte000) { 2537if (jjtc000) { 2538 jjtree.clearNodeScope(jjtn000); 2539 jjtc000 = false; 2540 } else { 2541 jjtree.popNode(); 2542 } 2543 if (jjte000 instanceof RuntimeException) { 2544 {if (true) throw (RuntimeException)jjte000;} 2545 } 2546 if (jjte000 instanceof ParseException) { 2547 {if (true) throw (ParseException)jjte000;} 2548 } 2549 {if (true) throw (Error)jjte000;} 2550 } finally { 2551if (jjtc000) { 2552 jjtree.closeNodeScope(jjtn000, true); 2553 jjtn000.jjtSetLastToken(getToken(0)); 2554 } 2555 } 2556 } 2557 2558 final public ASTMacroInvocation MacroInvocation() throws ParseException {/*@bgen(jjtree) MacroInvocation */ 2559 ASTMacroInvocation jjtn000 = new ASTMacroInvocation(JJTMACROINVOCATION); 2560 boolean jjtc000 = true; 2561 jjtree.openNodeScope(jjtn000); 2562 jjtn000.jjtSetFirstToken(getToken(1));String name; 2563 Token token; 2564 try { 2565 token = jj_consume_token(MACRO_INVOCATION); 2566 name = QualifiedName(); 2567 if (jj_2_25(2)) { 2568 Arguments(); 2569 } else { 2570 ; 2571 } 2572 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2573 case 79:{ 2574 if (jj_2_26(4)) { 2575 jj_consume_token(79); 2576 BlankLines(); 2577 label_26: 2578 while (true) { 2579 try { 2580 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2581 case IMPORT:{ 2582 ImportDeclaration(); 2583 BlankLines(); 2584 break; 2585 } 2586 case FUNCTION: 2587 case LOCAL: 2588 case AUGMENT: 2589 case NAMEDAUGMENTATION: 2590 case STRUCT: 2591 case UNION: 2592 case DECORATOR: 2593 case MACRO_INVOCATION: 2594 case MACRO: 2595 case DOCUMENTATION:{ 2596 ToplevelDeclaration(); 2597 BlankLines(); 2598 break; 2599 } 2600 default: 2601 jj_la1[78] = jj_gen; 2602 jj_consume_token(-1); 2603 throw new ParseException(); 2604 } 2605 } catch (ParseException e) { 2606skipto(NEWLINE, e, jjtn000); 2607 } 2608 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2609 case IMPORT: 2610 case FUNCTION: 2611 case LOCAL: 2612 case AUGMENT: 2613 case NAMEDAUGMENTATION: 2614 case STRUCT: 2615 case UNION: 2616 case DECORATOR: 2617 case MACRO_INVOCATION: 2618 case MACRO: 2619 case DOCUMENTATION:{ 2620 ; 2621 break; 2622 } 2623 default: 2624 jj_la1[79] = jj_gen; 2625 break label_26; 2626 } 2627 } 2628 BlankLines(); 2629 jj_consume_token(77); 2630 } else { 2631 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2632 case 79:{ 2633 Block(); 2634 break; 2635 } 2636 default: 2637 jj_la1[80] = jj_gen; 2638 jj_consume_token(-1); 2639 throw new ParseException(); 2640 } 2641 } 2642 break; 2643 } 2644 default: 2645 jj_la1[81] = jj_gen; 2646 ; 2647 } 2648jjtree.closeNodeScope(jjtn000, true); 2649 jjtc000 = false; 2650 jjtn000.jjtSetLastToken(getToken(0)); 2651jjtn000.setName(name); 2652 {if ("" != null) return jjtn000;} 2653 } catch (Throwable jjte000) { 2654if (jjtc000) { 2655 jjtree.clearNodeScope(jjtn000); 2656 jjtc000 = false; 2657 } else { 2658 jjtree.popNode(); 2659 } 2660 if (jjte000 instanceof RuntimeException) { 2661 {if (true) throw (RuntimeException)jjte000;} 2662 } 2663 if (jjte000 instanceof ParseException) { 2664 {if (true) throw (ParseException)jjte000;} 2665 } 2666 {if (true) throw (Error)jjte000;} 2667 } finally { 2668if (jjtc000) { 2669 jjtree.closeNodeScope(jjtn000, true); 2670 jjtn000.jjtSetLastToken(getToken(0)); 2671 } 2672 } 2673 throw new Error("Missing return statement in function"); 2674 } 2675 2676 final public void Function() throws ParseException {/*@bgen(jjtree) Function */ 2677 ASTFunction jjtn000 = new ASTFunction(JJTFUNCTION); 2678 boolean jjtc000 = true; 2679 jjtree.openNodeScope(jjtn000); 2680 jjtn000.jjtSetFirstToken(getToken(1));List<String> parameters = null; 2681 Token varargsToken = null; 2682 boolean compactForm = false; 2683 try { 2684 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2685 case 83:{ 2686 jj_consume_token(83); 2687 parameters = Parameters(); 2688 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2689 case 82:{ 2690 varargsToken = jj_consume_token(82); 2691 break; 2692 } 2693 default: 2694 jj_la1[82] = jj_gen; 2695 ; 2696 } 2697 jj_consume_token(83); 2698 break; 2699 } 2700 default: 2701 jj_la1[83] = jj_gen; 2702 ; 2703 } 2704 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2705 case 79:{ 2706 Block(); 2707 break; 2708 } 2709 case 84:{ 2710 jj_consume_token(84); 2711 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2712 case NEWLINE: 2713 case COMMENT:{ 2714 BlankLine(); 2715 break; 2716 } 2717 default: 2718 jj_la1[84] = jj_gen; 2719 ; 2720 } 2721 ExpressionStatement(); 2722compactForm = true; 2723 break; 2724 } 2725 default: 2726 jj_la1[85] = jj_gen; 2727 jj_consume_token(-1); 2728 throw new ParseException(); 2729 } 2730jjtree.closeNodeScope(jjtn000, true); 2731 jjtc000 = false; 2732 jjtn000.jjtSetLastToken(getToken(0)); 2733if (parameters == null) { 2734 parameters = Collections.emptyList(); 2735 } 2736 jjtn000.setCompactForm(compactForm); 2737 jjtn000.setParameters(parameters); 2738 jjtn000.setVarargs(varargsToken != null); 2739 } catch (Throwable jjte000) { 2740if (jjtc000) { 2741 jjtree.clearNodeScope(jjtn000); 2742 jjtc000 = false; 2743 } else { 2744 jjtree.popNode(); 2745 } 2746 if (jjte000 instanceof RuntimeException) { 2747 {if (true) throw (RuntimeException)jjte000;} 2748 } 2749 if (jjte000 instanceof ParseException) { 2750 {if (true) throw (ParseException)jjte000;} 2751 } 2752 {if (true) throw (Error)jjte000;} 2753 } finally { 2754if (jjtc000) { 2755 jjtree.closeNodeScope(jjtn000, true); 2756 jjtn000.jjtSetLastToken(getToken(0)); 2757 } 2758 } 2759 } 2760 2761 final public void Literal() throws ParseException {/*@bgen(jjtree) Literal */ 2762 ASTLiteral jjtn000 = new ASTLiteral(JJTLITERAL); 2763 boolean jjtc000 = true; 2764 jjtree.openNodeScope(jjtn000); 2765 jjtn000.jjtSetFirstToken(getToken(1));Object value; 2766 try { 2767 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2768 case CLASSREF:{ 2769 value = ClassLiteral(); 2770jjtree.closeNodeScope(jjtn000, true); 2771 jjtc000 = false; 2772 jjtn000.jjtSetLastToken(getToken(0)); 2773jjtn000.setLiteralValue(value); 2774 break; 2775 } 2776 case STRING: 2777 case MULTI_STRING:{ 2778 value = StringLiteral(); 2779jjtree.closeNodeScope(jjtn000, true); 2780 jjtc000 = false; 2781 jjtn000.jjtSetLastToken(getToken(0)); 2782jjtn000.setLiteralValue(value); 2783 break; 2784 } 2785 case CHAR:{ 2786 value = CharLiteral(); 2787jjtree.closeNodeScope(jjtn000, true); 2788 jjtc000 = false; 2789 jjtn000.jjtSetLastToken(getToken(0)); 2790jjtn000.setLiteralValue(value); 2791 break; 2792 } 2793 case BIGDECIMAL:{ 2794 value = BigDecimalLiteral(); 2795jjtree.closeNodeScope(jjtn000, true); 2796 jjtc000 = false; 2797 jjtn000.jjtSetLastToken(getToken(0)); 2798jjtn000.setLiteralValue(value); 2799 break; 2800 } 2801 case BIGINTEGER:{ 2802 value = BigIntegerLiteral(); 2803jjtree.closeNodeScope(jjtn000, true); 2804 jjtc000 = false; 2805 jjtn000.jjtSetLastToken(getToken(0)); 2806jjtn000.setLiteralValue(value); 2807 break; 2808 } 2809 case FLOAT:{ 2810 value = FloatLiteral(); 2811jjtree.closeNodeScope(jjtn000, true); 2812 jjtc000 = false; 2813 jjtn000.jjtSetLastToken(getToken(0)); 2814jjtn000.setLiteralValue(value); 2815 break; 2816 } 2817 case FLOATING_NUMBER:{ 2818 value = DoubleLiteral(); 2819jjtree.closeNodeScope(jjtn000, true); 2820 jjtc000 = false; 2821 jjtn000.jjtSetLastToken(getToken(0)); 2822jjtn000.setLiteralValue(value); 2823 break; 2824 } 2825 case LONG_NUMBER:{ 2826 value = LongLiteral(); 2827jjtree.closeNodeScope(jjtn000, true); 2828 jjtc000 = false; 2829 jjtn000.jjtSetLastToken(getToken(0)); 2830jjtn000.setLiteralValue(value); 2831 break; 2832 } 2833 case NUMBER:{ 2834 value = IntegerLiteral(); 2835jjtree.closeNodeScope(jjtn000, true); 2836 jjtc000 = false; 2837 jjtn000.jjtSetLastToken(getToken(0)); 2838jjtn000.setLiteralValue(value); 2839 break; 2840 } 2841 case NULL:{ 2842 jj_consume_token(NULL); 2843jjtree.closeNodeScope(jjtn000, true); 2844 jjtc000 = false; 2845 jjtn000.jjtSetLastToken(getToken(0)); 2846jjtn000.setLiteralValue(null); 2847 break; 2848 } 2849 case TRUE:{ 2850 jj_consume_token(TRUE); 2851jjtree.closeNodeScope(jjtn000, true); 2852 jjtc000 = false; 2853 jjtn000.jjtSetLastToken(getToken(0)); 2854jjtn000.setLiteralValue(Boolean.TRUE); 2855 break; 2856 } 2857 case FALSE:{ 2858 jj_consume_token(FALSE); 2859jjtree.closeNodeScope(jjtn000, true); 2860 jjtc000 = false; 2861 jjtn000.jjtSetLastToken(getToken(0)); 2862jjtn000.setLiteralValue(Boolean.FALSE); 2863 break; 2864 } 2865 case FUNREF:{ 2866 value = FunctionRef(); 2867jjtree.closeNodeScope(jjtn000, true); 2868 jjtc000 = false; 2869 jjtn000.jjtSetLastToken(getToken(0)); 2870jjtn000.setLiteralValue(value); 2871 break; 2872 } 2873 default: 2874 jj_la1[86] = jj_gen; 2875 jj_consume_token(-1); 2876 throw new ParseException(); 2877 } 2878 } catch (Throwable jjte000) { 2879if (jjtc000) { 2880 jjtree.clearNodeScope(jjtn000); 2881 jjtc000 = false; 2882 } else { 2883 jjtree.popNode(); 2884 } 2885 if (jjte000 instanceof RuntimeException) { 2886 {if (true) throw (RuntimeException)jjte000;} 2887 } 2888 if (jjte000 instanceof ParseException) { 2889 {if (true) throw (ParseException)jjte000;} 2890 } 2891 {if (true) throw (Error)jjte000;} 2892 } finally { 2893if (jjtc000) { 2894 jjtree.closeNodeScope(jjtn000, true); 2895 jjtn000.jjtSetLastToken(getToken(0)); 2896 } 2897 } 2898 } 2899 2900 final public void CollectionLiteral() throws ParseException {/*@bgen(jjtree) CollectionLiteral */ 2901 ASTCollectionLiteral jjtn000 = new ASTCollectionLiteral(JJTCOLLECTIONLITERAL); 2902 boolean jjtc000 = true; 2903 jjtree.openNodeScope(jjtn000); 2904 jjtn000.jjtSetFirstToken(getToken(1));Token token; 2905 boolean isRange = false; 2906 boolean isComprehension = false; 2907 try { 2908 token = jj_consume_token(COLL_START); 2909 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2910 case NEWLINE: 2911 case COMMENT:{ 2912 BlankLine(); 2913 break; 2914 } 2915 default: 2916 jj_la1[87] = jj_gen; 2917 ; 2918 } 2919 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2920 case MATCH: 2921 case UNARY_OPERATOR: 2922 case MACRO_INVOCATION: 2923 case NUMBER: 2924 case LONG_NUMBER: 2925 case BIGINTEGER: 2926 case FLOATING_NUMBER: 2927 case FLOAT: 2928 case BIGDECIMAL: 2929 case STRING: 2930 case CHAR: 2931 case NULL: 2932 case TRUE: 2933 case FALSE: 2934 case CLASSREF: 2935 case FUNREF: 2936 case COLL_START: 2937 case MULTI_STRING: 2938 case IDENTIFIER: 2939 case 79: 2940 case 80: 2941 case 83: 2942 case 84:{ 2943 ExpressionStatement(); 2944 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2945 case FOR: 2946 case FOREACH: 2947 case 75: 2948 case 85:{ 2949 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2950 case 75:{ 2951 label_27: 2952 while (true) { 2953 jj_consume_token(75); 2954 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2955 case NEWLINE: 2956 case COMMENT:{ 2957 BlankLine(); 2958 break; 2959 } 2960 default: 2961 jj_la1[88] = jj_gen; 2962 ; 2963 } 2964 ExpressionStatement(); 2965 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2966 case 75:{ 2967 ; 2968 break; 2969 } 2970 default: 2971 jj_la1[89] = jj_gen; 2972 break label_27; 2973 } 2974 } 2975 break; 2976 } 2977 case 85:{ 2978 jj_consume_token(85); 2979 ExpressionStatement(); 2980isRange = true; 2981 break; 2982 } 2983 case FOR: 2984 case FOREACH:{ 2985 label_28: 2986 while (true) { 2987 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 2988 case FOREACH:{ 2989 ForEachLoop(); 2990 break; 2991 } 2992 case FOR:{ 2993 ForLoop(); 2994 break; 2995 } 2996 default: 2997 jj_la1[90] = jj_gen; 2998 jj_consume_token(-1); 2999 throw new ParseException(); 3000 } 3001 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 3002 case FOR: 3003 case FOREACH:{ 3004 ; 3005 break; 3006 } 3007 default: 3008 jj_la1[91] = jj_gen; 3009 break label_28; 3010 } 3011 } 3012isComprehension = true; 3013 break; 3014 } 3015 default: 3016 jj_la1[92] = jj_gen; 3017 jj_consume_token(-1); 3018 throw new ParseException(); 3019 } 3020 break; 3021 } 3022 default: 3023 jj_la1[93] = jj_gen; 3024 ; 3025 } 3026 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 3027 case NEWLINE: 3028 case COMMENT:{ 3029 BlankLine(); 3030 break; 3031 } 3032 default: 3033 jj_la1[94] = jj_gen; 3034 ; 3035 } 3036 break; 3037 } 3038 default: 3039 jj_la1[95] = jj_gen; 3040 ; 3041 } 3042 jj_consume_token(86); 3043jjtree.closeNodeScope(jjtn000, true); 3044 jjtc000 = false; 3045 jjtn000.jjtSetLastToken(getToken(0)); 3046String image = token.image; 3047 jjtn000.setType(image.substring(0, image.length() - 1)); 3048 if (jjtn000.getType().isEmpty()) { 3049 jjtn000.setType("tuple"); 3050 } 3051 if (isRange) { 3052 jjtn000.setType("range"); 3053 } 3054 jjtn000.setComprehension(isComprehension); 3055 } catch (Throwable jjte000) { 3056if (jjtc000) { 3057 jjtree.clearNodeScope(jjtn000); 3058 jjtc000 = false; 3059 } else { 3060 jjtree.popNode(); 3061 } 3062 if (jjte000 instanceof RuntimeException) { 3063 {if (true) throw (RuntimeException)jjte000;} 3064 } 3065 if (jjte000 instanceof ParseException) { 3066 {if (true) throw (ParseException)jjte000;} 3067 } 3068 {if (true) throw (Error)jjte000;} 3069 } finally { 3070if (jjtc000) { 3071 jjtree.closeNodeScope(jjtn000, true); 3072 jjtn000.jjtSetLastToken(getToken(0)); 3073 } 3074 } 3075 } 3076 3077 final public void Reference() throws ParseException {/*@bgen(jjtree) Reference */ 3078 ASTReference jjtn000 = new ASTReference(JJTREFERENCE); 3079 boolean jjtc000 = true; 3080 jjtree.openNodeScope(jjtn000); 3081 jjtn000.jjtSetFirstToken(getToken(1)); 3082 try { 3083 jj_consume_token(IDENTIFIER); 3084jjtree.closeNodeScope(jjtn000, true); 3085 jjtc000 = false; 3086 jjtn000.jjtSetLastToken(getToken(0)); 3087jjtn000.setName(jjtn000.jjtGetFirstToken().image); 3088 } finally { 3089if (jjtc000) { 3090 jjtree.closeNodeScope(jjtn000, true); 3091 jjtn000.jjtSetLastToken(getToken(0)); 3092 } 3093 } 3094 } 3095 3096 final public ASTDestructuringAssignment DestructuringAssignment() throws ParseException {/*@bgen(jjtree) DestructuringAssignment */ 3097 ASTDestructuringAssignment jjtn000 = new ASTDestructuringAssignment(JJTDESTRUCTURINGASSIGNMENT); 3098 boolean jjtc000 = true; 3099 jjtree.openNodeScope(jjtn000); 3100 jjtn000.jjtSetFirstToken(getToken(1));List<String> names; 3101 Token varargsToken = null; 3102 try { 3103 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 3104 case LET:{ 3105 jj_consume_token(LET); 3106 names = DestructuredNames(); 3107 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 3108 case 82:{ 3109 varargsToken = jj_consume_token(82); 3110 break; 3111 } 3112 default: 3113 jj_la1[96] = jj_gen; 3114 ; 3115 } 3116 jj_consume_token(78); 3117 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 3118 case NEWLINE: 3119 case COMMENT:{ 3120 BlankLine(); 3121 break; 3122 } 3123 default: 3124 jj_la1[97] = jj_gen; 3125 ; 3126 } 3127 ExpressionStatement(); 3128jjtree.closeNodeScope(jjtn000, true); 3129 jjtc000 = false; 3130 jjtn000.jjtSetLastToken(getToken(0)); 3131jjtn000.setType(ASTLetOrVar.Type.LET); 3132 jjtn000.setNames(names); 3133 jjtn000.setVarargs(varargsToken != null); 3134 {if ("" != null) return jjtn000;} 3135 break; 3136 } 3137 case VAR:{ 3138 jj_consume_token(VAR); 3139 names = DestructuredNames(); 3140 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 3141 case 82:{ 3142 varargsToken = jj_consume_token(82); 3143 break; 3144 } 3145 default: 3146 jj_la1[98] = jj_gen; 3147 ; 3148 } 3149 jj_consume_token(78); 3150 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 3151 case NEWLINE: 3152 case COMMENT:{ 3153 BlankLine(); 3154 break; 3155 } 3156 default: 3157 jj_la1[99] = jj_gen; 3158 ; 3159 } 3160 ExpressionStatement(); 3161jjtree.closeNodeScope(jjtn000, true); 3162 jjtc000 = false; 3163 jjtn000.jjtSetLastToken(getToken(0)); 3164jjtn000.setType(ASTLetOrVar.Type.VAR); 3165 jjtn000.setNames(names); 3166 jjtn000.setVarargs(varargsToken != null); 3167 {if ("" != null) return jjtn000;} 3168 break; 3169 } 3170 case IDENTIFIER:{ 3171 names = DestructuredNames(); 3172 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 3173 case 82:{ 3174 varargsToken = jj_consume_token(82); 3175 break; 3176 } 3177 default: 3178 jj_la1[100] = jj_gen; 3179 ; 3180 } 3181 jj_consume_token(78); 3182 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 3183 case NEWLINE: 3184 case COMMENT:{ 3185 BlankLine(); 3186 break; 3187 } 3188 default: 3189 jj_la1[101] = jj_gen; 3190 ; 3191 } 3192 ExpressionStatement(); 3193jjtree.closeNodeScope(jjtn000, true); 3194 jjtc000 = false; 3195 jjtn000.jjtSetLastToken(getToken(0)); 3196jjtn000.setType(null); 3197 jjtn000.setNames(names); 3198 jjtn000.setVarargs(varargsToken != null); 3199 {if ("" != null) return jjtn000;} 3200 break; 3201 } 3202 default: 3203 jj_la1[102] = jj_gen; 3204 jj_consume_token(-1); 3205 throw new ParseException(); 3206 } 3207 } catch (Throwable jjte000) { 3208if (jjtc000) { 3209 jjtree.clearNodeScope(jjtn000); 3210 jjtc000 = false; 3211 } else { 3212 jjtree.popNode(); 3213 } 3214 if (jjte000 instanceof RuntimeException) { 3215 {if (true) throw (RuntimeException)jjte000;} 3216 } 3217 if (jjte000 instanceof ParseException) { 3218 {if (true) throw (ParseException)jjte000;} 3219 } 3220 {if (true) throw (Error)jjte000;} 3221 } finally { 3222if (jjtc000) { 3223 jjtree.closeNodeScope(jjtn000, true); 3224 jjtn000.jjtSetLastToken(getToken(0)); 3225 } 3226 } 3227 throw new Error("Missing return statement in function"); 3228 } 3229 3230 final public List<String> DestructuredNames() throws ParseException {List<String> names = new LinkedList<String>(); 3231 Token rootToken; 3232 Token nextToken; 3233 rootToken = jj_consume_token(IDENTIFIER); 3234names.add(rootToken.image); 3235 label_29: 3236 while (true) { 3237 jj_consume_token(75); 3238 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 3239 case NEWLINE: 3240 case COMMENT:{ 3241 BlankLine(); 3242 break; 3243 } 3244 default: 3245 jj_la1[103] = jj_gen; 3246 ; 3247 } 3248 nextToken = jj_consume_token(IDENTIFIER); 3249names.add(nextToken.image); 3250 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 3251 case 75:{ 3252 ; 3253 break; 3254 } 3255 default: 3256 jj_la1[104] = jj_gen; 3257 break label_29; 3258 } 3259 } 3260{if ("" != null) return names;} 3261 throw new Error("Missing return statement in function"); 3262 } 3263 3264 final public ASTLetOrVar LetOrVar() throws ParseException {/*@bgen(jjtree) LetOrVar */ 3265 ASTLetOrVar jjtn000 = new ASTLetOrVar(JJTLETORVAR); 3266 boolean jjtc000 = true; 3267 jjtree.openNodeScope(jjtn000); 3268 jjtn000.jjtSetFirstToken(getToken(1));Token idToken; 3269 try { 3270 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 3271 case LET:{ 3272 jj_consume_token(LET); 3273 idToken = jj_consume_token(IDENTIFIER); 3274 jj_consume_token(78); 3275 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 3276 case NEWLINE: 3277 case COMMENT:{ 3278 BlankLine(); 3279 break; 3280 } 3281 default: 3282 jj_la1[105] = jj_gen; 3283 ; 3284 } 3285 ExpressionStatement(); 3286jjtree.closeNodeScope(jjtn000, true); 3287 jjtc000 = false; 3288 jjtn000.jjtSetLastToken(getToken(0)); 3289jjtn000.setType(ASTLetOrVar.Type.LET); 3290 jjtn000.setName(idToken.image); 3291 {if ("" != null) return jjtn000;} 3292 break; 3293 } 3294 case VAR:{ 3295 jj_consume_token(VAR); 3296 idToken = jj_consume_token(IDENTIFIER); 3297 jj_consume_token(78); 3298 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 3299 case NEWLINE: 3300 case COMMENT:{ 3301 BlankLine(); 3302 break; 3303 } 3304 default: 3305 jj_la1[106] = jj_gen; 3306 ; 3307 } 3308 ExpressionStatement(); 3309jjtree.closeNodeScope(jjtn000, true); 3310 jjtc000 = false; 3311 jjtn000.jjtSetLastToken(getToken(0)); 3312jjtn000.setType(ASTLetOrVar.Type.VAR); 3313 jjtn000.setName(idToken.image); 3314 {if ("" != null) return jjtn000;} 3315 break; 3316 } 3317 default: 3318 jj_la1[107] = jj_gen; 3319 jj_consume_token(-1); 3320 throw new ParseException(); 3321 } 3322 } catch (Throwable jjte000) { 3323if (jjtc000) { 3324 jjtree.clearNodeScope(jjtn000); 3325 jjtc000 = false; 3326 } else { 3327 jjtree.popNode(); 3328 } 3329 if (jjte000 instanceof RuntimeException) { 3330 {if (true) throw (RuntimeException)jjte000;} 3331 } 3332 if (jjte000 instanceof ParseException) { 3333 {if (true) throw (ParseException)jjte000;} 3334 } 3335 {if (true) throw (Error)jjte000;} 3336 } finally { 3337if (jjtc000) { 3338 jjtree.closeNodeScope(jjtn000, true); 3339 jjtn000.jjtSetLastToken(getToken(0)); 3340 } 3341 } 3342 throw new Error("Missing return statement in function"); 3343 } 3344 3345 final public void Assignment() throws ParseException {/*@bgen(jjtree) Assignment */ 3346 ASTAssignment jjtn000 = new ASTAssignment(JJTASSIGNMENT); 3347 boolean jjtc000 = true; 3348 jjtree.openNodeScope(jjtn000); 3349 jjtn000.jjtSetFirstToken(getToken(1));Token idToken; 3350 try { 3351 idToken = jj_consume_token(IDENTIFIER); 3352 jj_consume_token(78); 3353 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 3354 case NEWLINE: 3355 case COMMENT:{ 3356 BlankLine(); 3357 break; 3358 } 3359 default: 3360 jj_la1[108] = jj_gen; 3361 ; 3362 } 3363 ExpressionStatement(); 3364jjtree.closeNodeScope(jjtn000, true); 3365 jjtc000 = false; 3366 jjtn000.jjtSetLastToken(getToken(0)); 3367jjtn000.setName(idToken.image); 3368 } catch (Throwable jjte000) { 3369if (jjtc000) { 3370 jjtree.clearNodeScope(jjtn000); 3371 jjtc000 = false; 3372 } else { 3373 jjtree.popNode(); 3374 } 3375 if (jjte000 instanceof RuntimeException) { 3376 {if (true) throw (RuntimeException)jjte000;} 3377 } 3378 if (jjte000 instanceof ParseException) { 3379 {if (true) throw (ParseException)jjte000;} 3380 } 3381 {if (true) throw (Error)jjte000;} 3382 } finally { 3383if (jjtc000) { 3384 jjtree.closeNodeScope(jjtn000, true); 3385 jjtn000.jjtSetLastToken(getToken(0)); 3386 } 3387 } 3388 } 3389 3390 final public void Return() throws ParseException {/*@bgen(jjtree) Return */ 3391 ASTReturn jjtn000 = new ASTReturn(JJTRETURN); 3392 boolean jjtc000 = true; 3393 jjtree.openNodeScope(jjtn000); 3394 jjtn000.jjtSetFirstToken(getToken(1)); 3395 try { 3396 jj_consume_token(RETURN); 3397 if (jj_2_27(2)) { 3398 BlankLines(); 3399 ExpressionStatement(); 3400 } else { 3401 ; 3402 } 3403 } catch (Throwable jjte000) { 3404if (jjtc000) { 3405 jjtree.clearNodeScope(jjtn000); 3406 jjtc000 = false; 3407 } else { 3408 jjtree.popNode(); 3409 } 3410 if (jjte000 instanceof RuntimeException) { 3411 {if (true) throw (RuntimeException)jjte000;} 3412 } 3413 if (jjte000 instanceof ParseException) { 3414 {if (true) throw (ParseException)jjte000;} 3415 } 3416 {if (true) throw (Error)jjte000;} 3417 } finally { 3418if (jjtc000) { 3419 jjtree.closeNodeScope(jjtn000, true); 3420 jjtn000.jjtSetLastToken(getToken(0)); 3421 } 3422 } 3423 } 3424 3425 final public void Argument() throws ParseException {/*@bgen(jjtree) Argument */ 3426 ASTArgument jjtn000 = new ASTArgument(JJTARGUMENT); 3427 boolean jjtc000 = true; 3428 jjtree.openNodeScope(jjtn000); 3429 jjtn000.jjtSetFirstToken(getToken(1));Token parameterId = null; 3430 Token expression; 3431 try { 3432 if (jj_2_28(2)) { 3433 parameterId = jj_consume_token(IDENTIFIER); 3434 jj_consume_token(78); 3435 } else { 3436 ; 3437 } 3438 ExpressionStatement(); 3439jjtree.closeNodeScope(jjtn000, true); 3440 jjtc000 = false; 3441 jjtn000.jjtSetLastToken(getToken(0)); 3442if (parameterId != null) { 3443 jjtn000.setName(parameterId.image); 3444 jjtn000.setNamed(true); 3445 } 3446 } catch (Throwable jjte000) { 3447if (jjtc000) { 3448 jjtree.clearNodeScope(jjtn000); 3449 jjtc000 = false; 3450 } else { 3451 jjtree.popNode(); 3452 } 3453 if (jjte000 instanceof RuntimeException) { 3454 {if (true) throw (RuntimeException)jjte000;} 3455 } 3456 if (jjte000 instanceof ParseException) { 3457 {if (true) throw (ParseException)jjte000;} 3458 } 3459 {if (true) throw (Error)jjte000;} 3460 } finally { 3461if (jjtc000) { 3462 jjtree.closeNodeScope(jjtn000, true); 3463 jjtn000.jjtSetLastToken(getToken(0)); 3464 } 3465 } 3466 } 3467 3468 final public void Arguments() throws ParseException { 3469 jj_consume_token(80); 3470 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 3471 case NEWLINE: 3472 case COMMENT:{ 3473 BlankLine(); 3474 break; 3475 } 3476 default: 3477 jj_la1[109] = jj_gen; 3478 ; 3479 } 3480 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 3481 case MATCH: 3482 case UNARY_OPERATOR: 3483 case MACRO_INVOCATION: 3484 case NUMBER: 3485 case LONG_NUMBER: 3486 case BIGINTEGER: 3487 case FLOATING_NUMBER: 3488 case FLOAT: 3489 case BIGDECIMAL: 3490 case STRING: 3491 case CHAR: 3492 case NULL: 3493 case TRUE: 3494 case FALSE: 3495 case CLASSREF: 3496 case FUNREF: 3497 case COLL_START: 3498 case MULTI_STRING: 3499 case IDENTIFIER: 3500 case 79: 3501 case 80: 3502 case 83: 3503 case 84:{ 3504 Argument(); 3505 label_30: 3506 while (true) { 3507 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 3508 case 75:{ 3509 ; 3510 break; 3511 } 3512 default: 3513 jj_la1[110] = jj_gen; 3514 break label_30; 3515 } 3516 jj_consume_token(75); 3517 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 3518 case NEWLINE: 3519 case COMMENT:{ 3520 BlankLine(); 3521 break; 3522 } 3523 default: 3524 jj_la1[111] = jj_gen; 3525 ; 3526 } 3527 Argument(); 3528 } 3529 break; 3530 } 3531 default: 3532 jj_la1[112] = jj_gen; 3533 ; 3534 } 3535 jj_consume_token(81); 3536 } 3537 3538 final public ASTAnonymousFunctionInvocation AnonymousFunctionInvocation() throws ParseException {/*@bgen(jjtree) AnonymousFunctionInvocation */ 3539 ASTAnonymousFunctionInvocation jjtn000 = new ASTAnonymousFunctionInvocation(JJTANONYMOUSFUNCTIONINVOCATION); 3540 boolean jjtc000 = true; 3541 jjtree.openNodeScope(jjtn000); 3542 jjtn000.jjtSetFirstToken(getToken(1));Token constant = null; 3543 try { 3544 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 3545 case CONSTANT_INVOCATION:{ 3546 constant = jj_consume_token(CONSTANT_INVOCATION); 3547 break; 3548 } 3549 default: 3550 jj_la1[113] = jj_gen; 3551 ; 3552 } 3553 Arguments(); 3554jjtree.closeNodeScope(jjtn000, true); 3555 jjtc000 = false; 3556 jjtn000.jjtSetLastToken(getToken(0)); 3557if (constant != null) { 3558 jjtn000.setConstant(true); 3559 } 3560 {if ("" != null) return jjtn000;} 3561 } catch (Throwable jjte000) { 3562if (jjtc000) { 3563 jjtree.clearNodeScope(jjtn000); 3564 jjtc000 = false; 3565 } else { 3566 jjtree.popNode(); 3567 } 3568 if (jjte000 instanceof RuntimeException) { 3569 {if (true) throw (RuntimeException)jjte000;} 3570 } 3571 if (jjte000 instanceof ParseException) { 3572 {if (true) throw (ParseException)jjte000;} 3573 } 3574 {if (true) throw (Error)jjte000;} 3575 } finally { 3576if (jjtc000) { 3577 jjtree.closeNodeScope(jjtn000, true); 3578 jjtn000.jjtSetLastToken(getToken(0)); 3579 } 3580 } 3581 throw new Error("Missing return statement in function"); 3582 } 3583 3584 final public void FunctionInvocation() throws ParseException {/*@bgen(jjtree) FunctionInvocation */ 3585 ASTFunctionInvocation jjtn000 = new ASTFunctionInvocation(JJTFUNCTIONINVOCATION); 3586 boolean jjtc000 = true; 3587 jjtree.openNodeScope(jjtn000); 3588 jjtn000.jjtSetFirstToken(getToken(1));String name; 3589 Token constant = null; 3590 try { 3591 name = QualifiedName(); 3592 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 3593 case CONSTANT_INVOCATION:{ 3594 constant = jj_consume_token(CONSTANT_INVOCATION); 3595 break; 3596 } 3597 default: 3598 jj_la1[114] = jj_gen; 3599 ; 3600 } 3601 Arguments(); 3602 label_31: 3603 while (true) { 3604 if (jj_2_29(2)) { 3605 ; 3606 } else { 3607 break label_31; 3608 } 3609 AnonymousFunctionInvocation(); 3610 } 3611jjtree.closeNodeScope(jjtn000, true); 3612 jjtc000 = false; 3613 jjtn000.jjtSetLastToken(getToken(0)); 3614jjtn000.setName(name); 3615 if (constant != null) { 3616 jjtn000.setConstant(true); 3617 } 3618 } catch (Throwable jjte000) { 3619if (jjtc000) { 3620 jjtree.clearNodeScope(jjtn000); 3621 jjtc000 = false; 3622 } else { 3623 jjtree.popNode(); 3624 } 3625 if (jjte000 instanceof RuntimeException) { 3626 {if (true) throw (RuntimeException)jjte000;} 3627 } 3628 if (jjte000 instanceof ParseException) { 3629 {if (true) throw (ParseException)jjte000;} 3630 } 3631 {if (true) throw (Error)jjte000;} 3632 } finally { 3633if (jjtc000) { 3634 jjtree.closeNodeScope(jjtn000, true); 3635 jjtn000.jjtSetLastToken(getToken(0)); 3636 } 3637 } 3638 } 3639 3640 final public void ConditionalBranching() throws ParseException {/*@bgen(jjtree) ConditionalBranching */ 3641 ASTConditionalBranching jjtn000 = new ASTConditionalBranching(JJTCONDITIONALBRANCHING); 3642 boolean jjtc000 = true; 3643 jjtree.openNodeScope(jjtn000); 3644 jjtn000.jjtSetFirstToken(getToken(1)); 3645 try { 3646 jj_consume_token(IF); 3647 ExpressionStatement(); 3648 Block(); 3649 if (jj_2_30(2147483647)) { 3650 jj_consume_token(ELSE); 3651 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 3652 case IF:{ 3653 ConditionalBranching(); 3654 break; 3655 } 3656 case 79:{ 3657 Block(); 3658 break; 3659 } 3660 default: 3661 jj_la1[115] = jj_gen; 3662 jj_consume_token(-1); 3663 throw new ParseException(); 3664 } 3665 } else { 3666 ; 3667 } 3668 } catch (Throwable jjte000) { 3669if (jjtc000) { 3670 jjtree.clearNodeScope(jjtn000); 3671 jjtc000 = false; 3672 } else { 3673 jjtree.popNode(); 3674 } 3675 if (jjte000 instanceof RuntimeException) { 3676 {if (true) throw (RuntimeException)jjte000;} 3677 } 3678 if (jjte000 instanceof ParseException) { 3679 {if (true) throw (ParseException)jjte000;} 3680 } 3681 {if (true) throw (Error)jjte000;} 3682 } finally { 3683if (jjtc000) { 3684 jjtree.closeNodeScope(jjtn000, true); 3685 jjtn000.jjtSetLastToken(getToken(0)); 3686 } 3687 } 3688 } 3689 3690 final public void Case() throws ParseException {/*@bgen(jjtree) Case */ 3691 ASTCase jjtn000 = new ASTCase(JJTCASE); 3692 boolean jjtc000 = true; 3693 jjtree.openNodeScope(jjtn000); 3694 jjtn000.jjtSetFirstToken(getToken(1)); 3695 try { 3696 jj_consume_token(CASE); 3697 jj_consume_token(79); 3698 BlankLines(); 3699 label_32: 3700 while (true) { 3701 jj_consume_token(WHEN); 3702 ExpressionStatement(); 3703 Block(); 3704 BlankLines(); 3705 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 3706 case WHEN:{ 3707 ; 3708 break; 3709 } 3710 default: 3711 jj_la1[116] = jj_gen; 3712 break label_32; 3713 } 3714 } 3715 jj_consume_token(OTHERWISE); 3716 Block(); 3717 BlankLines(); 3718 jj_consume_token(77); 3719 } catch (Throwable jjte000) { 3720if (jjtc000) { 3721 jjtree.clearNodeScope(jjtn000); 3722 jjtc000 = false; 3723 } else { 3724 jjtree.popNode(); 3725 } 3726 if (jjte000 instanceof RuntimeException) { 3727 {if (true) throw (RuntimeException)jjte000;} 3728 } 3729 if (jjte000 instanceof ParseException) { 3730 {if (true) throw (ParseException)jjte000;} 3731 } 3732 {if (true) throw (Error)jjte000;} 3733 } finally { 3734if (jjtc000) { 3735 jjtree.closeNodeScope(jjtn000, true); 3736 jjtn000.jjtSetLastToken(getToken(0)); 3737 } 3738 } 3739 } 3740 3741 final public void Match() throws ParseException {/*@bgen(jjtree) Match */ 3742 ASTMatch jjtn000 = new ASTMatch(JJTMATCH); 3743 boolean jjtc000 = true; 3744 jjtree.openNodeScope(jjtn000); 3745 jjtn000.jjtSetFirstToken(getToken(1)); 3746 try { 3747 jj_consume_token(MATCH); 3748 jj_consume_token(79); 3749 BlankLines(); 3750 label_33: 3751 while (true) { 3752 jj_consume_token(WHEN); 3753 BlankLines(); 3754 ExpressionStatement(); 3755 BlankLines(); 3756 jj_consume_token(THEN); 3757 BlankLines(); 3758 ExpressionStatement(); 3759 BlankLines(); 3760 switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) { 3761 case WHEN:{ 3762 ; 3763 break; 3764 } 3765 default: 3766 jj_la1[117] = jj_gen; 3767 break label_33; 3768 } 3769 } 3770 jj_consume_token(OTHERWISE); 3771 BlankLines(); 3772 ExpressionStatement(); 3773 BlankLines(); 3774 jj_consume_token(77); 3775 } catch (Throwable jjte000) { 3776if (jjtc000) { 3777 jjtree.clearNodeScope(jjtn000); 3778 jjtc000 = false; 3779 } else { 3780 jjtree.popNode(); 3781 } 3782 if (jjte000 instanceof RuntimeException) { 3783 {if (true) throw (RuntimeException)jjte000;} 3784 } 3785 if (jjte000 instanceof ParseException) { 3786 {if (true) throw (ParseException)jjte000;} 3787 } 3788 {if (true) throw (Error)jjte000;} 3789 } finally { 3790if (jjtc000) { 3791 jjtree.closeNodeScope(jjtn000, true); 3792 jjtn000.jjtSetLastToken(getToken(0)); 3793 } 3794 } 3795 } 3796 3797 private boolean jj_2_1(int xla) 3798 { 3799 jj_la = xla; jj_lastpos = jj_scanpos = token; 3800 try { return !jj_3_1(); } 3801 catch(LookaheadSuccess ls) { return true; } 3802 finally { jj_save(0, xla); } 3803 } 3804 3805 private boolean jj_2_2(int xla) 3806 { 3807 jj_la = xla; jj_lastpos = jj_scanpos = token; 3808 try { return !jj_3_2(); } 3809 catch(LookaheadSuccess ls) { return true; } 3810 finally { jj_save(1, xla); } 3811 } 3812 3813 private boolean jj_2_3(int xla) 3814 { 3815 jj_la = xla; jj_lastpos = jj_scanpos = token; 3816 try { return !jj_3_3(); } 3817 catch(LookaheadSuccess ls) { return true; } 3818 finally { jj_save(2, xla); } 3819 } 3820 3821 private boolean jj_2_4(int xla) 3822 { 3823 jj_la = xla; jj_lastpos = jj_scanpos = token; 3824 try { return !jj_3_4(); } 3825 catch(LookaheadSuccess ls) { return true; } 3826 finally { jj_save(3, xla); } 3827 } 3828 3829 private boolean jj_2_5(int xla) 3830 { 3831 jj_la = xla; jj_lastpos = jj_scanpos = token; 3832 try { return !jj_3_5(); } 3833 catch(LookaheadSuccess ls) { return true; } 3834 finally { jj_save(4, xla); } 3835 } 3836 3837 private boolean jj_2_6(int xla) 3838 { 3839 jj_la = xla; jj_lastpos = jj_scanpos = token; 3840 try { return !jj_3_6(); } 3841 catch(LookaheadSuccess ls) { return true; } 3842 finally { jj_save(5, xla); } 3843 } 3844 3845 private boolean jj_2_7(int xla) 3846 { 3847 jj_la = xla; jj_lastpos = jj_scanpos = token; 3848 try { return !jj_3_7(); } 3849 catch(LookaheadSuccess ls) { return true; } 3850 finally { jj_save(6, xla); } 3851 } 3852 3853 private boolean jj_2_8(int xla) 3854 { 3855 jj_la = xla; jj_lastpos = jj_scanpos = token; 3856 try { return !jj_3_8(); } 3857 catch(LookaheadSuccess ls) { return true; } 3858 finally { jj_save(7, xla); } 3859 } 3860 3861 private boolean jj_2_9(int xla) 3862 { 3863 jj_la = xla; jj_lastpos = jj_scanpos = token; 3864 try { return !jj_3_9(); } 3865 catch(LookaheadSuccess ls) { return true; } 3866 finally { jj_save(8, xla); } 3867 } 3868 3869 private boolean jj_2_10(int xla) 3870 { 3871 jj_la = xla; jj_lastpos = jj_scanpos = token; 3872 try { return !jj_3_10(); } 3873 catch(LookaheadSuccess ls) { return true; } 3874 finally { jj_save(9, xla); } 3875 } 3876 3877 private boolean jj_2_11(int xla) 3878 { 3879 jj_la = xla; jj_lastpos = jj_scanpos = token; 3880 try { return !jj_3_11(); } 3881 catch(LookaheadSuccess ls) { return true; } 3882 finally { jj_save(10, xla); } 3883 } 3884 3885 private boolean jj_2_12(int xla) 3886 { 3887 jj_la = xla; jj_lastpos = jj_scanpos = token; 3888 try { return !jj_3_12(); } 3889 catch(LookaheadSuccess ls) { return true; } 3890 finally { jj_save(11, xla); } 3891 } 3892 3893 private boolean jj_2_13(int xla) 3894 { 3895 jj_la = xla; jj_lastpos = jj_scanpos = token; 3896 try { return !jj_3_13(); } 3897 catch(LookaheadSuccess ls) { return true; } 3898 finally { jj_save(12, xla); } 3899 } 3900 3901 private boolean jj_2_14(int xla) 3902 { 3903 jj_la = xla; jj_lastpos = jj_scanpos = token; 3904 try { return !jj_3_14(); } 3905 catch(LookaheadSuccess ls) { return true; } 3906 finally { jj_save(13, xla); } 3907 } 3908 3909 private boolean jj_2_15(int xla) 3910 { 3911 jj_la = xla; jj_lastpos = jj_scanpos = token; 3912 try { return !jj_3_15(); } 3913 catch(LookaheadSuccess ls) { return true; } 3914 finally { jj_save(14, xla); } 3915 } 3916 3917 private boolean jj_2_16(int xla) 3918 { 3919 jj_la = xla; jj_lastpos = jj_scanpos = token; 3920 try { return !jj_3_16(); } 3921 catch(LookaheadSuccess ls) { return true; } 3922 finally { jj_save(15, xla); } 3923 } 3924 3925 private boolean jj_2_17(int xla) 3926 { 3927 jj_la = xla; jj_lastpos = jj_scanpos = token; 3928 try { return !jj_3_17(); } 3929 catch(LookaheadSuccess ls) { return true; } 3930 finally { jj_save(16, xla); } 3931 } 3932 3933 private boolean jj_2_18(int xla) 3934 { 3935 jj_la = xla; jj_lastpos = jj_scanpos = token; 3936 try { return !jj_3_18(); } 3937 catch(LookaheadSuccess ls) { return true; } 3938 finally { jj_save(17, xla); } 3939 } 3940 3941 private boolean jj_2_19(int xla) 3942 { 3943 jj_la = xla; jj_lastpos = jj_scanpos = token; 3944 try { return !jj_3_19(); } 3945 catch(LookaheadSuccess ls) { return true; } 3946 finally { jj_save(18, xla); } 3947 } 3948 3949 private boolean jj_2_20(int xla) 3950 { 3951 jj_la = xla; jj_lastpos = jj_scanpos = token; 3952 try { return !jj_3_20(); } 3953 catch(LookaheadSuccess ls) { return true; } 3954 finally { jj_save(19, xla); } 3955 } 3956 3957 private boolean jj_2_21(int xla) 3958 { 3959 jj_la = xla; jj_lastpos = jj_scanpos = token; 3960 try { return !jj_3_21(); } 3961 catch(LookaheadSuccess ls) { return true; } 3962 finally { jj_save(20, xla); } 3963 } 3964 3965 private boolean jj_2_22(int xla) 3966 { 3967 jj_la = xla; jj_lastpos = jj_scanpos = token; 3968 try { return !jj_3_22(); } 3969 catch(LookaheadSuccess ls) { return true; } 3970 finally { jj_save(21, xla); } 3971 } 3972 3973 private boolean jj_2_23(int xla) 3974 { 3975 jj_la = xla; jj_lastpos = jj_scanpos = token; 3976 try { return !jj_3_23(); } 3977 catch(LookaheadSuccess ls) { return true; } 3978 finally { jj_save(22, xla); } 3979 } 3980 3981 private boolean jj_2_24(int xla) 3982 { 3983 jj_la = xla; jj_lastpos = jj_scanpos = token; 3984 try { return !jj_3_24(); } 3985 catch(LookaheadSuccess ls) { return true; } 3986 finally { jj_save(23, xla); } 3987 } 3988 3989 private boolean jj_2_25(int xla) 3990 { 3991 jj_la = xla; jj_lastpos = jj_scanpos = token; 3992 try { return !jj_3_25(); } 3993 catch(LookaheadSuccess ls) { return true; } 3994 finally { jj_save(24, xla); } 3995 } 3996 3997 private boolean jj_2_26(int xla) 3998 { 3999 jj_la = xla; jj_lastpos = jj_scanpos = token; 4000 try { return !jj_3_26(); } 4001 catch(LookaheadSuccess ls) { return true; } 4002 finally { jj_save(25, xla); } 4003 } 4004 4005 private boolean jj_2_27(int xla) 4006 { 4007 jj_la = xla; jj_lastpos = jj_scanpos = token; 4008 try { return !jj_3_27(); } 4009 catch(LookaheadSuccess ls) { return true; } 4010 finally { jj_save(26, xla); } 4011 } 4012 4013 private boolean jj_2_28(int xla) 4014 { 4015 jj_la = xla; jj_lastpos = jj_scanpos = token; 4016 try { return !jj_3_28(); } 4017 catch(LookaheadSuccess ls) { return true; } 4018 finally { jj_save(27, xla); } 4019 } 4020 4021 private boolean jj_2_29(int xla) 4022 { 4023 jj_la = xla; jj_lastpos = jj_scanpos = token; 4024 try { return !jj_3_29(); } 4025 catch(LookaheadSuccess ls) { return true; } 4026 finally { jj_save(28, xla); } 4027 } 4028 4029 private boolean jj_2_30(int xla) 4030 { 4031 jj_la = xla; jj_lastpos = jj_scanpos = token; 4032 try { return !jj_3_30(); } 4033 catch(LookaheadSuccess ls) { return true; } 4034 finally { jj_save(29, xla); } 4035 } 4036 4037 private boolean jj_3R_44() 4038 { 4039 if (jj_scan_token(80)) return true; 4040 if (jj_3R_82()) return true; 4041 return false; 4042 } 4043 4044 private boolean jj_3R_43() 4045 { 4046 if (jj_3R_82()) return true; 4047 return false; 4048 } 4049 4050 private boolean jj_3_9() 4051 { 4052 Token xsp; 4053 xsp = jj_scanpos; 4054 if (jj_3R_43()) { 4055 jj_scanpos = xsp; 4056 if (jj_3R_44()) return true; 4057 } 4058 return false; 4059 } 4060 4061 private boolean jj_3R_42() 4062 { 4063 if (jj_scan_token(80)) return true; 4064 if (jj_scan_token(IDENTIFIER)) return true; 4065 return false; 4066 } 4067 4068 private boolean jj_3R_142() 4069 { 4070 if (jj_3R_74()) return true; 4071 return false; 4072 } 4073 4074 private boolean jj_3R_41() 4075 { 4076 if (jj_scan_token(IDENTIFIER)) return true; 4077 if (jj_scan_token(IN)) return true; 4078 return false; 4079 } 4080 4081 private boolean jj_3_8() 4082 { 4083 Token xsp; 4084 xsp = jj_scanpos; 4085 if (jj_3R_41()) { 4086 jj_scanpos = xsp; 4087 if (jj_3R_42()) return true; 4088 } 4089 return false; 4090 } 4091 4092 private boolean jj_3R_108() 4093 { 4094 if (jj_scan_token(COLL_START)) return true; 4095 Token xsp; 4096 xsp = jj_scanpos; 4097 if (jj_3R_141()) jj_scanpos = xsp; 4098 xsp = jj_scanpos; 4099 if (jj_3R_142()) jj_scanpos = xsp; 4100 if (jj_scan_token(86)) return true; 4101 return false; 4102 } 4103 4104 private boolean jj_3R_148() 4105 { 4106 if (jj_scan_token(FOREACH)) return true; 4107 return false; 4108 } 4109 4110 private boolean jj_3R_137() 4111 { 4112 if (jj_3R_171()) return true; 4113 return false; 4114 } 4115 4116 private boolean jj_3_7() 4117 { 4118 if (jj_3R_40()) return true; 4119 return false; 4120 } 4121 4122 private boolean jj_3R_147() 4123 { 4124 if (jj_scan_token(FOR)) return true; 4125 return false; 4126 } 4127 4128 private boolean jj_3R_136() 4129 { 4130 if (jj_scan_token(FALSE)) return true; 4131 return false; 4132 } 4133 4134 private boolean jj_3R_146() 4135 { 4136 if (jj_scan_token(WHILE)) return true; 4137 return false; 4138 } 4139 4140 private boolean jj_3R_135() 4141 { 4142 if (jj_scan_token(TRUE)) return true; 4143 return false; 4144 } 4145 4146 private boolean jj_3R_149() 4147 { 4148 if (jj_scan_token(THROW)) return true; 4149 return false; 4150 } 4151 4152 private boolean jj_3R_134() 4153 { 4154 if (jj_scan_token(NULL)) return true; 4155 return false; 4156 } 4157 4158 private boolean jj_3R_174() 4159 { 4160 if (jj_scan_token(DOCUMENTATION)) return true; 4161 return false; 4162 } 4163 4164 private boolean jj_3R_153() 4165 { 4166 if (jj_scan_token(BREAK)) return true; 4167 return false; 4168 } 4169 4170 private boolean jj_3R_133() 4171 { 4172 if (jj_3R_170()) return true; 4173 return false; 4174 } 4175 4176 private boolean jj_3R_152() 4177 { 4178 if (jj_scan_token(CONTINUE)) return true; 4179 return false; 4180 } 4181 4182 private boolean jj_3R_132() 4183 { 4184 if (jj_3R_169()) return true; 4185 return false; 4186 } 4187 4188 private boolean jj_3R_121() 4189 { 4190 if (jj_3R_153()) return true; 4191 return false; 4192 } 4193 4194 private boolean jj_3R_131() 4195 { 4196 if (jj_3R_168()) return true; 4197 return false; 4198 } 4199 4200 private boolean jj_3R_120() 4201 { 4202 if (jj_3R_152()) return true; 4203 return false; 4204 } 4205 4206 private boolean jj_3R_119() 4207 { 4208 if (jj_3R_151()) return true; 4209 return false; 4210 } 4211 4212 private boolean jj_3R_130() 4213 { 4214 if (jj_3R_167()) return true; 4215 return false; 4216 } 4217 4218 private boolean jj_3R_118() 4219 { 4220 if (jj_3R_150()) return true; 4221 return false; 4222 } 4223 4224 private boolean jj_3R_117() 4225 { 4226 if (jj_3R_149()) return true; 4227 return false; 4228 } 4229 4230 private boolean jj_3R_116() 4231 { 4232 if (jj_3R_148()) return true; 4233 return false; 4234 } 4235 4236 private boolean jj_3R_129() 4237 { 4238 if (jj_3R_166()) return true; 4239 return false; 4240 } 4241 4242 private boolean jj_3R_115() 4243 { 4244 if (jj_3R_147()) return true; 4245 return false; 4246 } 4247 4248 private boolean jj_3R_114() 4249 { 4250 if (jj_3R_146()) return true; 4251 return false; 4252 } 4253 4254 private boolean jj_3R_128() 4255 { 4256 if (jj_3R_165()) return true; 4257 return false; 4258 } 4259 4260 private boolean jj_3R_113() 4261 { 4262 if (jj_3R_145()) return true; 4263 return false; 4264 } 4265 4266 private boolean jj_3R_112() 4267 { 4268 if (jj_3R_144()) return true; 4269 return false; 4270 } 4271 4272 private boolean jj_3R_111() 4273 { 4274 if (jj_3R_74()) return true; 4275 return false; 4276 } 4277 4278 private boolean jj_3R_127() 4279 { 4280 if (jj_3R_164()) return true; 4281 return false; 4282 } 4283 4284 private boolean jj_3R_171() 4285 { 4286 if (jj_scan_token(FUNREF)) return true; 4287 return false; 4288 } 4289 4290 private boolean jj_3_6() 4291 { 4292 if (jj_3R_39()) return true; 4293 return false; 4294 } 4295 4296 private boolean jj_3_5() 4297 { 4298 if (jj_3R_38()) return true; 4299 return false; 4300 } 4301 4302 private boolean jj_3R_126() 4303 { 4304 if (jj_3R_163()) return true; 4305 return false; 4306 } 4307 4308 private boolean jj_3_4() 4309 { 4310 if (jj_3R_37()) return true; 4311 return false; 4312 } 4313 4314 private boolean jj_3R_98() 4315 { 4316 Token xsp; 4317 xsp = jj_scanpos; 4318 if (jj_3R_110()) { 4319 jj_scanpos = xsp; 4320 if (jj_3_4()) { 4321 jj_scanpos = xsp; 4322 if (jj_3_5()) { 4323 jj_scanpos = xsp; 4324 if (jj_3_6()) { 4325 jj_scanpos = xsp; 4326 if (jj_3R_111()) { 4327 jj_scanpos = xsp; 4328 if (jj_3R_112()) { 4329 jj_scanpos = xsp; 4330 if (jj_3R_113()) { 4331 jj_scanpos = xsp; 4332 if (jj_3R_114()) { 4333 jj_scanpos = xsp; 4334 if (jj_3R_115()) { 4335 jj_scanpos = xsp; 4336 if (jj_3R_116()) { 4337 jj_scanpos = xsp; 4338 if (jj_3R_117()) { 4339 jj_scanpos = xsp; 4340 if (jj_3R_118()) { 4341 jj_scanpos = xsp; 4342 if (jj_3R_119()) { 4343 jj_scanpos = xsp; 4344 if (jj_3R_120()) { 4345 jj_scanpos = xsp; 4346 if (jj_3R_121()) return true; 4347 } 4348 } 4349 } 4350 } 4351 } 4352 } 4353 } 4354 } 4355 } 4356 } 4357 } 4358 } 4359 } 4360 } 4361 return false; 4362 } 4363 4364 private boolean jj_3R_110() 4365 { 4366 if (jj_3R_34()) return true; 4367 return false; 4368 } 4369 4370 private boolean jj_3R_125() 4371 { 4372 if (jj_3R_162()) return true; 4373 return false; 4374 } 4375 4376 private boolean jj_3R_106() 4377 { 4378 Token xsp; 4379 xsp = jj_scanpos; 4380 if (jj_3R_125()) { 4381 jj_scanpos = xsp; 4382 if (jj_3R_126()) { 4383 jj_scanpos = xsp; 4384 if (jj_3R_127()) { 4385 jj_scanpos = xsp; 4386 if (jj_3R_128()) { 4387 jj_scanpos = xsp; 4388 if (jj_3R_129()) { 4389 jj_scanpos = xsp; 4390 if (jj_3R_130()) { 4391 jj_scanpos = xsp; 4392 if (jj_3R_131()) { 4393 jj_scanpos = xsp; 4394 if (jj_3R_132()) { 4395 jj_scanpos = xsp; 4396 if (jj_3R_133()) { 4397 jj_scanpos = xsp; 4398 if (jj_3R_134()) { 4399 jj_scanpos = xsp; 4400 if (jj_3R_135()) { 4401 jj_scanpos = xsp; 4402 if (jj_3R_136()) { 4403 jj_scanpos = xsp; 4404 if (jj_3R_137()) return true; 4405 } 4406 } 4407 } 4408 } 4409 } 4410 } 4411 } 4412 } 4413 } 4414 } 4415 } 4416 } 4417 return false; 4418 } 4419 4420 private boolean jj_3R_165() 4421 { 4422 if (jj_scan_token(BIGDECIMAL)) return true; 4423 return false; 4424 } 4425 4426 private boolean jj_3_3() 4427 { 4428 if (jj_3R_36()) return true; 4429 return false; 4430 } 4431 4432 private boolean jj_3_2() 4433 { 4434 if (jj_3R_35()) return true; 4435 return false; 4436 } 4437 4438 private boolean jj_3R_173() 4439 { 4440 if (jj_3R_34()) return true; 4441 return false; 4442 } 4443 4444 private boolean jj_3R_175() 4445 { 4446 if (jj_scan_token(DECORATOR)) return true; 4447 Token xsp; 4448 xsp = jj_scanpos; 4449 if (jj_scan_token(43)) jj_scanpos = xsp; 4450 xsp = jj_scanpos; 4451 if (jj_3_2()) { 4452 jj_scanpos = xsp; 4453 if (jj_3_3()) return true; 4454 } 4455 if (jj_3R_72()) return true; 4456 return false; 4457 } 4458 4459 private boolean jj_3R_167() 4460 { 4461 if (jj_scan_token(FLOAT)) return true; 4462 return false; 4463 } 4464 4465 private boolean jj_3R_140() 4466 { 4467 if (jj_scan_token(84)) return true; 4468 Token xsp; 4469 xsp = jj_scanpos; 4470 if (jj_3R_173()) jj_scanpos = xsp; 4471 if (jj_3R_74()) return true; 4472 return false; 4473 } 4474 4475 private boolean jj_3R_139() 4476 { 4477 if (jj_3R_40()) return true; 4478 return false; 4479 } 4480 4481 private boolean jj_3R_138() 4482 { 4483 if (jj_scan_token(83)) return true; 4484 if (jj_3R_172()) return true; 4485 return false; 4486 } 4487 4488 private boolean jj_3R_107() 4489 { 4490 Token xsp; 4491 xsp = jj_scanpos; 4492 if (jj_3R_138()) jj_scanpos = xsp; 4493 xsp = jj_scanpos; 4494 if (jj_3R_139()) { 4495 jj_scanpos = xsp; 4496 if (jj_3R_140()) return true; 4497 } 4498 return false; 4499 } 4500 4501 private boolean jj_3R_168() 4502 { 4503 if (jj_scan_token(FLOATING_NUMBER)) return true; 4504 return false; 4505 } 4506 4507 private boolean jj_3R_184() 4508 { 4509 if (jj_scan_token(MACRO)) return true; 4510 return false; 4511 } 4512 4513 private boolean jj_3R_176() 4514 { 4515 Token xsp; 4516 xsp = jj_scanpos; 4517 if (jj_scan_token(9)) { 4518 jj_scanpos = xsp; 4519 if (jj_3R_184()) return true; 4520 } 4521 if (jj_scan_token(IDENTIFIER)) return true; 4522 if (jj_scan_token(78)) return true; 4523 return false; 4524 } 4525 4526 private boolean jj_3R_187() 4527 { 4528 if (jj_3R_40()) return true; 4529 return false; 4530 } 4531 4532 private boolean jj_3R_162() 4533 { 4534 if (jj_scan_token(CLASSREF)) return true; 4535 return false; 4536 } 4537 4538 private boolean jj_3R_89() 4539 { 4540 if (jj_3R_103()) return true; 4541 if (jj_3R_72()) return true; 4542 return false; 4543 } 4544 4545 private boolean jj_3R_88() 4546 { 4547 if (jj_3R_102()) return true; 4548 if (jj_3R_72()) return true; 4549 return false; 4550 } 4551 4552 private boolean jj_3R_73() 4553 { 4554 Token xsp; 4555 xsp = jj_scanpos; 4556 if (jj_3R_88()) { 4557 jj_scanpos = xsp; 4558 if (jj_3R_89()) return true; 4559 } 4560 return false; 4561 } 4562 4563 private boolean jj_3R_186() 4564 { 4565 if (jj_scan_token(WITH)) return true; 4566 return false; 4567 } 4568 4569 private boolean jj_3R_185() 4570 { 4571 if (jj_3R_188()) return true; 4572 return false; 4573 } 4574 4575 private boolean jj_3R_69() 4576 { 4577 if (jj_3R_34()) return true; 4578 return false; 4579 } 4580 4581 private boolean jj_3R_170() 4582 { 4583 if (jj_scan_token(NUMBER)) return true; 4584 return false; 4585 } 4586 4587 private boolean jj_3R_181() 4588 { 4589 Token xsp; 4590 xsp = jj_scanpos; 4591 if (jj_3_26()) { 4592 jj_scanpos = xsp; 4593 if (jj_3R_187()) return true; 4594 } 4595 return false; 4596 } 4597 4598 private boolean jj_3R_179() 4599 { 4600 if (jj_scan_token(AUGMENT)) return true; 4601 if (jj_3R_84()) return true; 4602 Token xsp; 4603 xsp = jj_scanpos; 4604 if (jj_3R_185()) { 4605 jj_scanpos = xsp; 4606 if (jj_3R_186()) return true; 4607 } 4608 return false; 4609 } 4610 4611 private boolean jj_3_26() 4612 { 4613 if (jj_scan_token(79)) return true; 4614 if (jj_3R_72()) return true; 4615 Token xsp; 4616 if (jj_3R_73()) return true; 4617 while (true) { 4618 xsp = jj_scanpos; 4619 if (jj_3R_73()) { jj_scanpos = xsp; break; } 4620 } 4621 if (jj_3R_72()) return true; 4622 if (jj_scan_token(77)) return true; 4623 return false; 4624 } 4625 4626 private boolean jj_3_25() 4627 { 4628 if (jj_3R_71()) return true; 4629 return false; 4630 } 4631 4632 private boolean jj_3R_104() 4633 { 4634 if (jj_scan_token(MACRO_INVOCATION)) return true; 4635 if (jj_3R_84()) return true; 4636 Token xsp; 4637 xsp = jj_scanpos; 4638 if (jj_3_25()) jj_scanpos = xsp; 4639 xsp = jj_scanpos; 4640 if (jj_3R_181()) jj_scanpos = xsp; 4641 return false; 4642 } 4643 4644 private boolean jj_3R_166() 4645 { 4646 if (jj_scan_token(BIGINTEGER)) return true; 4647 return false; 4648 } 4649 4650 private boolean jj_3R_180() 4651 { 4652 if (jj_scan_token(NAMEDAUGMENTATION)) return true; 4653 if (jj_scan_token(IDENTIFIER)) return true; 4654 if (jj_scan_token(78)) return true; 4655 return false; 4656 } 4657 4658 private boolean jj_3R_66() 4659 { 4660 if (jj_3R_34()) return true; 4661 return false; 4662 } 4663 4664 private boolean jj_3R_81() 4665 { 4666 if (jj_3R_98()) return true; 4667 return false; 4668 } 4669 4670 private boolean jj_3R_169() 4671 { 4672 if (jj_scan_token(LONG_NUMBER)) return true; 4673 return false; 4674 } 4675 4676 private boolean jj_3R_40() 4677 { 4678 if (jj_scan_token(79)) return true; 4679 Token xsp; 4680 while (true) { 4681 xsp = jj_scanpos; 4682 if (jj_3R_81()) { jj_scanpos = xsp; break; } 4683 } 4684 if (jj_scan_token(77)) return true; 4685 return false; 4686 } 4687 4688 private boolean jj_3R_63() 4689 { 4690 if (jj_3R_34()) return true; 4691 return false; 4692 } 4693 4694 private boolean jj_3R_68() 4695 { 4696 if (jj_3R_34()) return true; 4697 return false; 4698 } 4699 4700 private boolean jj_3_24() 4701 { 4702 if (jj_3R_50()) return true; 4703 return false; 4704 } 4705 4706 private boolean jj_3R_164() 4707 { 4708 if (jj_scan_token(CHAR)) return true; 4709 return false; 4710 } 4711 4712 private boolean jj_3R_60() 4713 { 4714 if (jj_3R_34()) return true; 4715 return false; 4716 } 4717 4718 private boolean jj_3R_49() 4719 { 4720 if (jj_scan_token(IDENTIFIER)) return true; 4721 return false; 4722 } 4723 4724 private boolean jj_3R_188() 4725 { 4726 if (jj_scan_token(79)) return true; 4727 return false; 4728 } 4729 4730 private boolean jj_3_23() 4731 { 4732 Token xsp; 4733 xsp = jj_scanpos; 4734 if (jj_3R_68()) jj_scanpos = xsp; 4735 if (jj_scan_token(OR_IFNULL_OPERATOR)) return true; 4736 xsp = jj_scanpos; 4737 if (jj_3R_69()) jj_scanpos = xsp; 4738 if (jj_3R_70()) return true; 4739 return false; 4740 } 4741 4742 private boolean jj_3R_183() 4743 { 4744 if (jj_scan_token(MULTI_STRING)) return true; 4745 return false; 4746 } 4747 4748 private boolean jj_3R_65() 4749 { 4750 if (jj_3R_34()) return true; 4751 return false; 4752 } 4753 4754 private boolean jj_3R_57() 4755 { 4756 if (jj_3R_34()) return true; 4757 return false; 4758 } 4759 4760 private boolean jj_3R_90() 4761 { 4762 if (jj_3R_70()) return true; 4763 Token xsp; 4764 while (true) { 4765 xsp = jj_scanpos; 4766 if (jj_3_23()) { jj_scanpos = xsp; break; } 4767 } 4768 return false; 4769 } 4770 4771 private boolean jj_3R_105() 4772 { 4773 if (jj_scan_token(MATCH)) return true; 4774 if (jj_scan_token(79)) return true; 4775 return false; 4776 } 4777 4778 private boolean jj_3R_182() 4779 { 4780 if (jj_scan_token(STRING)) return true; 4781 return false; 4782 } 4783 4784 private boolean jj_3R_163() 4785 { 4786 Token xsp; 4787 xsp = jj_scanpos; 4788 if (jj_3R_182()) { 4789 jj_scanpos = xsp; 4790 if (jj_3R_183()) return true; 4791 } 4792 return false; 4793 } 4794 4795 private boolean jj_3R_178() 4796 { 4797 if (jj_scan_token(UNION)) return true; 4798 if (jj_scan_token(IDENTIFIER)) return true; 4799 if (jj_scan_token(78)) return true; 4800 return false; 4801 } 4802 4803 private boolean jj_3_30() 4804 { 4805 if (jj_scan_token(ELSE)) return true; 4806 return false; 4807 } 4808 4809 private boolean jj_3R_151() 4810 { 4811 if (jj_scan_token(CASE)) return true; 4812 return false; 4813 } 4814 4815 private boolean jj_3_22() 4816 { 4817 Token xsp; 4818 xsp = jj_scanpos; 4819 if (jj_3R_65()) jj_scanpos = xsp; 4820 if (jj_scan_token(OR_OPERATOR)) return true; 4821 xsp = jj_scanpos; 4822 if (jj_3R_66()) jj_scanpos = xsp; 4823 if (jj_3R_67()) return true; 4824 return false; 4825 } 4826 4827 private boolean jj_3R_62() 4828 { 4829 if (jj_3R_34()) return true; 4830 return false; 4831 } 4832 4833 private boolean jj_3R_54() 4834 { 4835 if (jj_3R_34()) return true; 4836 return false; 4837 } 4838 4839 private boolean jj_3R_70() 4840 { 4841 if (jj_3R_67()) return true; 4842 Token xsp; 4843 while (true) { 4844 xsp = jj_scanpos; 4845 if (jj_3_22()) { jj_scanpos = xsp; break; } 4846 } 4847 return false; 4848 } 4849 4850 private boolean jj_3R_52() 4851 { 4852 if (jj_3R_34()) return true; 4853 return false; 4854 } 4855 4856 private boolean jj_3R_145() 4857 { 4858 if (jj_scan_token(IF)) return true; 4859 return false; 4860 } 4861 4862 private boolean jj_3R_59() 4863 { 4864 if (jj_3R_34()) return true; 4865 return false; 4866 } 4867 4868 private boolean jj_3_21() 4869 { 4870 Token xsp; 4871 xsp = jj_scanpos; 4872 if (jj_3R_62()) jj_scanpos = xsp; 4873 if (jj_scan_token(AND_OPERATOR)) return true; 4874 xsp = jj_scanpos; 4875 if (jj_3R_63()) jj_scanpos = xsp; 4876 if (jj_3R_64()) return true; 4877 return false; 4878 } 4879 4880 private boolean jj_3R_67() 4881 { 4882 if (jj_3R_64()) return true; 4883 Token xsp; 4884 while (true) { 4885 xsp = jj_scanpos; 4886 if (jj_3_21()) { jj_scanpos = xsp; break; } 4887 } 4888 return false; 4889 } 4890 4891 private boolean jj_3_29() 4892 { 4893 if (jj_3R_50()) return true; 4894 return false; 4895 } 4896 4897 private boolean jj_3R_46() 4898 { 4899 if (jj_3R_84()) return true; 4900 Token xsp; 4901 xsp = jj_scanpos; 4902 if (jj_scan_token(43)) jj_scanpos = xsp; 4903 if (jj_3R_71()) return true; 4904 return false; 4905 } 4906 4907 private boolean jj_3R_87() 4908 { 4909 if (jj_3R_101()) return true; 4910 return false; 4911 } 4912 4913 private boolean jj_3R_56() 4914 { 4915 if (jj_3R_34()) return true; 4916 return false; 4917 } 4918 4919 private boolean jj_3_20() 4920 { 4921 Token xsp; 4922 xsp = jj_scanpos; 4923 if (jj_3R_59()) jj_scanpos = xsp; 4924 if (jj_scan_token(EQUALITY_OPERATOR)) return true; 4925 xsp = jj_scanpos; 4926 if (jj_3R_60()) jj_scanpos = xsp; 4927 if (jj_3R_61()) return true; 4928 return false; 4929 } 4930 4931 private boolean jj_3R_64() 4932 { 4933 if (jj_3R_61()) return true; 4934 Token xsp; 4935 xsp = jj_scanpos; 4936 if (jj_3_20()) jj_scanpos = xsp; 4937 return false; 4938 } 4939 4940 private boolean jj_3R_48() 4941 { 4942 if (jj_3R_34()) return true; 4943 return false; 4944 } 4945 4946 private boolean jj_3R_172() 4947 { 4948 if (jj_scan_token(IDENTIFIER)) return true; 4949 return false; 4950 } 4951 4952 private boolean jj_3R_177() 4953 { 4954 if (jj_scan_token(STRUCT)) return true; 4955 if (jj_scan_token(IDENTIFIER)) return true; 4956 if (jj_scan_token(78)) return true; 4957 return false; 4958 } 4959 4960 private boolean jj_3R_50() 4961 { 4962 Token xsp; 4963 xsp = jj_scanpos; 4964 if (jj_scan_token(43)) jj_scanpos = xsp; 4965 if (jj_3R_71()) return true; 4966 return false; 4967 } 4968 4969 private boolean jj_3R_53() 4970 { 4971 if (jj_3R_34()) return true; 4972 return false; 4973 } 4974 4975 private boolean jj_3_19() 4976 { 4977 Token xsp; 4978 xsp = jj_scanpos; 4979 if (jj_3R_56()) jj_scanpos = xsp; 4980 if (jj_scan_token(RELATIONAL_OPERATOR)) return true; 4981 xsp = jj_scanpos; 4982 if (jj_3R_57()) jj_scanpos = xsp; 4983 if (jj_3R_58()) return true; 4984 return false; 4985 } 4986 4987 private boolean jj_3R_86() 4988 { 4989 if (jj_3R_34()) return true; 4990 return false; 4991 } 4992 4993 private boolean jj_3R_61() 4994 { 4995 if (jj_3R_58()) return true; 4996 Token xsp; 4997 xsp = jj_scanpos; 4998 if (jj_3_19()) jj_scanpos = xsp; 4999 return false; 5000 } 5001 5002 private boolean jj_3R_71() 5003 { 5004 if (jj_scan_token(80)) return true; 5005 Token xsp; 5006 xsp = jj_scanpos; 5007 if (jj_3R_86()) jj_scanpos = xsp; 5008 xsp = jj_scanpos; 5009 if (jj_3R_87()) jj_scanpos = xsp; 5010 if (jj_scan_token(81)) return true; 5011 return false; 5012 } 5013 5014 private boolean jj_3R_83() 5015 { 5016 if (jj_3R_34()) return true; 5017 return false; 5018 } 5019 5020 private boolean jj_3R_100() 5021 { 5022 if (jj_scan_token(74)) return true; 5023 return false; 5024 } 5025 5026 private boolean jj_3R_51() 5027 { 5028 if (jj_3R_34()) return true; 5029 return false; 5030 } 5031 5032 private boolean jj_3_18() 5033 { 5034 Token xsp; 5035 xsp = jj_scanpos; 5036 if (jj_3R_53()) jj_scanpos = xsp; 5037 if (jj_scan_token(ADDITIVE_OPERATOR)) return true; 5038 xsp = jj_scanpos; 5039 if (jj_3R_54()) jj_scanpos = xsp; 5040 if (jj_3R_55()) return true; 5041 return false; 5042 } 5043 5044 private boolean jj_3_27() 5045 { 5046 if (jj_3R_72()) return true; 5047 if (jj_3R_74()) return true; 5048 return false; 5049 } 5050 5051 private boolean jj_3_28() 5052 { 5053 if (jj_scan_token(IDENTIFIER)) return true; 5054 if (jj_scan_token(78)) return true; 5055 return false; 5056 } 5057 5058 private boolean jj_3R_84() 5059 { 5060 if (jj_scan_token(IDENTIFIER)) return true; 5061 Token xsp; 5062 while (true) { 5063 xsp = jj_scanpos; 5064 if (jj_3R_100()) { jj_scanpos = xsp; break; } 5065 } 5066 return false; 5067 } 5068 5069 private boolean jj_3R_101() 5070 { 5071 Token xsp; 5072 xsp = jj_scanpos; 5073 if (jj_3_28()) jj_scanpos = xsp; 5074 if (jj_3R_74()) return true; 5075 return false; 5076 } 5077 5078 private boolean jj_3R_58() 5079 { 5080 if (jj_3R_55()) return true; 5081 Token xsp; 5082 while (true) { 5083 xsp = jj_scanpos; 5084 if (jj_3_18()) { jj_scanpos = xsp; break; } 5085 } 5086 return false; 5087 } 5088 5089 private boolean jj_3_1() 5090 { 5091 if (jj_3R_34()) return true; 5092 return false; 5093 } 5094 5095 private boolean jj_3R_124() 5096 { 5097 if (jj_3R_104()) return true; 5098 return false; 5099 } 5100 5101 private boolean jj_3R_144() 5102 { 5103 if (jj_scan_token(RETURN)) return true; 5104 return false; 5105 } 5106 5107 private boolean jj_3R_72() 5108 { 5109 Token xsp; 5110 while (true) { 5111 xsp = jj_scanpos; 5112 if (jj_3_1()) { jj_scanpos = xsp; break; } 5113 } 5114 return false; 5115 } 5116 5117 private boolean jj_3R_161() 5118 { 5119 if (jj_3R_180()) return true; 5120 return false; 5121 } 5122 5123 private boolean jj_3_17() 5124 { 5125 Token xsp; 5126 xsp = jj_scanpos; 5127 if (jj_3R_51()) jj_scanpos = xsp; 5128 if (jj_scan_token(MULTIPLICATIVE_OPERATOR)) return true; 5129 xsp = jj_scanpos; 5130 if (jj_3R_52()) jj_scanpos = xsp; 5131 if (jj_3R_35()) return true; 5132 return false; 5133 } 5134 5135 private boolean jj_3R_34() 5136 { 5137 Token xsp; 5138 xsp = jj_scanpos; 5139 if (jj_scan_token(5)) { 5140 jj_scanpos = xsp; 5141 if (jj_scan_token(69)) return true; 5142 } 5143 return false; 5144 } 5145 5146 private boolean jj_3R_55() 5147 { 5148 if (jj_3R_85()) return true; 5149 Token xsp; 5150 while (true) { 5151 xsp = jj_scanpos; 5152 if (jj_3_17()) { jj_scanpos = xsp; break; } 5153 } 5154 return false; 5155 } 5156 5157 private boolean jj_3R_160() 5158 { 5159 if (jj_3R_179()) return true; 5160 return false; 5161 } 5162 5163 private boolean jj_3R_37() 5164 { 5165 if (jj_scan_token(IDENTIFIER)) return true; 5166 if (jj_scan_token(78)) return true; 5167 Token xsp; 5168 xsp = jj_scanpos; 5169 if (jj_3R_83()) jj_scanpos = xsp; 5170 if (jj_3R_74()) return true; 5171 return false; 5172 } 5173 5174 private boolean jj_3R_47() 5175 { 5176 if (jj_3R_34()) return true; 5177 return false; 5178 } 5179 5180 private boolean jj_3R_122() 5181 { 5182 if (jj_3R_154()) return true; 5183 return false; 5184 } 5185 5186 private boolean jj_3R_159() 5187 { 5188 if (jj_3R_178()) return true; 5189 return false; 5190 } 5191 5192 private boolean jj_3_16() 5193 { 5194 if (jj_3R_50()) return true; 5195 return false; 5196 } 5197 5198 private boolean jj_3R_158() 5199 { 5200 if (jj_3R_177()) return true; 5201 return false; 5202 } 5203 5204 private boolean jj_3R_80() 5205 { 5206 if (jj_scan_token(VAR)) return true; 5207 if (jj_scan_token(IDENTIFIER)) return true; 5208 return false; 5209 } 5210 5211 private boolean jj_3R_91() 5212 { 5213 if (jj_3R_34()) return true; 5214 return false; 5215 } 5216 5217 private boolean jj_3_15() 5218 { 5219 Token xsp; 5220 xsp = jj_scanpos; 5221 if (jj_3R_47()) jj_scanpos = xsp; 5222 if (jj_scan_token(INVOCATION_OPERATOR)) return true; 5223 xsp = jj_scanpos; 5224 if (jj_3R_48()) jj_scanpos = xsp; 5225 if (jj_3R_49()) return true; 5226 return false; 5227 } 5228 5229 private boolean jj_3R_157() 5230 { 5231 Token xsp; 5232 xsp = jj_scanpos; 5233 if (jj_scan_token(10)) jj_scanpos = xsp; 5234 if (jj_3R_176()) return true; 5235 return false; 5236 } 5237 5238 private boolean jj_3R_35() 5239 { 5240 if (jj_3R_75()) return true; 5241 Token xsp; 5242 while (true) { 5243 xsp = jj_scanpos; 5244 if (jj_3_15()) { jj_scanpos = xsp; break; } 5245 } 5246 while (true) { 5247 xsp = jj_scanpos; 5248 if (jj_3_16()) { jj_scanpos = xsp; break; } 5249 } 5250 return false; 5251 } 5252 5253 private boolean jj_3R_156() 5254 { 5255 if (jj_3R_175()) return true; 5256 return false; 5257 } 5258 5259 private boolean jj_3R_39() 5260 { 5261 Token xsp; 5262 xsp = jj_scanpos; 5263 if (jj_3R_79()) { 5264 jj_scanpos = xsp; 5265 if (jj_3R_80()) return true; 5266 } 5267 return false; 5268 } 5269 5270 private boolean jj_3R_79() 5271 { 5272 if (jj_scan_token(LET)) return true; 5273 if (jj_scan_token(IDENTIFIER)) return true; 5274 return false; 5275 } 5276 5277 private boolean jj_3R_155() 5278 { 5279 if (jj_3R_174()) return true; 5280 return false; 5281 } 5282 5283 private boolean jj_3R_103() 5284 { 5285 Token xsp; 5286 xsp = jj_scanpos; 5287 if (jj_3R_123()) { 5288 jj_scanpos = xsp; 5289 if (jj_3R_124()) return true; 5290 } 5291 return false; 5292 } 5293 5294 private boolean jj_3R_123() 5295 { 5296 Token xsp; 5297 xsp = jj_scanpos; 5298 if (jj_3R_155()) jj_scanpos = xsp; 5299 while (true) { 5300 xsp = jj_scanpos; 5301 if (jj_3R_156()) { jj_scanpos = xsp; break; } 5302 } 5303 xsp = jj_scanpos; 5304 if (jj_3R_157()) { 5305 jj_scanpos = xsp; 5306 if (jj_3R_158()) { 5307 jj_scanpos = xsp; 5308 if (jj_3R_159()) { 5309 jj_scanpos = xsp; 5310 if (jj_3R_160()) { 5311 jj_scanpos = xsp; 5312 if (jj_3R_161()) return true; 5313 } 5314 } 5315 } 5316 } 5317 return false; 5318 } 5319 5320 private boolean jj_3R_143() 5321 { 5322 if (jj_3R_34()) return true; 5323 return false; 5324 } 5325 5326 private boolean jj_3R_85() 5327 { 5328 Token xsp; 5329 xsp = jj_scanpos; 5330 if (jj_scan_token(41)) jj_scanpos = xsp; 5331 if (jj_3R_35()) return true; 5332 return false; 5333 } 5334 5335 private boolean jj_3R_99() 5336 { 5337 if (jj_scan_token(75)) return true; 5338 Token xsp; 5339 xsp = jj_scanpos; 5340 if (jj_3R_143()) jj_scanpos = xsp; 5341 if (jj_scan_token(IDENTIFIER)) return true; 5342 return false; 5343 } 5344 5345 private boolean jj_3R_109() 5346 { 5347 if (jj_3R_34()) return true; 5348 return false; 5349 } 5350 5351 private boolean jj_3R_97() 5352 { 5353 if (jj_scan_token(80)) return true; 5354 Token xsp; 5355 xsp = jj_scanpos; 5356 if (jj_3R_109()) jj_scanpos = xsp; 5357 if (jj_3R_74()) return true; 5358 return false; 5359 } 5360 5361 private boolean jj_3R_82() 5362 { 5363 if (jj_scan_token(IDENTIFIER)) return true; 5364 Token xsp; 5365 if (jj_3R_99()) return true; 5366 while (true) { 5367 xsp = jj_scanpos; 5368 if (jj_3R_99()) { jj_scanpos = xsp; break; } 5369 } 5370 return false; 5371 } 5372 5373 private boolean jj_3R_96() 5374 { 5375 if (jj_3R_108()) return true; 5376 return false; 5377 } 5378 5379 private boolean jj_3R_95() 5380 { 5381 if (jj_3R_107()) return true; 5382 return false; 5383 } 5384 5385 private boolean jj_3R_94() 5386 { 5387 if (jj_3R_106()) return true; 5388 return false; 5389 } 5390 5391 private boolean jj_3R_93() 5392 { 5393 if (jj_3R_105()) return true; 5394 return false; 5395 } 5396 5397 private boolean jj_3_11() 5398 { 5399 if (jj_3R_45()) return true; 5400 return false; 5401 } 5402 5403 private boolean jj_3R_92() 5404 { 5405 if (jj_3R_104()) return true; 5406 return false; 5407 } 5408 5409 private boolean jj_3_14() 5410 { 5411 if (jj_3R_36()) return true; 5412 return false; 5413 } 5414 5415 private boolean jj_3R_102() 5416 { 5417 if (jj_scan_token(IMPORT)) return true; 5418 Token xsp; 5419 xsp = jj_scanpos; 5420 if (jj_scan_token(74)) jj_scanpos = xsp; 5421 if (jj_3R_84()) return true; 5422 xsp = jj_scanpos; 5423 if (jj_3R_122()) jj_scanpos = xsp; 5424 return false; 5425 } 5426 5427 private boolean jj_3_13() 5428 { 5429 if (jj_3R_46()) return true; 5430 return false; 5431 } 5432 5433 private boolean jj_3R_75() 5434 { 5435 Token xsp; 5436 xsp = jj_scanpos; 5437 if (jj_3_13()) { 5438 jj_scanpos = xsp; 5439 if (jj_3_14()) { 5440 jj_scanpos = xsp; 5441 if (jj_3R_92()) { 5442 jj_scanpos = xsp; 5443 if (jj_3R_93()) { 5444 jj_scanpos = xsp; 5445 if (jj_3R_94()) { 5446 jj_scanpos = xsp; 5447 if (jj_3R_95()) { 5448 jj_scanpos = xsp; 5449 if (jj_3R_96()) { 5450 jj_scanpos = xsp; 5451 if (jj_3R_97()) return true; 5452 } 5453 } 5454 } 5455 } 5456 } 5457 } 5458 } 5459 return false; 5460 } 5461 5462 private boolean jj_3R_78() 5463 { 5464 if (jj_3R_82()) return true; 5465 return false; 5466 } 5467 5468 private boolean jj_3R_77() 5469 { 5470 if (jj_scan_token(VAR)) return true; 5471 if (jj_3R_82()) return true; 5472 return false; 5473 } 5474 5475 private boolean jj_3_12() 5476 { 5477 if (jj_3R_37()) return true; 5478 return false; 5479 } 5480 5481 private boolean jj_3R_45() 5482 { 5483 if (jj_scan_token(WITH)) return true; 5484 if (jj_scan_token(79)) return true; 5485 return false; 5486 } 5487 5488 private boolean jj_3R_74() 5489 { 5490 if (jj_3R_90()) return true; 5491 Token xsp; 5492 xsp = jj_scanpos; 5493 if (jj_3_11()) jj_scanpos = xsp; 5494 xsp = jj_scanpos; 5495 if (jj_3R_91()) jj_scanpos = xsp; 5496 return false; 5497 } 5498 5499 private boolean jj_3R_38() 5500 { 5501 Token xsp; 5502 xsp = jj_scanpos; 5503 if (jj_3R_76()) { 5504 jj_scanpos = xsp; 5505 if (jj_3R_77()) { 5506 jj_scanpos = xsp; 5507 if (jj_3R_78()) return true; 5508 } 5509 } 5510 return false; 5511 } 5512 5513 private boolean jj_3R_76() 5514 { 5515 if (jj_scan_token(LET)) return true; 5516 if (jj_3R_82()) return true; 5517 return false; 5518 } 5519 5520 private boolean jj_3R_154() 5521 { 5522 if (jj_scan_token(76)) return true; 5523 return false; 5524 } 5525 5526 private boolean jj_3R_36() 5527 { 5528 if (jj_scan_token(IDENTIFIER)) return true; 5529 return false; 5530 } 5531 5532 private boolean jj_3R_150() 5533 { 5534 if (jj_scan_token(TRY)) return true; 5535 return false; 5536 } 5537 5538 private boolean jj_3R_141() 5539 { 5540 if (jj_3R_34()) return true; 5541 return false; 5542 } 5543 5544 private boolean jj_3_10() 5545 { 5546 if (jj_3R_40()) return true; 5547 return false; 5548 } 5549 5550 /** Generated Token Manager. */ 5551 public GoloParserTokenManager token_source; 5552 JavaCharStream jj_input_stream; 5553 /** Current token. */ 5554 public Token token; 5555 /** Next token. */ 5556 public Token jj_nt; 5557 private int jj_ntk; 5558 private Token jj_scanpos, jj_lastpos; 5559 private int jj_la; 5560 private int jj_gen; 5561 final private int[] jj_la1 = new int[118]; 5562 static private int[] jj_la1_0; 5563 static private int[] jj_la1_1; 5564 static private int[] jj_la1_2; 5565 static { 5566 jj_la1_init_0(); 5567 jj_la1_init_1(); 5568 jj_la1_init_2(); 5569 } 5570 private static void jj_la1_init_0() { 5571 jj_la1_0 = new int[] {0x20,0x0,0x0,0x20,0x0,0x20,0x0,0x100,0x18000600,0x18000600,0xa0,0x0,0x0,0x20,0x20,0x0,0x20,0x0,0x0,0x0,0x0,0x400,0x18000600,0x18000600,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x200,0x0,0x0,0x200,0x20000000,0x200,0x0,0x20,0xc14dd800,0x20,0x20,0x20,0x20,0x800000,0x800000,0x0,0x0,0x800000,0x0,0x800000,0x0,0x200000,0x300000,0x20,0x20,0x20,0x20,0x20,0x1000000,0x0,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0xc14dd820,0x18000700,0x18000700,0x0,0x0,0x0,0x0,0x20,0x0,0x0,0x20,0x20,0x0,0x18000,0x18000,0x18000,0x18000,0x20,0x1000000,0x0,0x20,0x0,0x20,0x0,0x20,0x0,0x20,0x0,0x20,0x20,0x0,0x20,0x20,0x0,0x20,0x1000000,0x0,0x0,0x1000,0x800000,0x800000,}; 5572 } 5573 private static void jj_la1_init_1() { 5574 jj_la1_1 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x800000,0x0,0x1f003,0x1f003,0x1000,0x0,0x1000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1000,0x0,0x4003,0x7003,0x0,0x0,0x0,0x1000,0x0,0x0,0x1000,0x7000,0x0,0x1000,0x7000,0x0,0x4000,0x800,0x0,0x7ffe2200,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x18000,0x18000,0x0,0x0,0x7ffe2000,0x200,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7fffa200,0x7003,0x7003,0x0,0x0,0x0,0x0,0x0,0x0,0x3ffe0000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7ffe2200,0x0,0x0,0x0,0x0,0x0,0x0,0x18000,0x0,0x0,0x0,0x0,0x18000,0x0,0x0,0x0,0x0,0x7ffe2200,0x800,0x800,0x0,0x0,0x0,}; 5575 } 5576 private static void jj_la1_init_2() { 5577 jj_la1_2 = new int[] {0x20,0x400,0x800,0x20,0x800,0x20,0x2,0x0,0x100,0x100,0x120,0x100,0x0,0x20,0x20,0x800,0x20,0x400,0x1000,0x100,0x0,0x0,0x0,0x100,0x100,0x800,0x100,0x0,0x800,0x4000,0x104,0x100,0x100,0x0,0x100,0x8000,0x0,0x0,0x20,0x198006,0x20,0x20,0x20,0x20,0x0,0x0,0x10004,0x40000,0x0,0x40000,0x0,0x10004,0x0,0x0,0x20,0x24,0x24,0x20,0x20,0x198002,0x0,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x198026,0x100,0x100,0x8000,0x8000,0x40000,0x80000,0x20,0x108000,0x2,0x20,0x20,0x800,0x0,0x0,0x200800,0x200800,0x20,0x198006,0x40000,0x20,0x40000,0x20,0x40000,0x20,0x4,0x20,0x800,0x20,0x20,0x0,0x20,0x20,0x800,0x20,0x198006,0x0,0x0,0x8000,0x0,0x0,}; 5578 } 5579 final private JJCalls[] jj_2_rtns = new JJCalls[30]; 5580 private boolean jj_rescan = false; 5581 private int jj_gc = 0; 5582 5583 /** Constructor with InputStream. */ 5584 public GoloParser(java.io.InputStream stream) { 5585 this(stream, null); 5586 } 5587 /** Constructor with InputStream and supplied encoding */ 5588 public GoloParser(java.io.InputStream stream, String encoding) { 5589 try { jj_input_stream = new JavaCharStream(stream, encoding, 1, 1); } catch(java.io.UnsupportedEncodingException e) { throw new RuntimeException(e); } 5590 token_source = new GoloParserTokenManager(jj_input_stream); 5591 token = new Token(); 5592 jj_ntk = -1; 5593 jj_gen = 0; 5594 for (int i = 0; i < 118; i++) jj_la1[i] = -1; 5595 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); 5596 } 5597 5598 /** Reinitialise. */ 5599 public void ReInit(java.io.InputStream stream) { 5600 ReInit(stream, null); 5601 } 5602 /** Reinitialise. */ 5603 public void ReInit(java.io.InputStream stream, String encoding) { 5604 try { jj_input_stream.ReInit(stream, encoding, 1, 1); } catch(java.io.UnsupportedEncodingException e) { throw new RuntimeException(e); } 5605 token_source.ReInit(jj_input_stream); 5606 token = new Token(); 5607 jj_ntk = -1; 5608 jjtree.reset(); 5609 jj_gen = 0; 5610 for (int i = 0; i < 118; i++) jj_la1[i] = -1; 5611 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); 5612 } 5613 5614 /** Constructor. */ 5615 public GoloParser(java.io.Reader stream) { 5616 jj_input_stream = new JavaCharStream(stream, 1, 1); 5617 token_source = new GoloParserTokenManager(jj_input_stream); 5618 token = new Token(); 5619 jj_ntk = -1; 5620 jj_gen = 0; 5621 for (int i = 0; i < 118; i++) jj_la1[i] = -1; 5622 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); 5623 } 5624 5625 /** Reinitialise. */ 5626 public void ReInit(java.io.Reader stream) { 5627 if (jj_input_stream == null) { 5628 jj_input_stream = new JavaCharStream(stream, 1, 1); 5629 } else { 5630 jj_input_stream.ReInit(stream, 1, 1); 5631 } 5632 if (token_source == null) { 5633 token_source = new GoloParserTokenManager(jj_input_stream); 5634 } 5635 5636 token_source.ReInit(jj_input_stream); 5637 token = new Token(); 5638 jj_ntk = -1; 5639 jjtree.reset(); 5640 jj_gen = 0; 5641 for (int i = 0; i < 118; i++) jj_la1[i] = -1; 5642 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); 5643 } 5644 5645 /** Constructor with generated Token Manager. */ 5646 public GoloParser(GoloParserTokenManager tm) { 5647 token_source = tm; 5648 token = new Token(); 5649 jj_ntk = -1; 5650 jj_gen = 0; 5651 for (int i = 0; i < 118; i++) jj_la1[i] = -1; 5652 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); 5653 } 5654 5655 /** Reinitialise. */ 5656 public void ReInit(GoloParserTokenManager tm) { 5657 token_source = tm; 5658 token = new Token(); 5659 jj_ntk = -1; 5660 jjtree.reset(); 5661 jj_gen = 0; 5662 for (int i = 0; i < 118; i++) jj_la1[i] = -1; 5663 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); 5664 } 5665 5666 private Token jj_consume_token(int kind) throws ParseException { 5667 Token oldToken; 5668 if ((oldToken = token).next != null) token = token.next; 5669 else token = token.next = token_source.getNextToken(); 5670 jj_ntk = -1; 5671 if (token.kind == kind) { 5672 jj_gen++; 5673 if (++jj_gc > 100) { 5674 jj_gc = 0; 5675 for (int i = 0; i < jj_2_rtns.length; i++) { 5676 JJCalls c = jj_2_rtns[i]; 5677 while (c != null) { 5678 if (c.gen < jj_gen) c.first = null; 5679 c = c.next; 5680 } 5681 } 5682 } 5683 return token; 5684 } 5685 token = oldToken; 5686 jj_kind = kind; 5687 throw generateParseException(); 5688 } 5689 5690 @SuppressWarnings("serial") 5691 static private final class LookaheadSuccess extends java.lang.Error { } 5692 final private LookaheadSuccess jj_ls = new LookaheadSuccess(); 5693 private boolean jj_scan_token(int kind) { 5694 if (jj_scanpos == jj_lastpos) { 5695 jj_la--; 5696 if (jj_scanpos.next == null) { 5697 jj_lastpos = jj_scanpos = jj_scanpos.next = token_source.getNextToken(); 5698 } else { 5699 jj_lastpos = jj_scanpos = jj_scanpos.next; 5700 } 5701 } else { 5702 jj_scanpos = jj_scanpos.next; 5703 } 5704 if (jj_rescan) { 5705 int i = 0; Token tok = token; 5706 while (tok != null && tok != jj_scanpos) { i++; tok = tok.next; } 5707 if (tok != null) jj_add_error_token(kind, i); 5708 } 5709 if (jj_scanpos.kind != kind) return true; 5710 if (jj_la == 0 && jj_scanpos == jj_lastpos) throw jj_ls; 5711 return false; 5712 } 5713 5714 5715/** Get the next Token. */ 5716 final public Token getNextToken() { 5717 if (token.next != null) token = token.next; 5718 else token = token.next = token_source.getNextToken(); 5719 jj_ntk = -1; 5720 jj_gen++; 5721 return token; 5722 } 5723 5724/** Get the specific Token. */ 5725 final public Token getToken(int index) { 5726 Token t = token; 5727 for (int i = 0; i < index; i++) { 5728 if (t.next != null) t = t.next; 5729 else t = t.next = token_source.getNextToken(); 5730 } 5731 return t; 5732 } 5733 5734 private int jj_ntk_f() { 5735 if ((jj_nt=token.next) == null) 5736 return (jj_ntk = (token.next=token_source.getNextToken()).kind); 5737 else 5738 return (jj_ntk = jj_nt.kind); 5739 } 5740 5741 private java.util.List<int[]> jj_expentries = new java.util.ArrayList<int[]>(); 5742 private int[] jj_expentry; 5743 private int jj_kind = -1; 5744 private int[] jj_lasttokens = new int[100]; 5745 private int jj_endpos; 5746 5747 private void jj_add_error_token(int kind, int pos) { 5748 if (pos >= 100) { 5749 return; 5750 } 5751 5752 if (pos == jj_endpos + 1) { 5753 jj_lasttokens[jj_endpos++] = kind; 5754 } else if (jj_endpos != 0) { 5755 jj_expentry = new int[jj_endpos]; 5756 5757 for (int i = 0; i < jj_endpos; i++) { 5758 jj_expentry[i] = jj_lasttokens[i]; 5759 } 5760 5761 for (int[] oldentry : jj_expentries) { 5762 if (oldentry.length == jj_expentry.length) { 5763 boolean isMatched = true; 5764 5765 for (int i = 0; i < jj_expentry.length; i++) { 5766 if (oldentry[i] != jj_expentry[i]) { 5767 isMatched = false; 5768 break; 5769 } 5770 5771 } 5772 if (isMatched) { 5773 jj_expentries.add(jj_expentry); 5774 break; 5775 } 5776 } 5777 } 5778 5779 if (pos != 0) { 5780 jj_lasttokens[(jj_endpos = pos) - 1] = kind; 5781 } 5782 } 5783 } 5784 5785 /** Generate ParseException. */ 5786 public ParseException generateParseException() { 5787 jj_expentries.clear(); 5788 boolean[] la1tokens = new boolean[87]; 5789 if (jj_kind >= 0) { 5790 la1tokens[jj_kind] = true; 5791 jj_kind = -1; 5792 } 5793 for (int i = 0; i < 118; i++) { 5794 if (jj_la1[i] == jj_gen) { 5795 for (int j = 0; j < 32; j++) { 5796 if ((jj_la1_0[i] & (1<<j)) != 0) { 5797 la1tokens[j] = true; 5798 } 5799 if ((jj_la1_1[i] & (1<<j)) != 0) { 5800 la1tokens[32+j] = true; 5801 } 5802 if ((jj_la1_2[i] & (1<<j)) != 0) { 5803 la1tokens[64+j] = true; 5804 } 5805 } 5806 } 5807 } 5808 for (int i = 0; i < 87; i++) { 5809 if (la1tokens[i]) { 5810 jj_expentry = new int[1]; 5811 jj_expentry[0] = i; 5812 jj_expentries.add(jj_expentry); 5813 } 5814 } 5815 jj_endpos = 0; 5816 jj_rescan_token(); 5817 jj_add_error_token(0, 0); 5818 int[][] exptokseq = new int[jj_expentries.size()][]; 5819 for (int i = 0; i < jj_expentries.size(); i++) { 5820 exptokseq[i] = jj_expentries.get(i); 5821 } 5822 return new ParseException(token, exptokseq, tokenImage); 5823 } 5824 5825 /** Enable tracing. */ 5826 final public void enable_tracing() { 5827 } 5828 5829 /** Disable tracing. */ 5830 final public void disable_tracing() { 5831 } 5832 5833 private void jj_rescan_token() { 5834 jj_rescan = true; 5835 for (int i = 0; i < 30; i++) { 5836 try { 5837 JJCalls p = jj_2_rtns[i]; 5838 5839 do { 5840 if (p.gen > jj_gen) { 5841 jj_la = p.arg; jj_lastpos = jj_scanpos = p.first; 5842 switch (i) { 5843 case 0: jj_3_1(); break; 5844 case 1: jj_3_2(); break; 5845 case 2: jj_3_3(); break; 5846 case 3: jj_3_4(); break; 5847 case 4: jj_3_5(); break; 5848 case 5: jj_3_6(); break; 5849 case 6: jj_3_7(); break; 5850 case 7: jj_3_8(); break; 5851 case 8: jj_3_9(); break; 5852 case 9: jj_3_10(); break; 5853 case 10: jj_3_11(); break; 5854 case 11: jj_3_12(); break; 5855 case 12: jj_3_13(); break; 5856 case 13: jj_3_14(); break; 5857 case 14: jj_3_15(); break; 5858 case 15: jj_3_16(); break; 5859 case 16: jj_3_17(); break; 5860 case 17: jj_3_18(); break; 5861 case 18: jj_3_19(); break; 5862 case 19: jj_3_20(); break; 5863 case 20: jj_3_21(); break; 5864 case 21: jj_3_22(); break; 5865 case 22: jj_3_23(); break; 5866 case 23: jj_3_24(); break; 5867 case 24: jj_3_25(); break; 5868 case 25: jj_3_26(); break; 5869 case 26: jj_3_27(); break; 5870 case 27: jj_3_28(); break; 5871 case 28: jj_3_29(); break; 5872 case 29: jj_3_30(); break; 5873 } 5874 } 5875 p = p.next; 5876 } while (p != null); 5877 5878 } catch(LookaheadSuccess ls) { } 5879 } 5880 jj_rescan = false; 5881 } 5882 5883 private void jj_save(int index, int xla) { 5884 JJCalls p = jj_2_rtns[index]; 5885 while (p.gen > jj_gen) { 5886 if (p.next == null) { p = p.next = new JJCalls(); break; } 5887 p = p.next; 5888 } 5889 5890 p.gen = jj_gen + xla - jj_la; 5891 p.first = token; 5892 p.arg = xla; 5893 } 5894 5895 static final class JJCalls { 5896 int gen; 5897 Token first; 5898 int arg; 5899 JJCalls next; 5900 } 5901 5902}