src/java.management.rest/share/classes/com/oracle/jmx/remote/rest/json/parser/JSONParserTokenManager.java
author hb
Tue, 29 Aug 2017 13:34:15 +0530
branchjmx-rest-api
changeset 55985 0c5a02edfdef
child 56002 60ab3b595a8e
permissions -rw-r--r--
REST Adapter Initial commit 1. Unit tested and working GET/POST interfaces 2. Unit tested and working JSON parser
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
55985
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
     1
/* Generated By:JavaCC: Do not edit this line. JSONParserTokenManager.java */
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
     2
package com.oracle.jmx.remote.rest.json.parser;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
     3
import java.io.StringReader;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
     4
import com.oracle.jmx.remote.rest.json.*;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
     5
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
     6
/** Token Manager. */
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
     7
public class JSONParserTokenManager implements JSONParserConstants
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
     8
{
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
     9
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    10
  /** Debug output. */
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    11
  public  java.io.PrintStream debugStream = System.out;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    12
  /** Set debug output. */
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    13
  public  void setDebugStream(java.io.PrintStream ds) { debugStream = ds; }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    14
private final int jjStopStringLiteralDfa_0(int pos, long active0)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    15
{
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    16
   switch (pos)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    17
   {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    18
      case 0:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    19
         if ((active0 & 0x8000L) != 0L)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    20
         {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    21
            jjmatchedKind = 16;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    22
            return 14;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    23
         }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    24
         return -1;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    25
      case 1:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    26
         if ((active0 & 0x8000L) != 0L)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    27
         {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    28
            jjmatchedKind = 16;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    29
            jjmatchedPos = 1;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    30
            return 14;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    31
         }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    32
         return -1;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    33
      case 2:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    34
         if ((active0 & 0x8000L) != 0L)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    35
         {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    36
            jjmatchedKind = 16;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    37
            jjmatchedPos = 2;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    38
            return 14;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    39
         }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    40
         return -1;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    41
      default :
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    42
         return -1;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    43
   }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    44
}
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    45
private final int jjStartNfa_0(int pos, long active0)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    46
{
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    47
   return jjMoveNfa_0(jjStopStringLiteralDfa_0(pos, active0), pos + 1);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    48
}
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    49
private int jjStopAtPos(int pos, int kind)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    50
{
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    51
   jjmatchedKind = kind;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    52
   jjmatchedPos = pos;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    53
   return pos + 1;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    54
}
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    55
private int jjMoveStringLiteralDfa0_0()
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    56
{
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    57
   switch(curChar)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    58
   {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    59
      case 44:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    60
         return jjStopAtPos(0, 19);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    61
      case 58:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    62
         return jjStopAtPos(0, 18);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    63
      case 91:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    64
         return jjStopAtPos(0, 21);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    65
      case 93:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    66
         return jjStopAtPos(0, 22);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    67
      case 110:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    68
         return jjMoveStringLiteralDfa1_0(0x8000L);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    69
      case 123:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    70
         return jjStopAtPos(0, 17);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    71
      case 125:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    72
         return jjStopAtPos(0, 20);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    73
      default :
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    74
         return jjMoveNfa_0(0, 0);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    75
   }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    76
}
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    77
private int jjMoveStringLiteralDfa1_0(long active0)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    78
{
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    79
   try { curChar = input_stream.readChar(); }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    80
   catch(java.io.IOException e) {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    81
      jjStopStringLiteralDfa_0(0, active0);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    82
      return 1;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    83
   }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    84
   switch(curChar)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    85
   {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    86
      case 117:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    87
         return jjMoveStringLiteralDfa2_0(active0, 0x8000L);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    88
      default :
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    89
         break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    90
   }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    91
   return jjStartNfa_0(0, active0);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    92
}
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    93
private int jjMoveStringLiteralDfa2_0(long old0, long active0)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    94
{
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    95
   if (((active0 &= old0)) == 0L)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    96
      return jjStartNfa_0(0, old0);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    97
   try { curChar = input_stream.readChar(); }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    98
   catch(java.io.IOException e) {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
    99
      jjStopStringLiteralDfa_0(1, active0);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   100
      return 2;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   101
   }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   102
   switch(curChar)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   103
   {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   104
      case 108:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   105
         return jjMoveStringLiteralDfa3_0(active0, 0x8000L);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   106
      default :
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   107
         break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   108
   }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   109
   return jjStartNfa_0(1, active0);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   110
}
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   111
private int jjMoveStringLiteralDfa3_0(long old0, long active0)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   112
{
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   113
   if (((active0 &= old0)) == 0L)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   114
      return jjStartNfa_0(1, old0);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   115
   try { curChar = input_stream.readChar(); }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   116
   catch(java.io.IOException e) {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   117
      jjStopStringLiteralDfa_0(2, active0);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   118
      return 3;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   119
   }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   120
   switch(curChar)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   121
   {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   122
      case 108:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   123
         if ((active0 & 0x8000L) != 0L)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   124
            return jjStartNfaWithStates_0(3, 15, 14);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   125
         break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   126
      default :
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   127
         break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   128
   }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   129
   return jjStartNfa_0(2, active0);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   130
}
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   131
private int jjStartNfaWithStates_0(int pos, int kind, int state)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   132
{
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   133
   jjmatchedKind = kind;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   134
   jjmatchedPos = pos;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   135
   try { curChar = input_stream.readChar(); }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   136
   catch(java.io.IOException e) { return pos + 1; }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   137
   return jjMoveNfa_0(state, pos + 1);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   138
}
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   139
static final long[] jjbitVec0 = {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   140
   0xfffffffffffffffeL, 0xffffffffffffffffL, 0xffffffffffffffffL, 0xffffffffffffffffL
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   141
};
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   142
static final long[] jjbitVec2 = {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   143
   0x0L, 0x0L, 0xffffffffffffffffL, 0xffffffffffffffffL
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   144
};
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   145
private int jjMoveNfa_0(int startState, int curPos)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   146
{
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   147
   int startsAt = 0;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   148
   jjnewStateCnt = 31;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   149
   int i = 1;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   150
   jjstateSet[0] = startState;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   151
   int kind = 0x7fffffff;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   152
   for (;;)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   153
   {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   154
      if (++jjround == 0x7fffffff)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   155
         ReInitRounds();
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   156
      if (curChar < 64)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   157
      {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   158
         long l = 1L << curChar;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   159
         do
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   160
         {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   161
            switch(jjstateSet[--i])
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   162
            {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   163
               case 0:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   164
                  if ((0x3ff000000000000L & l) != 0L)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   165
                  {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   166
                     if (kind > 7)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   167
                        kind = 7;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   168
                     jjCheckNAddStates(0, 6);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   169
                  }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   170
                  else if (curChar == 45)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   171
                     jjCheckNAddStates(7, 10);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   172
                  else if (curChar == 34)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   173
                     jjCheckNAddStates(11, 13);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   174
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   175
               case 1:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   176
                  if ((0xfffffffbffffffffL & l) != 0L)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   177
                     jjCheckNAddStates(11, 13);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   178
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   179
               case 3:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   180
                  if (curChar == 34)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   181
                     jjCheckNAddStates(11, 13);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   182
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   183
               case 4:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   184
                  if (curChar == 34 && kind > 13)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   185
                     kind = 13;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   186
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   187
               case 14:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   188
                  if ((0x3ff200000000000L & l) == 0L)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   189
                     break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   190
                  if (kind > 16)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   191
                     kind = 16;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   192
                  jjstateSet[jjnewStateCnt++] = 14;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   193
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   194
               case 15:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   195
                  if (curChar == 45)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   196
                     jjCheckNAddStates(7, 10);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   197
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   198
               case 16:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   199
                  if ((0x3ff000000000000L & l) == 0L)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   200
                     break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   201
                  if (kind > 7)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   202
                     kind = 7;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   203
                  jjCheckNAdd(16);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   204
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   205
               case 17:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   206
                  if ((0x3ff000000000000L & l) != 0L)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   207
                     jjCheckNAddTwoStates(17, 18);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   208
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   209
               case 18:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   210
                  if (curChar == 46)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   211
                     jjCheckNAdd(19);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   212
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   213
               case 19:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   214
                  if ((0x3ff000000000000L & l) == 0L)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   215
                     break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   216
                  if (kind > 8)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   217
                     kind = 8;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   218
                  jjCheckNAdd(19);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   219
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   220
               case 20:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   221
                  if ((0x3ff000000000000L & l) != 0L)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   222
                     jjCheckNAddTwoStates(20, 21);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   223
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   224
               case 22:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   225
                  if ((0x280000000000L & l) != 0L)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   226
                     jjCheckNAdd(23);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   227
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   228
               case 23:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   229
                  if ((0x3ff000000000000L & l) == 0L)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   230
                     break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   231
                  if (kind > 8)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   232
                     kind = 8;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   233
                  jjCheckNAdd(23);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   234
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   235
               case 24:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   236
                  if ((0x3ff000000000000L & l) != 0L)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   237
                     jjCheckNAddTwoStates(24, 25);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   238
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   239
               case 25:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   240
                  if (curChar == 46)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   241
                     jjCheckNAdd(26);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   242
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   243
               case 26:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   244
                  if ((0x3ff000000000000L & l) != 0L)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   245
                     jjCheckNAddTwoStates(26, 27);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   246
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   247
               case 28:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   248
                  if ((0x280000000000L & l) != 0L)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   249
                     jjCheckNAdd(29);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   250
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   251
               case 29:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   252
                  if ((0x3ff000000000000L & l) == 0L)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   253
                     break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   254
                  if (kind > 8)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   255
                     kind = 8;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   256
                  jjCheckNAdd(29);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   257
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   258
               case 30:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   259
                  if ((0x3ff000000000000L & l) == 0L)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   260
                     break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   261
                  if (kind > 7)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   262
                     kind = 7;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   263
                  jjCheckNAddStates(0, 6);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   264
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   265
               default : break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   266
            }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   267
         } while(i != startsAt);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   268
      }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   269
      else if (curChar < 128)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   270
      {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   271
         long l = 1L << (curChar & 077);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   272
         do
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   273
         {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   274
            switch(jjstateSet[--i])
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   275
            {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   276
               case 0:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   277
                  if ((0x7fffffe87fffffeL & l) != 0L)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   278
                  {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   279
                     if (kind > 16)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   280
                        kind = 16;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   281
                     jjCheckNAdd(14);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   282
                  }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   283
                  if (curChar == 102)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   284
                     jjstateSet[jjnewStateCnt++] = 11;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   285
                  else if (curChar == 116)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   286
                     jjstateSet[jjnewStateCnt++] = 7;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   287
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   288
               case 1:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   289
                  if ((0xffffffffefffffffL & l) != 0L)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   290
                     jjCheckNAddStates(11, 13);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   291
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   292
               case 2:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   293
                  if (curChar == 92)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   294
                     jjstateSet[jjnewStateCnt++] = 3;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   295
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   296
               case 3:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   297
                  if ((0x14404410000000L & l) != 0L)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   298
                     jjCheckNAddStates(11, 13);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   299
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   300
               case 5:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   301
                  if (curChar == 101 && kind > 14)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   302
                     kind = 14;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   303
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   304
               case 6:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   305
                  if (curChar == 117)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   306
                     jjCheckNAdd(5);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   307
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   308
               case 7:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   309
                  if (curChar == 114)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   310
                     jjstateSet[jjnewStateCnt++] = 6;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   311
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   312
               case 8:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   313
                  if (curChar == 116)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   314
                     jjstateSet[jjnewStateCnt++] = 7;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   315
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   316
               case 9:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   317
                  if (curChar == 115)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   318
                     jjCheckNAdd(5);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   319
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   320
               case 10:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   321
                  if (curChar == 108)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   322
                     jjstateSet[jjnewStateCnt++] = 9;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   323
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   324
               case 11:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   325
                  if (curChar == 97)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   326
                     jjstateSet[jjnewStateCnt++] = 10;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   327
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   328
               case 12:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   329
                  if (curChar == 102)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   330
                     jjstateSet[jjnewStateCnt++] = 11;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   331
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   332
               case 13:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   333
               case 14:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   334
                  if ((0x7fffffe87fffffeL & l) == 0L)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   335
                     break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   336
                  if (kind > 16)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   337
                     kind = 16;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   338
                  jjCheckNAdd(14);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   339
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   340
               case 21:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   341
                  if ((0x2000000020L & l) != 0L)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   342
                     jjAddStates(14, 15);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   343
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   344
               case 27:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   345
                  if ((0x2000000020L & l) != 0L)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   346
                     jjAddStates(16, 17);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   347
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   348
               default : break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   349
            }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   350
         } while(i != startsAt);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   351
      }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   352
      else
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   353
      {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   354
         int hiByte = (curChar >> 8);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   355
         int i1 = hiByte >> 6;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   356
         long l1 = 1L << (hiByte & 077);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   357
         int i2 = (curChar & 0xff) >> 6;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   358
         long l2 = 1L << (curChar & 077);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   359
         do
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   360
         {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   361
            switch(jjstateSet[--i])
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   362
            {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   363
               case 1:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   364
                  if (jjCanMove_0(hiByte, i1, i2, l1, l2))
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   365
                     jjAddStates(11, 13);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   366
                  break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   367
               default : break;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   368
            }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   369
         } while(i != startsAt);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   370
      }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   371
      if (kind != 0x7fffffff)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   372
      {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   373
         jjmatchedKind = kind;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   374
         jjmatchedPos = curPos;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   375
         kind = 0x7fffffff;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   376
      }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   377
      ++curPos;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   378
      if ((i = jjnewStateCnt) == (startsAt = 31 - (jjnewStateCnt = startsAt)))
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   379
         return curPos;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   380
      try { curChar = input_stream.readChar(); }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   381
      catch(java.io.IOException e) { return curPos; }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   382
   }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   383
}
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   384
static final int[] jjnextStates = {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   385
   16, 17, 18, 20, 21, 24, 25, 16, 17, 20, 24, 1, 2, 4, 22, 23, 
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   386
   28, 29, 
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   387
};
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   388
private static final boolean jjCanMove_0(int hiByte, int i1, int i2, long l1, long l2)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   389
{
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   390
   switch(hiByte)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   391
   {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   392
      case 0:
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   393
         return ((jjbitVec2[i2] & l2) != 0L);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   394
      default :
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   395
         if ((jjbitVec0[i1] & l1) != 0L)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   396
            return true;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   397
         return false;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   398
   }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   399
}
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   400
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   401
/** Token literal values. */
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   402
public static final String[] jjstrLiteralImages = {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   403
"", null, null, null, null, null, null, null, null, null, null, null, null, 
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   404
null, null, "\156\165\154\154", null, "\173", "\72", "\54", "\175", "\133", "\135", };
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   405
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   406
/** Lexer state names. */
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   407
public static final String[] lexStateNames = {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   408
   "DEFAULT",
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   409
};
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   410
static final long[] jjtoToken = {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   411
   0x7fe181L, 
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   412
};
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   413
static final long[] jjtoSkip = {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   414
   0x7eL, 
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   415
};
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   416
protected JavaCharStream input_stream;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   417
private final int[] jjrounds = new int[31];
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   418
private final int[] jjstateSet = new int[62];
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   419
protected char curChar;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   420
/** Constructor. */
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   421
public JSONParserTokenManager(JavaCharStream stream){
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   422
   if (JavaCharStream.staticFlag)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   423
      throw new Error("ERROR: Cannot use a static CharStream class with a non-static lexical analyzer.");
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   424
   input_stream = stream;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   425
}
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   426
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   427
/** Constructor. */
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   428
public JSONParserTokenManager(JavaCharStream stream, int lexState){
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   429
   this(stream);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   430
   SwitchTo(lexState);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   431
}
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   432
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   433
/** Reinitialise parser. */
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   434
public void ReInit(JavaCharStream stream)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   435
{
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   436
   jjmatchedPos = jjnewStateCnt = 0;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   437
   curLexState = defaultLexState;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   438
   input_stream = stream;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   439
   ReInitRounds();
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   440
}
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   441
private void ReInitRounds()
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   442
{
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   443
   int i;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   444
   jjround = 0x80000001;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   445
   for (i = 31; i-- > 0;)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   446
      jjrounds[i] = 0x80000000;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   447
}
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   448
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   449
/** Reinitialise parser. */
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   450
public void ReInit(JavaCharStream stream, int lexState)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   451
{
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   452
   ReInit(stream);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   453
   SwitchTo(lexState);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   454
}
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   455
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   456
/** Switch to specified lex state. */
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   457
public void SwitchTo(int lexState)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   458
{
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   459
   if (lexState >= 1 || lexState < 0)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   460
      throw new TokenMgrError("Error: Ignoring invalid lexical state : " + lexState + ". State unchanged.", TokenMgrError.INVALID_LEXICAL_STATE);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   461
   else
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   462
      curLexState = lexState;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   463
}
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   464
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   465
protected Token jjFillToken()
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   466
{
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   467
   final Token t;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   468
   final String curTokenImage;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   469
   final int beginLine;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   470
   final int endLine;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   471
   final int beginColumn;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   472
   final int endColumn;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   473
   String im = jjstrLiteralImages[jjmatchedKind];
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   474
   curTokenImage = (im == null) ? input_stream.GetImage() : im;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   475
   beginLine = input_stream.getBeginLine();
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   476
   beginColumn = input_stream.getBeginColumn();
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   477
   endLine = input_stream.getEndLine();
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   478
   endColumn = input_stream.getEndColumn();
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   479
   t = Token.newToken(jjmatchedKind, curTokenImage);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   480
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   481
   t.beginLine = beginLine;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   482
   t.endLine = endLine;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   483
   t.beginColumn = beginColumn;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   484
   t.endColumn = endColumn;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   485
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   486
   return t;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   487
}
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   488
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   489
int curLexState = 0;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   490
int defaultLexState = 0;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   491
int jjnewStateCnt;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   492
int jjround;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   493
int jjmatchedPos;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   494
int jjmatchedKind;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   495
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   496
/** Get the next Token. */
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   497
public Token getNextToken() 
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   498
{
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   499
  Token matchedToken;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   500
  int curPos = 0;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   501
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   502
  EOFLoop :
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   503
  for (;;)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   504
  {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   505
   try
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   506
   {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   507
      curChar = input_stream.BeginToken();
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   508
   }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   509
   catch(java.io.IOException e)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   510
   {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   511
      jjmatchedKind = 0;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   512
      matchedToken = jjFillToken();
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   513
      return matchedToken;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   514
   }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   515
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   516
   try { input_stream.backup(0);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   517
      while (curChar <= 32 && (0x100003700L & (1L << curChar)) != 0L)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   518
         curChar = input_stream.BeginToken();
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   519
   }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   520
   catch (java.io.IOException e1) { continue EOFLoop; }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   521
   jjmatchedKind = 0x7fffffff;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   522
   jjmatchedPos = 0;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   523
   curPos = jjMoveStringLiteralDfa0_0();
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   524
   if (jjmatchedKind != 0x7fffffff)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   525
   {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   526
      if (jjmatchedPos + 1 < curPos)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   527
         input_stream.backup(curPos - jjmatchedPos - 1);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   528
      if ((jjtoToken[jjmatchedKind >> 6] & (1L << (jjmatchedKind & 077))) != 0L)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   529
      {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   530
         matchedToken = jjFillToken();
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   531
         return matchedToken;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   532
      }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   533
      else
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   534
      {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   535
         continue EOFLoop;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   536
      }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   537
   }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   538
   int error_line = input_stream.getEndLine();
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   539
   int error_column = input_stream.getEndColumn();
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   540
   String error_after = null;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   541
   boolean EOFSeen = false;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   542
   try { input_stream.readChar(); input_stream.backup(1); }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   543
   catch (java.io.IOException e1) {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   544
      EOFSeen = true;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   545
      error_after = curPos <= 1 ? "" : input_stream.GetImage();
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   546
      if (curChar == '\n' || curChar == '\r') {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   547
         error_line++;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   548
         error_column = 0;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   549
      }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   550
      else
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   551
         error_column++;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   552
   }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   553
   if (!EOFSeen) {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   554
      input_stream.backup(1);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   555
      error_after = curPos <= 1 ? "" : input_stream.GetImage();
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   556
   }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   557
   throw new TokenMgrError(EOFSeen, curLexState, error_line, error_column, error_after, curChar, TokenMgrError.LEXICAL_ERROR);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   558
  }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   559
}
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   560
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   561
private void jjCheckNAdd(int state)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   562
{
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   563
   if (jjrounds[state] != jjround)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   564
   {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   565
      jjstateSet[jjnewStateCnt++] = state;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   566
      jjrounds[state] = jjround;
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   567
   }
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   568
}
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   569
private void jjAddStates(int start, int end)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   570
{
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   571
   do {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   572
      jjstateSet[jjnewStateCnt++] = jjnextStates[start];
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   573
   } while (start++ != end);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   574
}
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   575
private void jjCheckNAddTwoStates(int state1, int state2)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   576
{
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   577
   jjCheckNAdd(state1);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   578
   jjCheckNAdd(state2);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   579
}
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   580
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   581
private void jjCheckNAddStates(int start, int end)
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   582
{
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   583
   do {
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   584
      jjCheckNAdd(jjnextStates[start]);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   585
   } while (start++ != end);
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   586
}
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   587
0c5a02edfdef REST Adapter Initial commit
hb
parents:
diff changeset
   588
}