Exp1ParserTokenManager.java

Go to the documentation of this file.
00001 /* Generated By:JavaCC: Do not edit this line. Exp1ParserTokenManager.java */
00002 package plp.expressions1.parser;
00003 import plp.expressions1.*;
00004 import plp.expressions1.expression.*;
00005 import plp.expressions1.util.*;
00006 
00007 public class Exp1ParserTokenManager implements Exp1ParserConstants
00008 {
00009   public static  java.io.PrintStream debugStream = System.out;
00010   public static  void setDebugStream(java.io.PrintStream ds) { debugStream = ds; }
00011 private static final int jjStopStringLiteralDfa_0(int pos, long active0)
00012 {
00013    switch (pos)
00014    {
00015       case 0:
00016          if ((active0 & 0x2000000000000L) != 0L)
00017             return 19;
00018          if ((active0 & 0x7e00L) != 0L)
00019          {
00020             jjmatchedKind = 20;
00021             return 13;
00022          }
00023          return -1;
00024       case 1:
00025          if ((active0 & 0x400L) != 0L)
00026             return 13;
00027          if ((active0 & 0x7a00L) != 0L)
00028          {
00029             jjmatchedKind = 20;
00030             jjmatchedPos = 1;
00031             return 13;
00032          }
00033          return -1;
00034       case 2:
00035          if ((active0 & 0xa00L) != 0L)
00036             return 13;
00037          if ((active0 & 0x7000L) != 0L)
00038          {
00039             jjmatchedKind = 20;
00040             jjmatchedPos = 2;
00041             return 13;
00042          }
00043          return -1;
00044       case 3:
00045          if ((active0 & 0x5000L) != 0L)
00046          {
00047             jjmatchedKind = 20;
00048             jjmatchedPos = 3;
00049             return 13;
00050          }
00051          if ((active0 & 0x2000L) != 0L)
00052             return 13;
00053          return -1;
00054       case 4:
00055          if ((active0 & 0x1000L) != 0L)
00056          {
00057             jjmatchedKind = 20;
00058             jjmatchedPos = 4;
00059             return 13;
00060          }
00061          if ((active0 & 0x4000L) != 0L)
00062             return 13;
00063          return -1;
00064       default :
00065          return -1;
00066    }
00067 }
00068 private static final int jjStartNfa_0(int pos, long active0)
00069 {
00070    return jjMoveNfa_0(jjStopStringLiteralDfa_0(pos, active0), pos + 1);
00071 }
00072 static private final int jjStopAtPos(int pos, int kind)
00073 {
00074    jjmatchedKind = kind;
00075    jjmatchedPos = pos;
00076    return pos + 1;
00077 }
00078 static private final int jjStartNfaWithStates_0(int pos, int kind, int state)
00079 {
00080    jjmatchedKind = kind;
00081    jjmatchedPos = pos;
00082    try { curChar = input_stream.readChar(); }
00083    catch(java.io.IOException e) { return pos + 1; }
00084    return jjMoveNfa_0(state, pos + 1);
00085 }
00086 static private final int jjMoveStringLiteralDfa0_0()
00087 {
00088    switch(curChar)
00089    {
00090       case 33:
00091          jjmatchedKind = 35;
00092          return jjMoveStringLiteralDfa1_0(0x40000000000L);
00093       case 37:
00094          return jjStopAtPos(0, 53);
00095       case 38:
00096          jjmatchedKind = 50;
00097          return jjMoveStringLiteralDfa1_0(0x100000000000L);
00098       case 40:
00099          return jjStopAtPos(0, 23);
00100       case 41:
00101          return jjStopAtPos(0, 24);
00102       case 42:
00103          return jjStopAtPos(0, 48);
00104       case 43:
00105          jjmatchedKind = 46;
00106          return jjMoveStringLiteralDfa1_0(0x200000000000L);
00107       case 44:
00108          return jjStopAtPos(0, 30);
00109       case 45:
00110          return jjStopAtPos(0, 47);
00111       case 46:
00112          return jjStopAtPos(0, 31);
00113       case 47:
00114          return jjStartNfaWithStates_0(0, 49, 19);
00115       case 58:
00116          return jjStopAtPos(0, 38);
00117       case 59:
00118          return jjStopAtPos(0, 29);
00119       case 60:
00120          jjmatchedKind = 34;
00121          return jjMoveStringLiteralDfa1_0(0x10000000000L);
00122       case 61:
00123          jjmatchedKind = 32;
00124          return jjMoveStringLiteralDfa1_0(0x8000000000L);
00125       case 62:
00126          jjmatchedKind = 33;
00127          return jjMoveStringLiteralDfa1_0(0x20000000000L);
00128       case 63:
00129          return jjStopAtPos(0, 37);
00130       case 91:
00131          return jjStopAtPos(0, 27);
00132       case 93:
00133          return jjStopAtPos(0, 28);
00134       case 94:
00135          return jjStopAtPos(0, 52);
00136       case 97:
00137          return jjMoveStringLiteralDfa1_0(0x200L);
00138       case 102:
00139          return jjMoveStringLiteralDfa1_0(0x4000L);
00140       case 108:
00141          return jjMoveStringLiteralDfa1_0(0x1000L);
00142       case 110:
00143          return jjMoveStringLiteralDfa1_0(0x800L);
00144       case 111:
00145          return jjMoveStringLiteralDfa1_0(0x400L);
00146       case 116:
00147          return jjMoveStringLiteralDfa1_0(0x2000L);
00148       case 123:
00149          return jjStopAtPos(0, 25);
00150       case 124:
00151          jjmatchedKind = 51;
00152          return jjMoveStringLiteralDfa1_0(0x80000000000L);
00153       case 125:
00154          return jjStopAtPos(0, 26);
00155       case 126:
00156          return jjStopAtPos(0, 36);
00157       default :
00158          return jjMoveNfa_0(0, 0);
00159    }
00160 }
00161 static private final int jjMoveStringLiteralDfa1_0(long active0)
00162 {
00163    try { curChar = input_stream.readChar(); }
00164    catch(java.io.IOException e) {
00165       jjStopStringLiteralDfa_0(0, active0);
00166       return 1;
00167    }
00168    switch(curChar)
00169    {
00170       case 38:
00171          if ((active0 & 0x100000000000L) != 0L)
00172             return jjStopAtPos(1, 44);
00173          break;
00174       case 43:
00175          if ((active0 & 0x200000000000L) != 0L)
00176             return jjStopAtPos(1, 45);
00177          break;
00178       case 61:
00179          if ((active0 & 0x8000000000L) != 0L)
00180             return jjStopAtPos(1, 39);
00181          else if ((active0 & 0x10000000000L) != 0L)
00182             return jjStopAtPos(1, 40);
00183          else if ((active0 & 0x20000000000L) != 0L)
00184             return jjStopAtPos(1, 41);
00185          else if ((active0 & 0x40000000000L) != 0L)
00186             return jjStopAtPos(1, 42);
00187          break;
00188       case 97:
00189          return jjMoveStringLiteralDfa2_0(active0, 0x4000L);
00190       case 101:
00191          return jjMoveStringLiteralDfa2_0(active0, 0x1000L);
00192       case 110:
00193          return jjMoveStringLiteralDfa2_0(active0, 0x200L);
00194       case 111:
00195          return jjMoveStringLiteralDfa2_0(active0, 0x800L);
00196       case 114:
00197          if ((active0 & 0x400L) != 0L)
00198             return jjStartNfaWithStates_0(1, 10, 13);
00199          return jjMoveStringLiteralDfa2_0(active0, 0x2000L);
00200       case 124:
00201          if ((active0 & 0x80000000000L) != 0L)
00202             return jjStopAtPos(1, 43);
00203          break;
00204       default :
00205          break;
00206    }
00207    return jjStartNfa_0(0, active0);
00208 }
00209 static private final int jjMoveStringLiteralDfa2_0(long old0, long active0)
00210 {
00211    if (((active0 &= old0)) == 0L)
00212       return jjStartNfa_0(0, old0); 
00213    try { curChar = input_stream.readChar(); }
00214    catch(java.io.IOException e) {
00215       jjStopStringLiteralDfa_0(1, active0);
00216       return 2;
00217    }
00218    switch(curChar)
00219    {
00220       case 100:
00221          if ((active0 & 0x200L) != 0L)
00222             return jjStartNfaWithStates_0(2, 9, 13);
00223          break;
00224       case 108:
00225          return jjMoveStringLiteralDfa3_0(active0, 0x4000L);
00226       case 110:
00227          return jjMoveStringLiteralDfa3_0(active0, 0x1000L);
00228       case 116:
00229          if ((active0 & 0x800L) != 0L)
00230             return jjStartNfaWithStates_0(2, 11, 13);
00231          break;
00232       case 117:
00233          return jjMoveStringLiteralDfa3_0(active0, 0x2000L);
00234       default :
00235          break;
00236    }
00237    return jjStartNfa_0(1, active0);
00238 }
00239 static private final int jjMoveStringLiteralDfa3_0(long old0, long active0)
00240 {
00241    if (((active0 &= old0)) == 0L)
00242       return jjStartNfa_0(1, old0); 
00243    try { curChar = input_stream.readChar(); }
00244    catch(java.io.IOException e) {
00245       jjStopStringLiteralDfa_0(2, active0);
00246       return 3;
00247    }
00248    switch(curChar)
00249    {
00250       case 101:
00251          if ((active0 & 0x2000L) != 0L)
00252             return jjStartNfaWithStates_0(3, 13, 13);
00253          break;
00254       case 103:
00255          return jjMoveStringLiteralDfa4_0(active0, 0x1000L);
00256       case 115:
00257          return jjMoveStringLiteralDfa4_0(active0, 0x4000L);
00258       default :
00259          break;
00260    }
00261    return jjStartNfa_0(2, active0);
00262 }
00263 static private final int jjMoveStringLiteralDfa4_0(long old0, long active0)
00264 {
00265    if (((active0 &= old0)) == 0L)
00266       return jjStartNfa_0(2, old0); 
00267    try { curChar = input_stream.readChar(); }
00268    catch(java.io.IOException e) {
00269       jjStopStringLiteralDfa_0(3, active0);
00270       return 4;
00271    }
00272    switch(curChar)
00273    {
00274       case 101:
00275          if ((active0 & 0x4000L) != 0L)
00276             return jjStartNfaWithStates_0(4, 14, 13);
00277          break;
00278       case 116:
00279          return jjMoveStringLiteralDfa5_0(active0, 0x1000L);
00280       default :
00281          break;
00282    }
00283    return jjStartNfa_0(3, active0);
00284 }
00285 static private final int jjMoveStringLiteralDfa5_0(long old0, long active0)
00286 {
00287    if (((active0 &= old0)) == 0L)
00288       return jjStartNfa_0(3, old0); 
00289    try { curChar = input_stream.readChar(); }
00290    catch(java.io.IOException e) {
00291       jjStopStringLiteralDfa_0(4, active0);
00292       return 5;
00293    }
00294    switch(curChar)
00295    {
00296       case 104:
00297          if ((active0 & 0x1000L) != 0L)
00298             return jjStartNfaWithStates_0(5, 12, 13);
00299          break;
00300       default :
00301          break;
00302    }
00303    return jjStartNfa_0(4, active0);
00304 }
00305 static private final void jjCheckNAdd(int state)
00306 {
00307    if (jjrounds[state] != jjround)
00308    {
00309       jjstateSet[jjnewStateCnt++] = state;
00310       jjrounds[state] = jjround;
00311    }
00312 }
00313 static private final void jjAddStates(int start, int end)
00314 {
00315    do {
00316       jjstateSet[jjnewStateCnt++] = jjnextStates[start];
00317    } while (start++ != end);
00318 }
00319 static private final void jjCheckNAddTwoStates(int state1, int state2)
00320 {
00321    jjCheckNAdd(state1);
00322    jjCheckNAdd(state2);
00323 }
00324 static private final void jjCheckNAddStates(int start, int end)
00325 {
00326    do {
00327       jjCheckNAdd(jjnextStates[start]);
00328    } while (start++ != end);
00329 }
00330 static private final void jjCheckNAddStates(int start)
00331 {
00332    jjCheckNAdd(jjnextStates[start]);
00333    jjCheckNAdd(jjnextStates[start + 1]);
00334 }
00335 static final long[] jjbitVec0 = {
00336    0xfffffffffffffffeL, 0xffffffffffffffffL, 0xffffffffffffffffL, 0xffffffffffffffffL
00337 };
00338 static final long[] jjbitVec2 = {
00339    0x0L, 0x0L, 0xffffffffffffffffL, 0xffffffffffffffffL
00340 };
00341 static final long[] jjbitVec3 = {
00342    0x1ff00000fffffffeL, 0xffffffffffffc000L, 0xffffffffL, 0x600000000000000L
00343 };
00344 static final long[] jjbitVec4 = {
00345    0x0L, 0x0L, 0x0L, 0xff7fffffff7fffffL
00346 };
00347 static final long[] jjbitVec5 = {
00348    0x0L, 0xffffffffffffffffL, 0xffffffffffffffffL, 0xffffffffffffffffL
00349 };
00350 static final long[] jjbitVec6 = {
00351    0xffffffffffffffffL, 0xffffffffffffffffL, 0xffffL, 0x0L
00352 };
00353 static final long[] jjbitVec7 = {
00354    0xffffffffffffffffL, 0xffffffffffffffffL, 0x0L, 0x0L
00355 };
00356 static final long[] jjbitVec8 = {
00357    0x3fffffffffffL, 0x0L, 0x0L, 0x0L
00358 };
00359 static private final int jjMoveNfa_0(int startState, int curPos)
00360 {
00361    int[] nextStates;
00362    int startsAt = 0;
00363    jjnewStateCnt = 37;
00364    int i = 1;
00365    jjstateSet[0] = startState;
00366    int j, kind = 0x7fffffff;
00367    for (;;)
00368    {
00369       if (++jjround == 0x7fffffff)
00370          ReInitRounds();
00371       if (curChar < 64)
00372       {
00373          long l = 1L << curChar;
00374          MatchLoop: do
00375          {
00376             switch(jjstateSet[--i])
00377             {
00378                case 19:
00379                   if (curChar == 42)
00380                      jjCheckNAddTwoStates(32, 33);
00381                   else if (curChar == 47)
00382                      jjCheckNAddStates(0, 2);
00383                   if (curChar == 42)
00384                      jjstateSet[jjnewStateCnt++] = 24;
00385                   break;
00386                case 0:
00387                   if ((0x3fe000000000000L & l) != 0L)
00388                   {
00389                      if (kind > 15)
00390                         kind = 15;
00391                      jjCheckNAddTwoStates(1, 2);
00392                   }
00393                   else if (curChar == 47)
00394                      jjAddStates(3, 5);
00395                   else if (curChar == 48)
00396                   {
00397                      if (kind > 15)
00398                         kind = 15;
00399                      jjCheckNAddStates(6, 8);
00400                   }
00401                   else if (curChar == 36)
00402                   {
00403                      if (kind > 20)
00404                         kind = 20;
00405                      jjCheckNAdd(13);
00406                   }
00407                   else if (curChar == 34)
00408                      jjCheckNAddStates(9, 11);
00409                   break;
00410                case 1:
00411                   if ((0x3ff000000000000L & l) == 0L)
00412                      break;
00413                   if (kind > 15)
00414                      kind = 15;
00415                   jjCheckNAddTwoStates(1, 2);
00416                   break;
00417                case 3:
00418                   if (curChar == 34)
00419                      jjCheckNAddStates(9, 11);
00420                   break;
00421                case 4:
00422                   if ((0xfffffffbffffdbffL & l) != 0L)
00423                      jjCheckNAddStates(9, 11);
00424                   break;
00425                case 6:
00426                   if ((0x8400000000L & l) != 0L)
00427                      jjCheckNAddStates(9, 11);
00428                   break;
00429                case 7:
00430                   if (curChar == 34 && kind > 19)
00431                      kind = 19;
00432                   break;
00433                case 8:
00434                   if ((0xff000000000000L & l) != 0L)
00435                      jjCheckNAddStates(12, 15);
00436                   break;
00437                case 9:
00438                   if ((0xff000000000000L & l) != 0L)
00439                      jjCheckNAddStates(9, 11);
00440                   break;
00441                case 10:
00442                   if ((0xf000000000000L & l) != 0L)
00443                      jjstateSet[jjnewStateCnt++] = 11;
00444                   break;
00445                case 11:
00446                   if ((0xff000000000000L & l) != 0L)
00447                      jjCheckNAdd(9);
00448                   break;
00449                case 12:
00450                   if (curChar != 36)
00451                      break;
00452                   if (kind > 20)
00453                      kind = 20;
00454                   jjCheckNAdd(13);
00455                   break;
00456                case 13:
00457                   if ((0x3ff001000000000L & l) == 0L)
00458                      break;
00459                   if (kind > 20)
00460                      kind = 20;
00461                   jjCheckNAdd(13);
00462                   break;
00463                case 14:
00464                   if (curChar != 48)
00465                      break;
00466                   if (kind > 15)
00467                      kind = 15;
00468                   jjCheckNAddStates(6, 8);
00469                   break;
00470                case 16:
00471                   if ((0x3ff000000000000L & l) == 0L)
00472                      break;
00473                   if (kind > 15)
00474                      kind = 15;
00475                   jjCheckNAddTwoStates(16, 2);
00476                   break;
00477                case 17:
00478                   if ((0xff000000000000L & l) == 0L)
00479                      break;
00480                   if (kind > 15)
00481                      kind = 15;
00482                   jjCheckNAddTwoStates(17, 2);
00483                   break;
00484                case 18:
00485                   if (curChar == 47)
00486                      jjAddStates(3, 5);
00487                   break;
00488                case 20:
00489                   if ((0xffffffffffffdbffL & l) != 0L)
00490                      jjCheckNAddStates(0, 2);
00491                   break;
00492                case 21:
00493                   if ((0x2400L & l) != 0L && kind > 6)
00494                      kind = 6;
00495                   break;
00496                case 22:
00497                   if (curChar == 10 && kind > 6)
00498                      kind = 6;
00499                   break;
00500                case 23:
00501                   if (curChar == 13)
00502                      jjstateSet[jjnewStateCnt++] = 22;
00503                   break;
00504                case 24:
00505                   if (curChar == 42)
00506                      jjCheckNAddTwoStates(25, 26);
00507                   break;
00508                case 25:
00509                   if ((0xfffffbffffffffffL & l) != 0L)
00510                      jjCheckNAddTwoStates(25, 26);
00511                   break;
00512                case 26:
00513                   if (curChar == 42)
00514                      jjCheckNAddStates(16, 18);
00515                   break;
00516                case 27:
00517                   if ((0xffff7bffffffffffL & l) != 0L)
00518                      jjCheckNAddTwoStates(28, 26);
00519                   break;
00520                case 28:
00521                   if ((0xfffffbffffffffffL & l) != 0L)
00522                      jjCheckNAddTwoStates(28, 26);
00523                   break;
00524                case 29:
00525                   if (curChar == 47 && kind > 7)
00526                      kind = 7;
00527                   break;
00528                case 30:
00529                   if (curChar == 42)
00530                      jjstateSet[jjnewStateCnt++] = 24;
00531                   break;
00532                case 31:
00533                   if (curChar == 42)
00534                      jjCheckNAddTwoStates(32, 33);
00535                   break;
00536                case 32:
00537                   if ((0xfffffbffffffffffL & l) != 0L)
00538                      jjCheckNAddTwoStates(32, 33);
00539                   break;
00540                case 33:
00541                   if (curChar == 42)
00542                      jjCheckNAddStates(19, 21);
00543                   break;
00544                case 34:
00545                   if ((0xffff7bffffffffffL & l) != 0L)
00546                      jjCheckNAddTwoStates(35, 33);
00547                   break;
00548                case 35:
00549                   if ((0xfffffbffffffffffL & l) != 0L)
00550                      jjCheckNAddTwoStates(35, 33);
00551                   break;
00552                case 36:
00553                   if (curChar == 47 && kind > 8)
00554                      kind = 8;
00555                   break;
00556                default : break;
00557             }
00558          } while(i != startsAt);
00559       }
00560       else if (curChar < 128)
00561       {
00562          long l = 1L << (curChar & 077);
00563          MatchLoop: do
00564          {
00565             switch(jjstateSet[--i])
00566             {
00567                case 0:
00568                case 13:
00569                   if ((0x7fffffe87fffffeL & l) == 0L)
00570                      break;
00571                   if (kind > 20)
00572                      kind = 20;
00573                   jjCheckNAdd(13);
00574                   break;
00575                case 2:
00576                   if ((0x100000001000L & l) != 0L && kind > 15)
00577                      kind = 15;
00578                   break;
00579                case 4:
00580                   if ((0xffffffffefffffffL & l) != 0L)
00581                      jjCheckNAddStates(9, 11);
00582                   break;
00583                case 5:
00584                   if (curChar == 92)
00585                      jjAddStates(22, 24);
00586                   break;
00587                case 6:
00588                   if ((0x14404410000000L & l) != 0L)
00589                      jjCheckNAddStates(9, 11);
00590                   break;
00591                case 15:
00592                   if ((0x100000001000000L & l) != 0L)
00593                      jjCheckNAdd(16);
00594                   break;
00595                case 16:
00596                   if ((0x7e0000007eL & l) == 0L)
00597                      break;
00598                   if (kind > 15)
00599                      kind = 15;
00600                   jjCheckNAddTwoStates(16, 2);
00601                   break;
00602                case 20:
00603                   jjAddStates(0, 2);
00604                   break;
00605                case 25:
00606                   jjCheckNAddTwoStates(25, 26);
00607                   break;
00608                case 27:
00609                case 28:
00610                   jjCheckNAddTwoStates(28, 26);
00611                   break;
00612                case 32:
00613                   jjCheckNAddTwoStates(32, 33);
00614                   break;
00615                case 34:
00616                case 35:
00617                   jjCheckNAddTwoStates(35, 33);
00618                   break;
00619                default : break;
00620             }
00621          } while(i != startsAt);
00622       }
00623       else
00624       {
00625          int hiByte = (int)(curChar >> 8);
00626          int i1 = hiByte >> 6;
00627          long l1 = 1L << (hiByte & 077);
00628          int i2 = (curChar & 0xff) >> 6;
00629          long l2 = 1L << (curChar & 077);
00630          MatchLoop: do
00631          {
00632             switch(jjstateSet[--i])
00633             {
00634                case 0:
00635                case 13:
00636                   if (!jjCanMove_1(hiByte, i1, i2, l1, l2))
00637                      break;
00638                   if (kind > 20)
00639                      kind = 20;
00640                   jjCheckNAdd(13);
00641                   break;
00642                case 4:
00643                   if (jjCanMove_0(hiByte, i1, i2, l1, l2))
00644                      jjAddStates(9, 11);
00645                   break;
00646                case 20:
00647                   if (jjCanMove_0(hiByte, i1, i2, l1, l2))
00648                      jjAddStates(0, 2);
00649                   break;
00650                case 25:
00651                   if (jjCanMove_0(hiByte, i1, i2, l1, l2))
00652                      jjCheckNAddTwoStates(25, 26);
00653                   break;
00654                case 27:
00655                case 28:
00656                   if (jjCanMove_0(hiByte, i1, i2, l1, l2))
00657                      jjCheckNAddTwoStates(28, 26);
00658                   break;
00659                case 32:
00660                   if (jjCanMove_0(hiByte, i1, i2, l1, l2))
00661                      jjCheckNAddTwoStates(32, 33);
00662                   break;
00663                case 34:
00664                case 35:
00665                   if (jjCanMove_0(hiByte, i1, i2, l1, l2))
00666                      jjCheckNAddTwoStates(35, 33);
00667                   break;
00668                default : break;
00669             }
00670          } while(i != startsAt);
00671       }
00672       if (kind != 0x7fffffff)
00673       {
00674          jjmatchedKind = kind;
00675          jjmatchedPos = curPos;
00676          kind = 0x7fffffff;
00677       }
00678       ++curPos;
00679       if ((i = jjnewStateCnt) == (startsAt = 37 - (jjnewStateCnt = startsAt)))
00680          return curPos;
00681       try { curChar = input_stream.readChar(); }
00682       catch(java.io.IOException e) { return curPos; }
00683    }
00684 }
00685 static final int[] jjnextStates = {
00686    20, 21, 23, 19, 30, 31, 15, 17, 2, 4, 5, 7, 4, 5, 9, 7, 
00687    26, 27, 29, 33, 34, 36, 6, 8, 10, 
00688 };
00689 private static final boolean jjCanMove_0(int hiByte, int i1, int i2, long l1, long l2)
00690 {
00691    switch(hiByte)
00692    {
00693       case 0:
00694          return ((jjbitVec2[i2] & l2) != 0L);
00695       default : 
00696          if ((jjbitVec0[i1] & l1) != 0L)
00697             return true;
00698          return false;
00699    }
00700 }
00701 private static final boolean jjCanMove_1(int hiByte, int i1, int i2, long l1, long l2)
00702 {
00703    switch(hiByte)
00704    {
00705       case 0:
00706          return ((jjbitVec4[i2] & l2) != 0L);
00707       case 48:
00708          return ((jjbitVec5[i2] & l2) != 0L);
00709       case 49:
00710          return ((jjbitVec6[i2] & l2) != 0L);
00711       case 51:
00712          return ((jjbitVec7[i2] & l2) != 0L);
00713       case 61:
00714          return ((jjbitVec8[i2] & l2) != 0L);
00715       default : 
00716          if ((jjbitVec3[i1] & l1) != 0L)
00717             return true;
00718          return false;
00719    }
00720 }
00721 public static final String[] jjstrLiteralImages = {
00722 "", null, null, null, null, null, null, null, null, "\141\156\144", 
00723 "\157\162", "\156\157\164", "\154\145\156\147\164\150", "\164\162\165\145", 
00724 "\146\141\154\163\145", null, null, null, null, null, null, null, null, "\50", "\51", "\173", "\175", 
00725 "\133", "\135", "\73", "\54", "\56", "\75", "\76", "\74", "\41", "\176", "\77", "\72", 
00726 "\75\75", "\74\75", "\76\75", "\41\75", "\174\174", "\46\46", "\53\53", "\53", "\55", 
00727 "\52", "\57", "\46", "\174", "\136", "\45", };
00728 public static final String[] lexStateNames = {
00729    "DEFAULT", 
00730 };
00731 static final long[] jjtoToken = {
00732    0x3fffffff98fe01L, 
00733 };
00734 static final long[] jjtoSkip = {
00735    0x1feL, 
00736 };
00737 static final long[] jjtoSpecial = {
00738    0x1c0L, 
00739 };
00740 static protected JavaCharStream input_stream;
00741 static private final int[] jjrounds = new int[37];
00742 static private final int[] jjstateSet = new int[74];
00743 static protected char curChar;
00744 public Exp1ParserTokenManager(JavaCharStream stream){
00745    if (input_stream != null)
00746       throw new TokenMgrError("ERROR: Second call to constructor of static lexer. You must use ReInit() to initialize the static variables.", TokenMgrError.STATIC_LEXER_ERROR);
00747    input_stream = stream;
00748 }
00749 public Exp1ParserTokenManager(JavaCharStream stream, int lexState){
00750    this(stream);
00751    SwitchTo(lexState);
00752 }
00753 static public void ReInit(JavaCharStream stream)
00754 {
00755    jjmatchedPos = jjnewStateCnt = 0;
00756    curLexState = defaultLexState;
00757    input_stream = stream;
00758    ReInitRounds();
00759 }
00760 static private final void ReInitRounds()
00761 {
00762    int i;
00763    jjround = 0x80000001;
00764    for (i = 37; i-- > 0;)
00765       jjrounds[i] = 0x80000000;
00766 }
00767 static public void ReInit(JavaCharStream stream, int lexState)
00768 {
00769    ReInit(stream);
00770    SwitchTo(lexState);
00771 }
00772 static public void SwitchTo(int lexState)
00773 {
00774    if (lexState >= 1 || lexState < 0)
00775       throw new TokenMgrError("Error: Ignoring invalid lexical state : " + lexState + ". State unchanged.", TokenMgrError.INVALID_LEXICAL_STATE);
00776    else
00777       curLexState = lexState;
00778 }
00779 
00780 static protected Token jjFillToken()
00781 {
00782    Token t = Token.newToken(jjmatchedKind);
00783    t.kind = jjmatchedKind;
00784    String im = jjstrLiteralImages[jjmatchedKind];
00785    t.image = (im == null) ? input_stream.GetImage() : im;
00786    t.beginLine = input_stream.getBeginLine();
00787    t.beginColumn = input_stream.getBeginColumn();
00788    t.endLine = input_stream.getEndLine();
00789    t.endColumn = input_stream.getEndColumn();
00790    return t;
00791 }
00792 
00793 static int curLexState = 0;
00794 static int defaultLexState = 0;
00795 static int jjnewStateCnt;
00796 static int jjround;
00797 static int jjmatchedPos;
00798 static int jjmatchedKind;
00799 
00800 public static Token getNextToken() 
00801 {
00802   int kind;
00803   Token specialToken = null;
00804   Token matchedToken;
00805   int curPos = 0;
00806 
00807   EOFLoop :
00808   for (;;)
00809   {   
00810    try   
00811    {     
00812       curChar = input_stream.BeginToken();
00813    }     
00814    catch(java.io.IOException e)
00815    {        
00816       jjmatchedKind = 0;
00817       matchedToken = jjFillToken();
00818       matchedToken.specialToken = specialToken;
00819       return matchedToken;
00820    }
00821 
00822    try { input_stream.backup(0);
00823       while (curChar <= 32 && (0x100003600L & (1L << curChar)) != 0L)
00824          curChar = input_stream.BeginToken();
00825    }
00826    catch (java.io.IOException e1) { continue EOFLoop; }
00827    jjmatchedKind = 0x7fffffff;
00828    jjmatchedPos = 0;
00829    curPos = jjMoveStringLiteralDfa0_0();
00830    if (jjmatchedKind != 0x7fffffff)
00831    {
00832       if (jjmatchedPos + 1 < curPos)
00833          input_stream.backup(curPos - jjmatchedPos - 1);
00834       if ((jjtoToken[jjmatchedKind >> 6] & (1L << (jjmatchedKind & 077))) != 0L)
00835       {
00836          matchedToken = jjFillToken();
00837          matchedToken.specialToken = specialToken;
00838          return matchedToken;
00839       }
00840       else
00841       {
00842          if ((jjtoSpecial[jjmatchedKind >> 6] & (1L << (jjmatchedKind & 077))) != 0L)
00843          {
00844             matchedToken = jjFillToken();
00845             if (specialToken == null)
00846                specialToken = matchedToken;
00847             else
00848             {
00849                matchedToken.specialToken = specialToken;
00850                specialToken = (specialToken.next = matchedToken);
00851             }
00852          }
00853          continue EOFLoop;
00854       }
00855    }
00856    int error_line = input_stream.getEndLine();
00857    int error_column = input_stream.getEndColumn();
00858    String error_after = null;
00859    boolean EOFSeen = false;
00860    try { input_stream.readChar(); input_stream.backup(1); }
00861    catch (java.io.IOException e1) {
00862       EOFSeen = true;
00863       error_after = curPos <= 1 ? "" : input_stream.GetImage();
00864       if (curChar == '\n' || curChar == '\r') {
00865          error_line++;
00866          error_column = 0;
00867       }
00868       else
00869          error_column++;
00870    }
00871    if (!EOFSeen) {
00872       input_stream.backup(1);
00873       error_after = curPos <= 1 ? "" : input_stream.GetImage();
00874    }
00875    throw new TokenMgrError(EOFSeen, curLexState, error_line, error_column, error_after, curChar, TokenMgrError.LEXICAL_ERROR);
00876   }
00877 }
00878 
00879 }

Generated on Tue Sep 12 21:51:58 2006 for PLP by  doxygen 1.4.7