001/* Generated By:JavaCC: Do not edit this line. RccTokenManager.java */ 002/** 003 * Licensed to the Apache Software Foundation (ASF) under one 004 * or more contributor license agreements. See the NOTICE file 005 * distributed with this work for additional information 006 * regarding copyright ownership. The ASF licenses this file 007 * to you under the Apache License, Version 2.0 (the 008 * "License"); you may not use this file except in compliance 009 * with the License. You may obtain a copy of the License at 010 * 011 * http://www.apache.org/licenses/LICENSE-2.0 012 * 013 * Unless required by applicable law or agreed to in writing, software 014 * distributed under the License is distributed on an "AS IS" BASIS, 015 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 016 * See the License for the specific language governing permissions and 017 * limitations under the License. 018 */ 019 020package org.apache.hadoop.record.compiler.generated; 021import org.apache.hadoop.classification.InterfaceAudience; 022import org.apache.hadoop.classification.InterfaceStability; 023import org.apache.hadoop.record.compiler.*; 024import java.util.ArrayList; 025import java.util.Hashtable; 026import java.util.Iterator; 027import java.io.File; 028import java.io.FileReader; 029import java.io.FileNotFoundException; 030import java.io.IOException; 031 032/** 033 * @deprecated Replaced by <a href="https://hadoop.apache.org/avro/">Avro</a>. 034 */ 035@Deprecated 036@InterfaceAudience.Public 037@InterfaceStability.Stable 038public class RccTokenManager implements RccConstants 039{ 040 public java.io.PrintStream debugStream = System.out; 041 public void setDebugStream(java.io.PrintStream ds) { debugStream = ds; } 042 private final int jjMoveStringLiteralDfa0_1() 043 { 044 return jjMoveNfa_1(0, 0); 045 } 046 private final void jjCheckNAdd(int state) 047 { 048 if (jjrounds[state] != jjround) 049 { 050 jjstateSet[jjnewStateCnt++] = state; 051 jjrounds[state] = jjround; 052 } 053 } 054 private final void jjAddStates(int start, int end) 055 { 056 do { 057 jjstateSet[jjnewStateCnt++] = jjnextStates[start]; 058 } while (start++ != end); 059 } 060 private final void jjCheckNAddTwoStates(int state1, int state2) 061 { 062 jjCheckNAdd(state1); 063 jjCheckNAdd(state2); 064 } 065 private final void jjCheckNAddStates(int start, int end) 066 { 067 do { 068 jjCheckNAdd(jjnextStates[start]); 069 } while (start++ != end); 070 } 071 private final void jjCheckNAddStates(int start) 072 { 073 jjCheckNAdd(jjnextStates[start]); 074 jjCheckNAdd(jjnextStates[start + 1]); 075 } 076 private final int jjMoveNfa_1(int startState, int curPos) 077 { 078 int[] nextStates; 079 int startsAt = 0; 080 jjnewStateCnt = 3; 081 int i = 1; 082 jjstateSet[0] = startState; 083 int j, kind = 0x7fffffff; 084 for (;;) 085 { 086 if (++jjround == 0x7fffffff) 087 ReInitRounds(); 088 if (curChar < 64) 089 { 090 long l = 1L << curChar; 091 MatchLoop: do 092 { 093 switch(jjstateSet[--i]) 094 { 095 case 0: 096 if ((0x2400L & l) != 0L) 097 { 098 if (kind > 6) 099 kind = 6; 100 } 101 if (curChar == 13) 102 jjstateSet[jjnewStateCnt++] = 1; 103 break; 104 case 1: 105 if (curChar == 10 && kind > 6) 106 kind = 6; 107 break; 108 case 2: 109 if (curChar == 13) 110 jjstateSet[jjnewStateCnt++] = 1; 111 break; 112 default : break; 113 } 114 } while(i != startsAt); 115 } 116 else if (curChar < 128) 117 { 118 long l = 1L << (curChar & 077); 119 MatchLoop: do 120 { 121 switch(jjstateSet[--i]) 122 { 123 default : break; 124 } 125 } while(i != startsAt); 126 } 127 else 128 { 129 int i2 = (curChar & 0xff) >> 6; 130 long l2 = 1L << (curChar & 077); 131 MatchLoop: do 132 { 133 switch(jjstateSet[--i]) 134 { 135 default : break; 136 } 137 } while(i != startsAt); 138 } 139 if (kind != 0x7fffffff) 140 { 141 jjmatchedKind = kind; 142 jjmatchedPos = curPos; 143 kind = 0x7fffffff; 144 } 145 ++curPos; 146 if ((i = jjnewStateCnt) == (startsAt = 3 - (jjnewStateCnt = startsAt))) 147 return curPos; 148 try { curChar = input_stream.readChar(); } 149 catch(java.io.IOException e) { return curPos; } 150 } 151 } 152 private final int jjStopStringLiteralDfa_0(int pos, long active0) 153 { 154 switch (pos) 155 { 156 case 0: 157 if ((active0 & 0xfff800L) != 0L) 158 { 159 jjmatchedKind = 32; 160 return 4; 161 } 162 return -1; 163 case 1: 164 if ((active0 & 0xfff800L) != 0L) 165 { 166 jjmatchedKind = 32; 167 jjmatchedPos = 1; 168 return 4; 169 } 170 return -1; 171 case 2: 172 if ((active0 & 0x7ef800L) != 0L) 173 { 174 jjmatchedKind = 32; 175 jjmatchedPos = 2; 176 return 4; 177 } 178 if ((active0 & 0x810000L) != 0L) 179 return 4; 180 return -1; 181 case 3: 182 if ((active0 & 0x24000L) != 0L) 183 return 4; 184 if ((active0 & 0x7cb800L) != 0L) 185 { 186 jjmatchedKind = 32; 187 jjmatchedPos = 3; 188 return 4; 189 } 190 return -1; 191 case 4: 192 if ((active0 & 0x41000L) != 0L) 193 return 4; 194 if ((active0 & 0x78a800L) != 0L) 195 { 196 jjmatchedKind = 32; 197 jjmatchedPos = 4; 198 return 4; 199 } 200 return -1; 201 case 5: 202 if ((active0 & 0x680800L) != 0L) 203 return 4; 204 if ((active0 & 0x10a000L) != 0L) 205 { 206 jjmatchedKind = 32; 207 jjmatchedPos = 5; 208 return 4; 209 } 210 return -1; 211 default : 212 return -1; 213 } 214 } 215 private final int jjStartNfa_0(int pos, long active0) 216 { 217 return jjMoveNfa_0(jjStopStringLiteralDfa_0(pos, active0), pos + 1); 218 } 219 private final int jjStopAtPos(int pos, int kind) 220 { 221 jjmatchedKind = kind; 222 jjmatchedPos = pos; 223 return pos + 1; 224 } 225 private final int jjStartNfaWithStates_0(int pos, int kind, int state) 226 { 227 jjmatchedKind = kind; 228 jjmatchedPos = pos; 229 try { curChar = input_stream.readChar(); } 230 catch(java.io.IOException e) { return pos + 1; } 231 return jjMoveNfa_0(state, pos + 1); 232 } 233 private final int jjMoveStringLiteralDfa0_0() 234 { 235 switch(curChar) 236 { 237 case 44: 238 return jjStopAtPos(0, 29); 239 case 46: 240 return jjStopAtPos(0, 30); 241 case 47: 242 return jjMoveStringLiteralDfa1_0(0x120L); 243 case 59: 244 return jjStopAtPos(0, 28); 245 case 60: 246 return jjStopAtPos(0, 26); 247 case 62: 248 return jjStopAtPos(0, 27); 249 case 98: 250 return jjMoveStringLiteralDfa1_0(0x20c000L); 251 case 99: 252 return jjMoveStringLiteralDfa1_0(0x1000L); 253 case 100: 254 return jjMoveStringLiteralDfa1_0(0x80000L); 255 case 102: 256 return jjMoveStringLiteralDfa1_0(0x40000L); 257 case 105: 258 return jjMoveStringLiteralDfa1_0(0x12000L); 259 case 108: 260 return jjMoveStringLiteralDfa1_0(0x20000L); 261 case 109: 262 return jjMoveStringLiteralDfa1_0(0x800800L); 263 case 117: 264 return jjMoveStringLiteralDfa1_0(0x100000L); 265 case 118: 266 return jjMoveStringLiteralDfa1_0(0x400000L); 267 case 123: 268 return jjStopAtPos(0, 24); 269 case 125: 270 return jjStopAtPos(0, 25); 271 default : 272 return jjMoveNfa_0(0, 0); 273 } 274 } 275 private final int jjMoveStringLiteralDfa1_0(long active0) 276 { 277 try { curChar = input_stream.readChar(); } 278 catch(java.io.IOException e) { 279 jjStopStringLiteralDfa_0(0, active0); 280 return 1; 281 } 282 switch(curChar) 283 { 284 case 42: 285 if ((active0 & 0x100L) != 0L) 286 return jjStopAtPos(1, 8); 287 break; 288 case 47: 289 if ((active0 & 0x20L) != 0L) 290 return jjStopAtPos(1, 5); 291 break; 292 case 97: 293 return jjMoveStringLiteralDfa2_0(active0, 0x800000L); 294 case 101: 295 return jjMoveStringLiteralDfa2_0(active0, 0x400000L); 296 case 108: 297 return jjMoveStringLiteralDfa2_0(active0, 0x41000L); 298 case 110: 299 return jjMoveStringLiteralDfa2_0(active0, 0x12000L); 300 case 111: 301 return jjMoveStringLiteralDfa2_0(active0, 0xa8800L); 302 case 115: 303 return jjMoveStringLiteralDfa2_0(active0, 0x100000L); 304 case 117: 305 return jjMoveStringLiteralDfa2_0(active0, 0x200000L); 306 case 121: 307 return jjMoveStringLiteralDfa2_0(active0, 0x4000L); 308 default : 309 break; 310 } 311 return jjStartNfa_0(0, active0); 312 } 313 private final int jjMoveStringLiteralDfa2_0(long old0, long active0) 314 { 315 if (((active0 &= old0)) == 0L) 316 return jjStartNfa_0(0, old0); 317 try { curChar = input_stream.readChar(); } 318 catch(java.io.IOException e) { 319 jjStopStringLiteralDfa_0(1, active0); 320 return 2; 321 } 322 switch(curChar) 323 { 324 case 97: 325 return jjMoveStringLiteralDfa3_0(active0, 0x1000L); 326 case 99: 327 return jjMoveStringLiteralDfa3_0(active0, 0x402000L); 328 case 100: 329 return jjMoveStringLiteralDfa3_0(active0, 0x800L); 330 case 102: 331 return jjMoveStringLiteralDfa3_0(active0, 0x200000L); 332 case 110: 333 return jjMoveStringLiteralDfa3_0(active0, 0x20000L); 334 case 111: 335 return jjMoveStringLiteralDfa3_0(active0, 0x48000L); 336 case 112: 337 if ((active0 & 0x800000L) != 0L) 338 return jjStartNfaWithStates_0(2, 23, 4); 339 break; 340 case 116: 341 if ((active0 & 0x10000L) != 0L) 342 return jjStartNfaWithStates_0(2, 16, 4); 343 return jjMoveStringLiteralDfa3_0(active0, 0x104000L); 344 case 117: 345 return jjMoveStringLiteralDfa3_0(active0, 0x80000L); 346 default : 347 break; 348 } 349 return jjStartNfa_0(1, active0); 350 } 351 private final int jjMoveStringLiteralDfa3_0(long old0, long active0) 352 { 353 if (((active0 &= old0)) == 0L) 354 return jjStartNfa_0(1, old0); 355 try { curChar = input_stream.readChar(); } 356 catch(java.io.IOException e) { 357 jjStopStringLiteralDfa_0(2, active0); 358 return 3; 359 } 360 switch(curChar) 361 { 362 case 97: 363 return jjMoveStringLiteralDfa4_0(active0, 0x40000L); 364 case 98: 365 return jjMoveStringLiteralDfa4_0(active0, 0x80000L); 366 case 101: 367 if ((active0 & 0x4000L) != 0L) 368 return jjStartNfaWithStates_0(3, 14, 4); 369 break; 370 case 102: 371 return jjMoveStringLiteralDfa4_0(active0, 0x200000L); 372 case 103: 373 if ((active0 & 0x20000L) != 0L) 374 return jjStartNfaWithStates_0(3, 17, 4); 375 break; 376 case 108: 377 return jjMoveStringLiteralDfa4_0(active0, 0xa000L); 378 case 114: 379 return jjMoveStringLiteralDfa4_0(active0, 0x100000L); 380 case 115: 381 return jjMoveStringLiteralDfa4_0(active0, 0x1000L); 382 case 116: 383 return jjMoveStringLiteralDfa4_0(active0, 0x400000L); 384 case 117: 385 return jjMoveStringLiteralDfa4_0(active0, 0x800L); 386 default : 387 break; 388 } 389 return jjStartNfa_0(2, active0); 390 } 391 private final int jjMoveStringLiteralDfa4_0(long old0, long active0) 392 { 393 if (((active0 &= old0)) == 0L) 394 return jjStartNfa_0(2, old0); 395 try { curChar = input_stream.readChar(); } 396 catch(java.io.IOException e) { 397 jjStopStringLiteralDfa_0(3, active0); 398 return 4; 399 } 400 switch(curChar) 401 { 402 case 101: 403 return jjMoveStringLiteralDfa5_0(active0, 0x208000L); 404 case 105: 405 return jjMoveStringLiteralDfa5_0(active0, 0x100000L); 406 case 108: 407 return jjMoveStringLiteralDfa5_0(active0, 0x80800L); 408 case 111: 409 return jjMoveStringLiteralDfa5_0(active0, 0x400000L); 410 case 115: 411 if ((active0 & 0x1000L) != 0L) 412 return jjStartNfaWithStates_0(4, 12, 4); 413 break; 414 case 116: 415 if ((active0 & 0x40000L) != 0L) 416 return jjStartNfaWithStates_0(4, 18, 4); 417 break; 418 case 117: 419 return jjMoveStringLiteralDfa5_0(active0, 0x2000L); 420 default : 421 break; 422 } 423 return jjStartNfa_0(3, active0); 424 } 425 private final int jjMoveStringLiteralDfa5_0(long old0, long active0) 426 { 427 if (((active0 &= old0)) == 0L) 428 return jjStartNfa_0(3, old0); 429 try { curChar = input_stream.readChar(); } 430 catch(java.io.IOException e) { 431 jjStopStringLiteralDfa_0(4, active0); 432 return 5; 433 } 434 switch(curChar) 435 { 436 case 97: 437 return jjMoveStringLiteralDfa6_0(active0, 0x8000L); 438 case 100: 439 return jjMoveStringLiteralDfa6_0(active0, 0x2000L); 440 case 101: 441 if ((active0 & 0x800L) != 0L) 442 return jjStartNfaWithStates_0(5, 11, 4); 443 else if ((active0 & 0x80000L) != 0L) 444 return jjStartNfaWithStates_0(5, 19, 4); 445 break; 446 case 110: 447 return jjMoveStringLiteralDfa6_0(active0, 0x100000L); 448 case 114: 449 if ((active0 & 0x200000L) != 0L) 450 return jjStartNfaWithStates_0(5, 21, 4); 451 else if ((active0 & 0x400000L) != 0L) 452 return jjStartNfaWithStates_0(5, 22, 4); 453 break; 454 default : 455 break; 456 } 457 return jjStartNfa_0(4, active0); 458 } 459 private final int jjMoveStringLiteralDfa6_0(long old0, long active0) 460 { 461 if (((active0 &= old0)) == 0L) 462 return jjStartNfa_0(4, old0); 463 try { curChar = input_stream.readChar(); } 464 catch(java.io.IOException e) { 465 jjStopStringLiteralDfa_0(5, active0); 466 return 6; 467 } 468 switch(curChar) 469 { 470 case 101: 471 if ((active0 & 0x2000L) != 0L) 472 return jjStartNfaWithStates_0(6, 13, 4); 473 break; 474 case 103: 475 if ((active0 & 0x100000L) != 0L) 476 return jjStartNfaWithStates_0(6, 20, 4); 477 break; 478 case 110: 479 if ((active0 & 0x8000L) != 0L) 480 return jjStartNfaWithStates_0(6, 15, 4); 481 break; 482 default : 483 break; 484 } 485 return jjStartNfa_0(5, active0); 486 } 487 static final long[] jjbitVec0 = { 488 0x0L, 0x0L, 0xffffffffffffffffL, 0xffffffffffffffffL 489 }; 490 private final int jjMoveNfa_0(int startState, int curPos) 491 { 492 int[] nextStates; 493 int startsAt = 0; 494 jjnewStateCnt = 5; 495 int i = 1; 496 jjstateSet[0] = startState; 497 int j, kind = 0x7fffffff; 498 for (;;) 499 { 500 if (++jjround == 0x7fffffff) 501 ReInitRounds(); 502 if (curChar < 64) 503 { 504 long l = 1L << curChar; 505 MatchLoop: do 506 { 507 switch(jjstateSet[--i]) 508 { 509 case 0: 510 if (curChar == 34) 511 jjCheckNAdd(1); 512 break; 513 case 1: 514 if ((0xfffffffbffffffffL & l) != 0L) 515 jjCheckNAddTwoStates(1, 2); 516 break; 517 case 2: 518 if (curChar == 34 && kind > 31) 519 kind = 31; 520 break; 521 case 4: 522 if ((0x3ff000000000000L & l) == 0L) 523 break; 524 if (kind > 32) 525 kind = 32; 526 jjstateSet[jjnewStateCnt++] = 4; 527 break; 528 default : break; 529 } 530 } while(i != startsAt); 531 } 532 else if (curChar < 128) 533 { 534 long l = 1L << (curChar & 077); 535 MatchLoop: do 536 { 537 switch(jjstateSet[--i]) 538 { 539 case 0: 540 if ((0x7fffffe07fffffeL & l) == 0L) 541 break; 542 if (kind > 32) 543 kind = 32; 544 jjCheckNAdd(4); 545 break; 546 case 1: 547 jjAddStates(0, 1); 548 break; 549 case 4: 550 if ((0x7fffffe87fffffeL & l) == 0L) 551 break; 552 if (kind > 32) 553 kind = 32; 554 jjCheckNAdd(4); 555 break; 556 default : break; 557 } 558 } while(i != startsAt); 559 } 560 else 561 { 562 int i2 = (curChar & 0xff) >> 6; 563 long l2 = 1L << (curChar & 077); 564 MatchLoop: do 565 { 566 switch(jjstateSet[--i]) 567 { 568 case 1: 569 if ((jjbitVec0[i2] & l2) != 0L) 570 jjAddStates(0, 1); 571 break; 572 default : break; 573 } 574 } while(i != startsAt); 575 } 576 if (kind != 0x7fffffff) 577 { 578 jjmatchedKind = kind; 579 jjmatchedPos = curPos; 580 kind = 0x7fffffff; 581 } 582 ++curPos; 583 if ((i = jjnewStateCnt) == (startsAt = 5 - (jjnewStateCnt = startsAt))) 584 return curPos; 585 try { curChar = input_stream.readChar(); } 586 catch(java.io.IOException e) { return curPos; } 587 } 588 } 589 private final int jjMoveStringLiteralDfa0_2() 590 { 591 switch(curChar) 592 { 593 case 42: 594 return jjMoveStringLiteralDfa1_2(0x200L); 595 default : 596 return 1; 597 } 598 } 599 private final int jjMoveStringLiteralDfa1_2(long active0) 600 { 601 try { curChar = input_stream.readChar(); } 602 catch(java.io.IOException e) { 603 return 1; 604 } 605 switch(curChar) 606 { 607 case 47: 608 if ((active0 & 0x200L) != 0L) 609 return jjStopAtPos(1, 9); 610 break; 611 default : 612 return 2; 613 } 614 return 2; 615 } 616 static final int[] jjnextStates = { 617 1, 2, 618 }; 619 public static final String[] jjstrLiteralImages = { 620 "", null, null, null, null, null, null, null, null, null, null, 621 "\155\157\144\165\154\145", "\143\154\141\163\163", "\151\156\143\154\165\144\145", "\142\171\164\145", 622 "\142\157\157\154\145\141\156", "\151\156\164", "\154\157\156\147", "\146\154\157\141\164", 623 "\144\157\165\142\154\145", "\165\163\164\162\151\156\147", "\142\165\146\146\145\162", 624 "\166\145\143\164\157\162", "\155\141\160", "\173", "\175", "\74", "\76", "\73", "\54", "\56", null, null, }; 625 public static final String[] lexStateNames = { 626 "DEFAULT", 627 "WithinOneLineComment", 628 "WithinMultiLineComment", 629 }; 630 public static final int[] jjnewLexState = { 631 -1, -1, -1, -1, -1, 1, 0, -1, 2, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 632 -1, -1, -1, -1, -1, -1, -1, -1, 633 }; 634 static final long[] jjtoToken = { 635 0x1fffff801L, 636 }; 637 static final long[] jjtoSkip = { 638 0x37eL, 639 }; 640 static final long[] jjtoSpecial = { 641 0x360L, 642 }; 643 static final long[] jjtoMore = { 644 0x480L, 645 }; 646 protected SimpleCharStream input_stream; 647 private final int[] jjrounds = new int[5]; 648 private final int[] jjstateSet = new int[10]; 649 StringBuffer image; 650 int jjimageLen; 651 int lengthOfMatch; 652 protected char curChar; 653 public RccTokenManager(SimpleCharStream stream){ 654 if (SimpleCharStream.staticFlag) 655 throw new Error("ERROR: Cannot use a static CharStream class with a non-static lexical analyzer."); 656 input_stream = stream; 657 } 658 public RccTokenManager(SimpleCharStream stream, int lexState){ 659 this(stream); 660 SwitchTo(lexState); 661 } 662 public void ReInit(SimpleCharStream stream) 663 { 664 jjmatchedPos = jjnewStateCnt = 0; 665 curLexState = defaultLexState; 666 input_stream = stream; 667 ReInitRounds(); 668 } 669 private final void ReInitRounds() 670 { 671 int i; 672 jjround = 0x80000001; 673 for (i = 5; i-- > 0;) 674 jjrounds[i] = 0x80000000; 675 } 676 public void ReInit(SimpleCharStream stream, int lexState) 677 { 678 ReInit(stream); 679 SwitchTo(lexState); 680 } 681 public void SwitchTo(int lexState) 682 { 683 if (lexState >= 3 || lexState < 0) 684 throw new TokenMgrError("Error: Ignoring invalid lexical state : " + lexState + ". State unchanged.", TokenMgrError.INVALID_LEXICAL_STATE); 685 else 686 curLexState = lexState; 687 } 688 689 protected Token jjFillToken() 690 { 691 Token t = Token.newToken(jjmatchedKind); 692 t.kind = jjmatchedKind; 693 String im = jjstrLiteralImages[jjmatchedKind]; 694 t.image = (im == null) ? input_stream.GetImage() : im; 695 t.beginLine = input_stream.getBeginLine(); 696 t.beginColumn = input_stream.getBeginColumn(); 697 t.endLine = input_stream.getEndLine(); 698 t.endColumn = input_stream.getEndColumn(); 699 return t; 700 } 701 702 int curLexState = 0; 703 int defaultLexState = 0; 704 int jjnewStateCnt; 705 int jjround; 706 int jjmatchedPos; 707 int jjmatchedKind; 708 709 public Token getNextToken() 710 { 711 int kind; 712 Token specialToken = null; 713 Token matchedToken; 714 int curPos = 0; 715 716 EOFLoop : 717 for (;;) 718 { 719 try 720 { 721 curChar = input_stream.BeginToken(); 722 } 723 catch(java.io.IOException e) 724 { 725 jjmatchedKind = 0; 726 matchedToken = jjFillToken(); 727 matchedToken.specialToken = specialToken; 728 return matchedToken; 729 } 730 image = null; 731 jjimageLen = 0; 732 733 for (;;) 734 { 735 switch(curLexState) 736 { 737 case 0: 738 try { input_stream.backup(0); 739 while (curChar <= 32 && (0x100002600L & (1L << curChar)) != 0L) 740 curChar = input_stream.BeginToken(); 741 } 742 catch (java.io.IOException e1) { continue EOFLoop; } 743 jjmatchedKind = 0x7fffffff; 744 jjmatchedPos = 0; 745 curPos = jjMoveStringLiteralDfa0_0(); 746 break; 747 case 1: 748 jjmatchedKind = 0x7fffffff; 749 jjmatchedPos = 0; 750 curPos = jjMoveStringLiteralDfa0_1(); 751 if (jjmatchedPos == 0 && jjmatchedKind > 7) 752 { 753 jjmatchedKind = 7; 754 } 755 break; 756 case 2: 757 jjmatchedKind = 0x7fffffff; 758 jjmatchedPos = 0; 759 curPos = jjMoveStringLiteralDfa0_2(); 760 if (jjmatchedPos == 0 && jjmatchedKind > 10) 761 { 762 jjmatchedKind = 10; 763 } 764 break; 765 } 766 if (jjmatchedKind != 0x7fffffff) 767 { 768 if (jjmatchedPos + 1 < curPos) 769 input_stream.backup(curPos - jjmatchedPos - 1); 770 if ((jjtoToken[jjmatchedKind >> 6] & (1L << (jjmatchedKind & 077))) != 0L) 771 { 772 matchedToken = jjFillToken(); 773 matchedToken.specialToken = specialToken; 774 if (jjnewLexState[jjmatchedKind] != -1) 775 curLexState = jjnewLexState[jjmatchedKind]; 776 return matchedToken; 777 } 778 else if ((jjtoSkip[jjmatchedKind >> 6] & (1L << (jjmatchedKind & 077))) != 0L) 779 { 780 if ((jjtoSpecial[jjmatchedKind >> 6] & (1L << (jjmatchedKind & 077))) != 0L) 781 { 782 matchedToken = jjFillToken(); 783 if (specialToken == null) 784 specialToken = matchedToken; 785 else 786 { 787 matchedToken.specialToken = specialToken; 788 specialToken = (specialToken.next = matchedToken); 789 } 790 SkipLexicalActions(matchedToken); 791 } 792 else 793 SkipLexicalActions(null); 794 if (jjnewLexState[jjmatchedKind] != -1) 795 curLexState = jjnewLexState[jjmatchedKind]; 796 continue EOFLoop; 797 } 798 jjimageLen += jjmatchedPos + 1; 799 if (jjnewLexState[jjmatchedKind] != -1) 800 curLexState = jjnewLexState[jjmatchedKind]; 801 curPos = 0; 802 jjmatchedKind = 0x7fffffff; 803 try { 804 curChar = input_stream.readChar(); 805 continue; 806 } 807 catch (java.io.IOException e1) { } 808 } 809 int error_line = input_stream.getEndLine(); 810 int error_column = input_stream.getEndColumn(); 811 String error_after = null; 812 boolean EOFSeen = false; 813 try { input_stream.readChar(); input_stream.backup(1); } 814 catch (java.io.IOException e1) { 815 EOFSeen = true; 816 error_after = curPos <= 1 ? "" : input_stream.GetImage(); 817 if (curChar == '\n' || curChar == '\r') { 818 error_line++; 819 error_column = 0; 820 } 821 else 822 error_column++; 823 } 824 if (!EOFSeen) { 825 input_stream.backup(1); 826 error_after = curPos <= 1 ? "" : input_stream.GetImage(); 827 } 828 throw new TokenMgrError(EOFSeen, curLexState, error_line, error_column, error_after, curChar, TokenMgrError.LEXICAL_ERROR); 829 } 830 } 831 } 832 833 void SkipLexicalActions(Token matchedToken) 834 { 835 switch(jjmatchedKind) 836 { 837 default : 838 break; 839 } 840 } 841}