1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/mobile/android/thirdparty/org/json/simple/parser/Yylex.java Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,688 @@ 1.4 +/* The following code was generated by JFlex 1.4.2 */ 1.5 + 1.6 +package org.json.simple.parser; 1.7 + 1.8 +class Yylex { 1.9 + 1.10 + /** This character denotes the end of file */ 1.11 + public static final int YYEOF = -1; 1.12 + 1.13 + /** initial size of the lookahead buffer */ 1.14 + private static final int ZZ_BUFFERSIZE = 16384; 1.15 + 1.16 + /** lexical states */ 1.17 + public static final int YYINITIAL = 0; 1.18 + public static final int STRING_BEGIN = 2; 1.19 + 1.20 + /** 1.21 + * ZZ_LEXSTATE[l] is the state in the DFA for the lexical state l 1.22 + * ZZ_LEXSTATE[l+1] is the state in the DFA for the lexical state l 1.23 + * at the beginning of a line 1.24 + * l is of the form l = 2*k, k a non negative integer 1.25 + */ 1.26 + private static final int ZZ_LEXSTATE[] = { 1.27 + 0, 0, 1, 1 1.28 + }; 1.29 + 1.30 + /** 1.31 + * Translates characters to character classes 1.32 + */ 1.33 + private static final String ZZ_CMAP_PACKED = 1.34 + "\11\0\1\7\1\7\2\0\1\7\22\0\1\7\1\0\1\11\10\0"+ 1.35 + "\1\6\1\31\1\2\1\4\1\12\12\3\1\32\6\0\4\1\1\5"+ 1.36 + "\1\1\24\0\1\27\1\10\1\30\3\0\1\22\1\13\2\1\1\21"+ 1.37 + "\1\14\5\0\1\23\1\0\1\15\3\0\1\16\1\24\1\17\1\20"+ 1.38 + "\5\0\1\25\1\0\1\26\uff82\0"; 1.39 + 1.40 + /** 1.41 + * Translates characters to character classes 1.42 + */ 1.43 + private static final char [] ZZ_CMAP = zzUnpackCMap(ZZ_CMAP_PACKED); 1.44 + 1.45 + /** 1.46 + * Translates DFA states to action switch labels. 1.47 + */ 1.48 + private static final int [] ZZ_ACTION = zzUnpackAction(); 1.49 + 1.50 + private static final String ZZ_ACTION_PACKED_0 = 1.51 + "\2\0\2\1\1\2\1\3\1\4\3\1\1\5\1\6"+ 1.52 + "\1\7\1\10\1\11\1\12\1\13\1\14\1\15\5\0"+ 1.53 + "\1\14\1\16\1\17\1\20\1\21\1\22\1\23\1\24"+ 1.54 + "\1\0\1\25\1\0\1\25\4\0\1\26\1\27\2\0"+ 1.55 + "\1\30"; 1.56 + 1.57 + private static int [] zzUnpackAction() { 1.58 + int [] result = new int[45]; 1.59 + int offset = 0; 1.60 + offset = zzUnpackAction(ZZ_ACTION_PACKED_0, offset, result); 1.61 + return result; 1.62 + } 1.63 + 1.64 + private static int zzUnpackAction(String packed, int offset, int [] result) { 1.65 + int i = 0; /* index in packed string */ 1.66 + int j = offset; /* index in unpacked array */ 1.67 + int l = packed.length(); 1.68 + while (i < l) { 1.69 + int count = packed.charAt(i++); 1.70 + int value = packed.charAt(i++); 1.71 + do result[j++] = value; while (--count > 0); 1.72 + } 1.73 + return j; 1.74 + } 1.75 + 1.76 + 1.77 + /** 1.78 + * Translates a state to a row index in the transition table 1.79 + */ 1.80 + private static final int [] ZZ_ROWMAP = zzUnpackRowMap(); 1.81 + 1.82 + private static final String ZZ_ROWMAP_PACKED_0 = 1.83 + "\0\0\0\33\0\66\0\121\0\154\0\207\0\66\0\242"+ 1.84 + "\0\275\0\330\0\66\0\66\0\66\0\66\0\66\0\66"+ 1.85 + "\0\363\0\u010e\0\66\0\u0129\0\u0144\0\u015f\0\u017a\0\u0195"+ 1.86 + "\0\66\0\66\0\66\0\66\0\66\0\66\0\66\0\66"+ 1.87 + "\0\u01b0\0\u01cb\0\u01e6\0\u01e6\0\u0201\0\u021c\0\u0237\0\u0252"+ 1.88 + "\0\66\0\66\0\u026d\0\u0288\0\66"; 1.89 + 1.90 + private static int [] zzUnpackRowMap() { 1.91 + int [] result = new int[45]; 1.92 + int offset = 0; 1.93 + offset = zzUnpackRowMap(ZZ_ROWMAP_PACKED_0, offset, result); 1.94 + return result; 1.95 + } 1.96 + 1.97 + private static int zzUnpackRowMap(String packed, int offset, int [] result) { 1.98 + int i = 0; /* index in packed string */ 1.99 + int j = offset; /* index in unpacked array */ 1.100 + int l = packed.length(); 1.101 + while (i < l) { 1.102 + int high = packed.charAt(i++) << 16; 1.103 + result[j++] = high | packed.charAt(i++); 1.104 + } 1.105 + return j; 1.106 + } 1.107 + 1.108 + /** 1.109 + * The transition table of the DFA 1.110 + */ 1.111 + private static final int ZZ_TRANS [] = { 1.112 + 2, 2, 3, 4, 2, 2, 2, 5, 2, 6, 1.113 + 2, 2, 7, 8, 2, 9, 2, 2, 2, 2, 1.114 + 2, 10, 11, 12, 13, 14, 15, 16, 16, 16, 1.115 + 16, 16, 16, 16, 16, 17, 18, 16, 16, 16, 1.116 + 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 1.117 + 16, 16, 16, 16, -1, -1, -1, -1, -1, -1, 1.118 + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.119 + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.120 + -1, -1, -1, -1, 4, -1, -1, -1, -1, -1, 1.121 + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.122 + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.123 + -1, 4, 19, 20, -1, -1, -1, -1, -1, -1, 1.124 + -1, -1, -1, -1, -1, 20, -1, -1, -1, -1, 1.125 + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.126 + -1, -1, 5, -1, -1, -1, -1, -1, -1, -1, 1.127 + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.128 + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.129 + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.130 + 21, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.131 + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.132 + -1, -1, -1, -1, -1, 22, -1, -1, -1, -1, 1.133 + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.134 + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.135 + 23, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.136 + -1, -1, -1, 16, 16, 16, 16, 16, 16, 16, 1.137 + 16, -1, -1, 16, 16, 16, 16, 16, 16, 16, 1.138 + 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 1.139 + -1, -1, -1, -1, -1, -1, -1, -1, 24, 25, 1.140 + 26, 27, 28, 29, 30, 31, 32, -1, -1, -1, 1.141 + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.142 + 33, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.143 + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.144 + -1, -1, -1, -1, -1, -1, 34, 35, -1, -1, 1.145 + 34, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.146 + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.147 + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.148 + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.149 + 36, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.150 + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.151 + -1, -1, -1, -1, -1, -1, -1, 37, -1, -1, 1.152 + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.153 + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.154 + -1, 38, -1, -1, -1, -1, -1, -1, -1, -1, 1.155 + -1, -1, -1, 39, -1, 39, -1, 39, -1, -1, 1.156 + -1, -1, -1, 39, 39, -1, -1, -1, -1, 39, 1.157 + 39, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.158 + -1, -1, 33, -1, 20, -1, -1, -1, -1, -1, 1.159 + -1, -1, -1, -1, -1, -1, 20, -1, -1, -1, 1.160 + -1, -1, -1, -1, -1, -1, -1, -1, -1, 35, 1.161 + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.162 + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.163 + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.164 + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.165 + -1, -1, -1, 38, -1, -1, -1, -1, -1, -1, 1.166 + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.167 + -1, -1, -1, -1, -1, -1, -1, -1, -1, 40, 1.168 + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.169 + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1.170 + -1, -1, -1, -1, 41, -1, -1, -1, -1, -1, 1.171 + -1, -1, -1, -1, -1, 42, -1, 42, -1, 42, 1.172 + -1, -1, -1, -1, -1, 42, 42, -1, -1, -1, 1.173 + -1, 42, 42, -1, -1, -1, -1, -1, -1, -1, 1.174 + -1, -1, 43, -1, 43, -1, 43, -1, -1, -1, 1.175 + -1, -1, 43, 43, -1, -1, -1, -1, 43, 43, 1.176 + -1, -1, -1, -1, -1, -1, -1, -1, -1, 44, 1.177 + -1, 44, -1, 44, -1, -1, -1, -1, -1, 44, 1.178 + 44, -1, -1, -1, -1, 44, 44, -1, -1, -1, 1.179 + -1, -1, -1, -1, -1, 1.180 + }; 1.181 + 1.182 + /* error codes */ 1.183 + private static final int ZZ_UNKNOWN_ERROR = 0; 1.184 + private static final int ZZ_NO_MATCH = 1; 1.185 + private static final int ZZ_PUSHBACK_2BIG = 2; 1.186 + 1.187 + /* error messages for the codes above */ 1.188 + private static final String ZZ_ERROR_MSG[] = { 1.189 + "Unkown internal scanner error", 1.190 + "Error: could not match input", 1.191 + "Error: pushback value was too large" 1.192 + }; 1.193 + 1.194 + /** 1.195 + * ZZ_ATTRIBUTE[aState] contains the attributes of state <code>aState</code> 1.196 + */ 1.197 + private static final int [] ZZ_ATTRIBUTE = zzUnpackAttribute(); 1.198 + 1.199 + private static final String ZZ_ATTRIBUTE_PACKED_0 = 1.200 + "\2\0\1\11\3\1\1\11\3\1\6\11\2\1\1\11"+ 1.201 + "\5\0\10\11\1\0\1\1\1\0\1\1\4\0\2\11"+ 1.202 + "\2\0\1\11"; 1.203 + 1.204 + private static int [] zzUnpackAttribute() { 1.205 + int [] result = new int[45]; 1.206 + int offset = 0; 1.207 + offset = zzUnpackAttribute(ZZ_ATTRIBUTE_PACKED_0, offset, result); 1.208 + return result; 1.209 + } 1.210 + 1.211 + private static int zzUnpackAttribute(String packed, int offset, int [] result) { 1.212 + int i = 0; /* index in packed string */ 1.213 + int j = offset; /* index in unpacked array */ 1.214 + int l = packed.length(); 1.215 + while (i < l) { 1.216 + int count = packed.charAt(i++); 1.217 + int value = packed.charAt(i++); 1.218 + do result[j++] = value; while (--count > 0); 1.219 + } 1.220 + return j; 1.221 + } 1.222 + 1.223 + /** the input device */ 1.224 + private java.io.Reader zzReader; 1.225 + 1.226 + /** the current state of the DFA */ 1.227 + private int zzState; 1.228 + 1.229 + /** the current lexical state */ 1.230 + private int zzLexicalState = YYINITIAL; 1.231 + 1.232 + /** this buffer contains the current text to be matched and is 1.233 + the source of the yytext() string */ 1.234 + private char zzBuffer[] = new char[ZZ_BUFFERSIZE]; 1.235 + 1.236 + /** the textposition at the last accepting state */ 1.237 + private int zzMarkedPos; 1.238 + 1.239 + /** the current text position in the buffer */ 1.240 + private int zzCurrentPos; 1.241 + 1.242 + /** startRead marks the beginning of the yytext() string in the buffer */ 1.243 + private int zzStartRead; 1.244 + 1.245 + /** endRead marks the last character in the buffer, that has been read 1.246 + from input */ 1.247 + private int zzEndRead; 1.248 + 1.249 + /** number of newlines encountered up to the start of the matched text */ 1.250 + private int yyline; 1.251 + 1.252 + /** the number of characters up to the start of the matched text */ 1.253 + private int yychar; 1.254 + 1.255 + /** 1.256 + * the number of characters from the last newline up to the start of the 1.257 + * matched text 1.258 + */ 1.259 + private int yycolumn; 1.260 + 1.261 + /** 1.262 + * zzAtBOL == true <=> the scanner is currently at the beginning of a line 1.263 + */ 1.264 + private boolean zzAtBOL = true; 1.265 + 1.266 + /** zzAtEOF == true <=> the scanner is at the EOF */ 1.267 + private boolean zzAtEOF; 1.268 + 1.269 + /* user code: */ 1.270 +private StringBuffer sb=new StringBuffer(); 1.271 + 1.272 +int getPosition(){ 1.273 + return yychar; 1.274 +} 1.275 + 1.276 + 1.277 + 1.278 + /** 1.279 + * Creates a new scanner 1.280 + * There is also a java.io.InputStream version of this constructor. 1.281 + * 1.282 + * @param in the java.io.Reader to read input from. 1.283 + */ 1.284 + Yylex(java.io.Reader in) { 1.285 + this.zzReader = in; 1.286 + } 1.287 + 1.288 + /** 1.289 + * Creates a new scanner. 1.290 + * There is also java.io.Reader version of this constructor. 1.291 + * 1.292 + * @param in the java.io.Inputstream to read input from. 1.293 + */ 1.294 + Yylex(java.io.InputStream in) { 1.295 + this(new java.io.InputStreamReader(in)); 1.296 + } 1.297 + 1.298 + /** 1.299 + * Unpacks the compressed character translation table. 1.300 + * 1.301 + * @param packed the packed character translation table 1.302 + * @return the unpacked character translation table 1.303 + */ 1.304 + private static char [] zzUnpackCMap(String packed) { 1.305 + char [] map = new char[0x10000]; 1.306 + int i = 0; /* index in packed string */ 1.307 + int j = 0; /* index in unpacked array */ 1.308 + while (i < 90) { 1.309 + int count = packed.charAt(i++); 1.310 + char value = packed.charAt(i++); 1.311 + do map[j++] = value; while (--count > 0); 1.312 + } 1.313 + return map; 1.314 + } 1.315 + 1.316 + 1.317 + /** 1.318 + * Refills the input buffer. 1.319 + * 1.320 + * @return <code>false</code>, iff there was new input. 1.321 + * 1.322 + * @exception java.io.IOException if any I/O-Error occurs 1.323 + */ 1.324 + private boolean zzRefill() throws java.io.IOException { 1.325 + 1.326 + /* first: make room (if you can) */ 1.327 + if (zzStartRead > 0) { 1.328 + System.arraycopy(zzBuffer, zzStartRead, 1.329 + zzBuffer, 0, 1.330 + zzEndRead-zzStartRead); 1.331 + 1.332 + /* translate stored positions */ 1.333 + zzEndRead-= zzStartRead; 1.334 + zzCurrentPos-= zzStartRead; 1.335 + zzMarkedPos-= zzStartRead; 1.336 + zzStartRead = 0; 1.337 + } 1.338 + 1.339 + /* is the buffer big enough? */ 1.340 + if (zzCurrentPos >= zzBuffer.length) { 1.341 + /* if not: blow it up */ 1.342 + char newBuffer[] = new char[zzCurrentPos*2]; 1.343 + System.arraycopy(zzBuffer, 0, newBuffer, 0, zzBuffer.length); 1.344 + zzBuffer = newBuffer; 1.345 + } 1.346 + 1.347 + /* finally: fill the buffer with new input */ 1.348 + int numRead = zzReader.read(zzBuffer, zzEndRead, 1.349 + zzBuffer.length-zzEndRead); 1.350 + 1.351 + if (numRead > 0) { 1.352 + zzEndRead+= numRead; 1.353 + return false; 1.354 + } 1.355 + // unlikely but not impossible: read 0 characters, but not at end of stream 1.356 + if (numRead == 0) { 1.357 + int c = zzReader.read(); 1.358 + if (c == -1) { 1.359 + return true; 1.360 + } else { 1.361 + zzBuffer[zzEndRead++] = (char) c; 1.362 + return false; 1.363 + } 1.364 + } 1.365 + 1.366 + // numRead < 0 1.367 + return true; 1.368 + } 1.369 + 1.370 + 1.371 + /** 1.372 + * Closes the input stream. 1.373 + */ 1.374 + public final void yyclose() throws java.io.IOException { 1.375 + zzAtEOF = true; /* indicate end of file */ 1.376 + zzEndRead = zzStartRead; /* invalidate buffer */ 1.377 + 1.378 + if (zzReader != null) 1.379 + zzReader.close(); 1.380 + } 1.381 + 1.382 + 1.383 + /** 1.384 + * Resets the scanner to read from a new input stream. 1.385 + * Does not close the old reader. 1.386 + * 1.387 + * All internal variables are reset, the old input stream 1.388 + * <b>cannot</b> be reused (internal buffer is discarded and lost). 1.389 + * Lexical state is set to <tt>ZZ_INITIAL</tt>. 1.390 + * 1.391 + * @param reader the new input stream 1.392 + */ 1.393 + public final void yyreset(java.io.Reader reader) { 1.394 + zzReader = reader; 1.395 + zzAtBOL = true; 1.396 + zzAtEOF = false; 1.397 + zzEndRead = zzStartRead = 0; 1.398 + zzCurrentPos = zzMarkedPos = 0; 1.399 + yyline = yychar = yycolumn = 0; 1.400 + zzLexicalState = YYINITIAL; 1.401 + } 1.402 + 1.403 + 1.404 + /** 1.405 + * Returns the current lexical state. 1.406 + */ 1.407 + public final int yystate() { 1.408 + return zzLexicalState; 1.409 + } 1.410 + 1.411 + 1.412 + /** 1.413 + * Enters a new lexical state 1.414 + * 1.415 + * @param newState the new lexical state 1.416 + */ 1.417 + public final void yybegin(int newState) { 1.418 + zzLexicalState = newState; 1.419 + } 1.420 + 1.421 + 1.422 + /** 1.423 + * Returns the text matched by the current regular expression. 1.424 + */ 1.425 + public final String yytext() { 1.426 + return new String( zzBuffer, zzStartRead, zzMarkedPos-zzStartRead ); 1.427 + } 1.428 + 1.429 + 1.430 + /** 1.431 + * Returns the character at position <tt>pos</tt> from the 1.432 + * matched text. 1.433 + * 1.434 + * It is equivalent to yytext().charAt(pos), but faster 1.435 + * 1.436 + * @param pos the position of the character to fetch. 1.437 + * A value from 0 to yylength()-1. 1.438 + * 1.439 + * @return the character at position pos 1.440 + */ 1.441 + public final char yycharat(int pos) { 1.442 + return zzBuffer[zzStartRead+pos]; 1.443 + } 1.444 + 1.445 + 1.446 + /** 1.447 + * Returns the length of the matched text region. 1.448 + */ 1.449 + public final int yylength() { 1.450 + return zzMarkedPos-zzStartRead; 1.451 + } 1.452 + 1.453 + 1.454 + /** 1.455 + * Reports an error that occured while scanning. 1.456 + * 1.457 + * In a wellformed scanner (no or only correct usage of 1.458 + * yypushback(int) and a match-all fallback rule) this method 1.459 + * will only be called with things that "Can't Possibly Happen". 1.460 + * If this method is called, something is seriously wrong 1.461 + * (e.g. a JFlex bug producing a faulty scanner etc.). 1.462 + * 1.463 + * Usual syntax/scanner level error handling should be done 1.464 + * in error fallback rules. 1.465 + * 1.466 + * @param errorCode the code of the errormessage to display 1.467 + */ 1.468 + private void zzScanError(int errorCode) { 1.469 + String message; 1.470 + try { 1.471 + message = ZZ_ERROR_MSG[errorCode]; 1.472 + } 1.473 + catch (ArrayIndexOutOfBoundsException e) { 1.474 + message = ZZ_ERROR_MSG[ZZ_UNKNOWN_ERROR]; 1.475 + } 1.476 + 1.477 + throw new Error(message); 1.478 + } 1.479 + 1.480 + 1.481 + /** 1.482 + * Pushes the specified amount of characters back into the input stream. 1.483 + * 1.484 + * They will be read again by then next call of the scanning method 1.485 + * 1.486 + * @param number the number of characters to be read again. 1.487 + * This number must not be greater than yylength()! 1.488 + */ 1.489 + public void yypushback(int number) { 1.490 + if ( number > yylength() ) 1.491 + zzScanError(ZZ_PUSHBACK_2BIG); 1.492 + 1.493 + zzMarkedPos -= number; 1.494 + } 1.495 + 1.496 + 1.497 + /** 1.498 + * Resumes scanning until the next regular expression is matched, 1.499 + * the end of input is encountered or an I/O-Error occurs. 1.500 + * 1.501 + * @return the next token 1.502 + * @exception java.io.IOException if any I/O-Error occurs 1.503 + */ 1.504 + public Yytoken yylex() throws java.io.IOException, ParseException { 1.505 + int zzInput; 1.506 + int zzAction; 1.507 + 1.508 + // cached fields: 1.509 + int zzCurrentPosL; 1.510 + int zzMarkedPosL; 1.511 + int zzEndReadL = zzEndRead; 1.512 + char [] zzBufferL = zzBuffer; 1.513 + char [] zzCMapL = ZZ_CMAP; 1.514 + 1.515 + int [] zzTransL = ZZ_TRANS; 1.516 + int [] zzRowMapL = ZZ_ROWMAP; 1.517 + int [] zzAttrL = ZZ_ATTRIBUTE; 1.518 + 1.519 + while (true) { 1.520 + zzMarkedPosL = zzMarkedPos; 1.521 + 1.522 + yychar+= zzMarkedPosL-zzStartRead; 1.523 + 1.524 + zzAction = -1; 1.525 + 1.526 + zzCurrentPosL = zzCurrentPos = zzStartRead = zzMarkedPosL; 1.527 + 1.528 + zzState = ZZ_LEXSTATE[zzLexicalState]; 1.529 + 1.530 + 1.531 + zzForAction: { 1.532 + while (true) { 1.533 + 1.534 + if (zzCurrentPosL < zzEndReadL) 1.535 + zzInput = zzBufferL[zzCurrentPosL++]; 1.536 + else if (zzAtEOF) { 1.537 + zzInput = YYEOF; 1.538 + break zzForAction; 1.539 + } 1.540 + else { 1.541 + // store back cached positions 1.542 + zzCurrentPos = zzCurrentPosL; 1.543 + zzMarkedPos = zzMarkedPosL; 1.544 + boolean eof = zzRefill(); 1.545 + // get translated positions and possibly new buffer 1.546 + zzCurrentPosL = zzCurrentPos; 1.547 + zzMarkedPosL = zzMarkedPos; 1.548 + zzBufferL = zzBuffer; 1.549 + zzEndReadL = zzEndRead; 1.550 + if (eof) { 1.551 + zzInput = YYEOF; 1.552 + break zzForAction; 1.553 + } 1.554 + else { 1.555 + zzInput = zzBufferL[zzCurrentPosL++]; 1.556 + } 1.557 + } 1.558 + int zzNext = zzTransL[ zzRowMapL[zzState] + zzCMapL[zzInput] ]; 1.559 + if (zzNext == -1) break zzForAction; 1.560 + zzState = zzNext; 1.561 + 1.562 + int zzAttributes = zzAttrL[zzState]; 1.563 + if ( (zzAttributes & 1) == 1 ) { 1.564 + zzAction = zzState; 1.565 + zzMarkedPosL = zzCurrentPosL; 1.566 + if ( (zzAttributes & 8) == 8 ) break zzForAction; 1.567 + } 1.568 + 1.569 + } 1.570 + } 1.571 + 1.572 + // store back cached position 1.573 + zzMarkedPos = zzMarkedPosL; 1.574 + 1.575 + switch (zzAction < 0 ? zzAction : ZZ_ACTION[zzAction]) { 1.576 + case 11: 1.577 + { sb.append(yytext()); 1.578 + } 1.579 + case 25: break; 1.580 + case 4: 1.581 + { sb.delete(0, sb.length());yybegin(STRING_BEGIN); 1.582 + } 1.583 + case 26: break; 1.584 + case 16: 1.585 + { sb.append('\b'); 1.586 + } 1.587 + case 27: break; 1.588 + case 6: 1.589 + { return new Yytoken(Yytoken.TYPE_RIGHT_BRACE,null); 1.590 + } 1.591 + case 28: break; 1.592 + case 23: 1.593 + { Boolean val=Boolean.valueOf(yytext()); return new Yytoken(Yytoken.TYPE_VALUE, val); 1.594 + } 1.595 + case 29: break; 1.596 + case 22: 1.597 + { return new Yytoken(Yytoken.TYPE_VALUE, null); 1.598 + } 1.599 + case 30: break; 1.600 + case 13: 1.601 + { yybegin(YYINITIAL);return new Yytoken(Yytoken.TYPE_VALUE, sb.toString()); 1.602 + } 1.603 + case 31: break; 1.604 + case 12: 1.605 + { sb.append('\\'); 1.606 + } 1.607 + case 32: break; 1.608 + case 21: 1.609 + { Double val=Double.valueOf(yytext()); return new Yytoken(Yytoken.TYPE_VALUE, val); 1.610 + } 1.611 + case 33: break; 1.612 + case 1: 1.613 + { throw new ParseException(yychar, ParseException.ERROR_UNEXPECTED_CHAR, new Character(yycharat(0))); 1.614 + } 1.615 + case 34: break; 1.616 + case 8: 1.617 + { return new Yytoken(Yytoken.TYPE_RIGHT_SQUARE,null); 1.618 + } 1.619 + case 35: break; 1.620 + case 19: 1.621 + { sb.append('\r'); 1.622 + } 1.623 + case 36: break; 1.624 + case 15: 1.625 + { sb.append('/'); 1.626 + } 1.627 + case 37: break; 1.628 + case 10: 1.629 + { return new Yytoken(Yytoken.TYPE_COLON,null); 1.630 + } 1.631 + case 38: break; 1.632 + case 14: 1.633 + { sb.append('"'); 1.634 + } 1.635 + case 39: break; 1.636 + case 5: 1.637 + { return new Yytoken(Yytoken.TYPE_LEFT_BRACE,null); 1.638 + } 1.639 + case 40: break; 1.640 + case 17: 1.641 + { sb.append('\f'); 1.642 + } 1.643 + case 41: break; 1.644 + case 24: 1.645 + { try{ 1.646 + int ch=Integer.parseInt(yytext().substring(2),16); 1.647 + sb.append((char)ch); 1.648 + } 1.649 + catch(Exception e){ 1.650 + throw new ParseException(yychar, ParseException.ERROR_UNEXPECTED_EXCEPTION, e); 1.651 + } 1.652 + } 1.653 + case 42: break; 1.654 + case 20: 1.655 + { sb.append('\t'); 1.656 + } 1.657 + case 43: break; 1.658 + case 7: 1.659 + { return new Yytoken(Yytoken.TYPE_LEFT_SQUARE,null); 1.660 + } 1.661 + case 44: break; 1.662 + case 2: 1.663 + { Long val=Long.valueOf(yytext()); return new Yytoken(Yytoken.TYPE_VALUE, val); 1.664 + } 1.665 + case 45: break; 1.666 + case 18: 1.667 + { sb.append('\n'); 1.668 + } 1.669 + case 46: break; 1.670 + case 9: 1.671 + { return new Yytoken(Yytoken.TYPE_COMMA,null); 1.672 + } 1.673 + case 47: break; 1.674 + case 3: 1.675 + { 1.676 + } 1.677 + case 48: break; 1.678 + default: 1.679 + if (zzInput == YYEOF && zzStartRead == zzCurrentPos) { 1.680 + zzAtEOF = true; 1.681 + return null; 1.682 + } 1.683 + else { 1.684 + zzScanError(ZZ_NO_MATCH); 1.685 + } 1.686 + } 1.687 + } 1.688 + } 1.689 + 1.690 + 1.691 +}