Clover icon

Coverage Report

  1. Project Clover database Thu Jan 15 2026 16:11:02 GMT
  2. Package org.json.simple.parser

File Yylex.java

 

Coverage histogram

../../../../img/srcFileCovDistChart7.png
31% of files have more coverage

Code metrics

44
249
21
1
757
514
94
0.38
11.86
21
4.48

Classes

Class Line # Actions
Yylex 7 249 94
0.681528768.2%
 

Contributing tests

This file is covered by 100 tests. .

Source view

1    /* The following code was generated by JFlex 1.4.2 */
2   
3    package org.json.simple.parser;
4   
5    import java.io.InputStreamReader;
6   
 
7    class Yylex
8    {
9   
10    /** This character denotes the end of file */
11    public static final int YYEOF = -1;
12   
13    /** initial size of the lookahead buffer */
14    private static final int ZZ_BUFFERSIZE = 16384;
15   
16    /** lexical states */
17    public static final int YYINITIAL = 0;
18   
19    public static final int STRING_BEGIN = 2;
20   
21    /**
22    * ZZ_LEXSTATE[l] is the state in the DFA for the lexical state l
23    * ZZ_LEXSTATE[l+1] is the state in the DFA for the lexical state l at the
24    * beginning of a line l is of the form l = 2*k, k a non negative integer
25    */
26    private static final int ZZ_LEXSTATE[] = { 0, 0, 1, 1 };
27   
28    /**
29    * Translates characters to character classes
30    */
31    private static final String ZZ_CMAP_PACKED = "\11\0\1\7\1\7\2\0\1\7\22\0\1\7\1\0\1\11\10\0"
32    + "\1\6\1\31\1\2\1\4\1\12\12\3\1\32\6\0\4\1\1\5"
33    + "\1\1\24\0\1\27\1\10\1\30\3\0\1\22\1\13\2\1\1\21"
34    + "\1\14\5\0\1\23\1\0\1\15\3\0\1\16\1\24\1\17\1\20"
35    + "\5\0\1\25\1\0\1\26\uff82\0";
36   
37    /**
38    * Translates characters to character classes
39    */
40    private static final char[] ZZ_CMAP = zzUnpackCMap(ZZ_CMAP_PACKED);
41   
42    /**
43    * Translates DFA states to action switch labels.
44    */
45    private static final int[] ZZ_ACTION = zzUnpackAction();
46   
47    private static final String ZZ_ACTION_PACKED_0 = "\2\0\2\1\1\2\1\3\1\4\3\1\1\5\1\6"
48    + "\1\7\1\10\1\11\1\12\1\13\1\14\1\15\5\0"
49    + "\1\14\1\16\1\17\1\20\1\21\1\22\1\23\1\24"
50    + "\1\0\1\25\1\0\1\25\4\0\1\26\1\27\2\0" + "\1\30";
51   
 
52  12 toggle private static int[] zzUnpackAction()
53    {
54  12 int[] result = new int[45];
55  12 int offset = 0;
56  12 offset = zzUnpackAction(ZZ_ACTION_PACKED_0, offset, result);
57  12 return result;
58    }
59   
 
60  12 toggle private static int zzUnpackAction(String packed, int offset, int[] result)
61    {
62  12 int i = 0; /* index in packed string */
63  12 int j = offset; /* index in unpacked array */
64  12 int l = packed.length();
65  408 while (i < l)
66    {
67  396 int count = packed.charAt(i++);
68  396 int value = packed.charAt(i++);
69  396 do
70  540 result[j++] = value;
71  540 while (--count > 0);
72    }
73  12 return j;
74    }
75   
76    /**
77    * Translates a state to a row index in the transition table
78    */
79    private static final int[] ZZ_ROWMAP = zzUnpackRowMap();
80   
81    private static final String ZZ_ROWMAP_PACKED_0 = "\0\0\0\33\0\66\0\121\0\154\0\207\0\66\0\242"
82    + "\0\275\0\330\0\66\0\66\0\66\0\66\0\66\0\66"
83    + "\0\363\0\u010e\0\66\0\u0129\0\u0144\0\u015f\0\u017a\0\u0195"
84    + "\0\66\0\66\0\66\0\66\0\66\0\66\0\66\0\66"
85    + "\0\u01b0\0\u01cb\0\u01e6\0\u01e6\0\u0201\0\u021c\0\u0237\0\u0252"
86    + "\0\66\0\66\0\u026d\0\u0288\0\66";
87   
 
88  12 toggle private static int[] zzUnpackRowMap()
89    {
90  12 int[] result = new int[45];
91  12 int offset = 0;
92  12 offset = zzUnpackRowMap(ZZ_ROWMAP_PACKED_0, offset, result);
93  12 return result;
94    }
95   
 
96  12 toggle private static int zzUnpackRowMap(String packed, int offset, int[] result)
97    {
98  12 int i = 0; /* index in packed string */
99  12 int j = offset; /* index in unpacked array */
100  12 int l = packed.length();
101  552 while (i < l)
102    {
103  540 int high = packed.codePointAt(i++) << 16;
104  540 result[j++] = high | packed.codePointAt(i++);
105    }
106  12 return j;
107    }
108   
109    /**
110    * The transition table of the DFA
111    */
112    private static final int ZZ_TRANS[] = { 2, 2, 3, 4, 2, 2, 2, 5, 2, 6, 2,
113    2, 7, 8, 2, 9, 2, 2, 2, 2, 2, 10, 11, 12, 13, 14, 15, 16, 16, 16, 16,
114    16, 16, 16, 16, 17, 18, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
115    16, 16, 16, 16, 16, 16, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
116    -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
117    -1, -1, 4, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
118    -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4, 19, 20, -1, -1, -1, -1,
119    -1, -1, -1, -1, -1, -1, -1, 20, -1, -1, -1, -1, -1, -1, -1, -1, -1,
120    -1, -1, -1, -1, -1, -1, -1, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
121    -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
122    -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 21, -1, -1, -1, -1, -1, -1,
123    -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
124    -1, 22, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
125    -1, -1, -1, -1, -1, -1, -1, -1, -1, 23, -1, -1, -1, -1, -1, -1, -1,
126    -1, -1, -1, -1, -1, 16, 16, 16, 16, 16, 16, 16, 16, -1, -1, 16, 16,
127    16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, -1, -1,
128    -1, -1, -1, -1, -1, -1, 24, 25, 26, 27, 28, 29, 30, 31, 32, -1, -1,
129    -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 33, -1, -1, -1, -1, -1,
130    -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
131    -1, -1, -1, 34, 35, -1, -1, 34, -1, -1, -1, -1, -1, -1, -1, -1, -1,
132    -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
133    -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 36, -1, -1, -1,
134    -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
135    -1, -1, -1, -1, -1, -1, 37, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
136    -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 38, -1, -1, -1,
137    -1, -1, -1, -1, -1, -1, -1, -1, 39, -1, 39, -1, 39, -1, -1, -1, -1,
138    -1, 39, 39, -1, -1, -1, -1, 39, 39, -1, -1, -1, -1, -1, -1, -1, -1,
139    -1, -1, -1, 33, -1, 20, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
140    20, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 35, -1, -1, -1,
141    -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
142    -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
143    -1, -1, -1, -1, -1, -1, 38, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
144    -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 40, -1,
145    -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
146    -1, -1, -1, -1, -1, -1, 41, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
147    42, -1, 42, -1, 42, -1, -1, -1, -1, -1, 42, 42, -1, -1, -1, -1, 42,
148    42, -1, -1, -1, -1, -1, -1, -1, -1, -1, 43, -1, 43, -1, 43, -1, -1,
149    -1, -1, -1, 43, 43, -1, -1, -1, -1, 43, 43, -1, -1, -1, -1, -1, -1,
150    -1, -1, -1, 44, -1, 44, -1, 44, -1, -1, -1, -1, -1, 44, 44, -1, -1,
151    -1, -1, 44, 44, -1, -1, -1, -1, -1, -1, -1, -1, };
152   
153    /* error codes */
154    private static final int ZZ_UNKNOWN_ERROR = 0;
155   
156    private static final int ZZ_NO_MATCH = 1;
157   
158    private static final int ZZ_PUSHBACK_2BIG = 2;
159   
160    /* error messages for the codes above */
161    private static final String ZZ_ERROR_MSG[] = {
162    "Unkown internal scanner error", "Error: could not match input",
163    "Error: pushback value was too large" };
164   
165    /**
166    * ZZ_ATTRIBUTE[aState] contains the attributes of state <code>aState</code>
167    */
168    private static final int[] ZZ_ATTRIBUTE = zzUnpackAttribute();
169   
170    private static final String ZZ_ATTRIBUTE_PACKED_0 = "\2\0\1\11\3\1\1\11\3\1\6\11\2\1\1\11"
171    + "\5\0\10\11\1\0\1\1\1\0\1\1\4\0\2\11" + "\2\0\1\11";
172   
 
173  12 toggle private static int[] zzUnpackAttribute()
174    {
175  12 int[] result = new int[45];
176  12 int offset = 0;
177  12 offset = zzUnpackAttribute(ZZ_ATTRIBUTE_PACKED_0, offset, result);
178  12 return result;
179    }
180   
 
181  12 toggle private static int zzUnpackAttribute(String packed, int offset,
182    int[] result)
183    {
184  12 int i = 0; /* index in packed string */
185  12 int j = offset; /* index in unpacked array */
186  12 int l = packed.length();
187  228 while (i < l)
188    {
189  216 int count = packed.charAt(i++);
190  216 int value = packed.charAt(i++);
191  216 do
192  540 result[j++] = value;
193  540 while (--count > 0);
194    }
195  12 return j;
196    }
197   
198    /** the input device */
199    private java.io.Reader zzReader;
200   
201    /** the current state of the DFA */
202    private int zzState;
203   
204    /** the current lexical state */
205    private int zzLexicalState = YYINITIAL;
206   
207    /**
208    * this buffer contains the current text to be matched and is the source of
209    * the yytext() string
210    */
211    private char zzBuffer[] = new char[ZZ_BUFFERSIZE];
212   
213    /** the textposition at the last accepting state */
214    private int zzMarkedPos;
215   
216    /** the current text position in the buffer */
217    private int zzCurrentPos;
218   
219    /** startRead marks the beginning of the yytext() string in the buffer */
220    private int zzStartRead;
221   
222    /**
223    * endRead marks the last character in the buffer, that has been read from
224    * input
225    */
226    private int zzEndRead;
227   
228    /** number of newlines encountered up to the start of the matched text */
229    private int yyline;
230   
231    /** the number of characters up to the start of the matched text */
232    private int yychar;
233   
234    /**
235    * the number of characters from the last newline up to the start of the
236    * matched text
237    */
238    private int yycolumn;
239   
240    /**
241    * zzAtBOL == true <=> the scanner is currently at the beginning of a line
242    */
243    private boolean zzAtBOL = true;
244   
245    /** zzAtEOF == true <=> the scanner is at the EOF */
246    private boolean zzAtEOF;
247   
248    /* user code: */
249    private StringBuilder sb = new StringBuilder();
250   
 
251  0 toggle int getPosition()
252    {
253  0 return yychar;
254    }
255   
256    /**
257    * Creates a new scanner There is also a java.io.InputStream version of this
258    * constructor.
259    *
260    * @param in
261    * the java.io.Reader to read input from.
262    */
 
263  252 toggle Yylex(java.io.Reader in)
264    {
265  252 this.zzReader = in;
266    }
267   
268    /**
269    * Creates a new scanner. There is also java.io.Reader version of this
270    * constructor.
271    *
272    * @param in
273    * the java.io.Inputstream to read input from.
274    */
 
275  0 toggle Yylex(java.io.InputStream in)
276    {
277  0 this(new InputStreamReader(in));
278    }
279   
280    /**
281    * Unpacks the compressed character translation table.
282    *
283    * @param packed
284    * the packed character translation table
285    * @return the unpacked character translation table
286    */
 
287  12 toggle private static char[] zzUnpackCMap(String packed)
288    {
289  12 char[] map = new char[0x10000];
290  12 int i = 0; /* index in packed string */
291  12 int j = 0; /* index in unpacked array */
292  552 while (i < 90)
293    {
294  540 int count = packed.charAt(i++);
295  540 char value = packed.charAt(i++);
296  540 do
297  786432 map[j++] = value;
298  786432 while (--count > 0);
299    }
300  12 return map;
301    }
302   
303    /**
304    * Refills the input buffer.
305    *
306    * @return <code>false</code>, iff there was new input.
307    *
308    * @exception java.io.IOException
309    * if any I/O-Error occurs
310    */
 
311  1920 toggle private boolean zzRefill() throws java.io.IOException
312    {
313   
314    /* first: make room (if you can) */
315  1920 if (zzStartRead > 0)
316    {
317  1668 System.arraycopy(zzBuffer, zzStartRead, zzBuffer, 0,
318    zzEndRead - zzStartRead);
319   
320    /* translate stored positions */
321  1668 zzEndRead -= zzStartRead;
322  1668 zzCurrentPos -= zzStartRead;
323  1668 zzMarkedPos -= zzStartRead;
324  1668 zzStartRead = 0;
325    }
326   
327    /* is the buffer big enough? */
328  1920 if (zzCurrentPos >= zzBuffer.length)
329    {
330    /* if not: blow it up */
331  0 char newBuffer[] = new char[zzCurrentPos * 2];
332  0 System.arraycopy(zzBuffer, 0, newBuffer, 0, zzBuffer.length);
333  0 zzBuffer = newBuffer;
334    }
335   
336    /* finally: fill the buffer with new input */
337  1920 int numRead = zzReader.read(zzBuffer, zzEndRead,
338    zzBuffer.length - zzEndRead);
339   
340  1920 if (numRead > 0)
341    {
342  1531 zzEndRead += numRead;
343  1531 return false;
344    }
345    // unlikely but not impossible: read 0 characters, but not at end of stream
346  389 if (numRead == 0)
347    {
348  0 int c = zzReader.read();
349  0 if (c == -1)
350    {
351  0 return true;
352    }
353    else
354    {
355  0 zzBuffer[zzEndRead++] = (char) c;
356  0 return false;
357    }
358    }
359   
360    // numRead < 0
361  389 return true;
362    }
363   
364    /**
365    * Closes the input stream.
366    */
 
367  0 toggle public final void yyclose() throws java.io.IOException
368    {
369  0 zzAtEOF = true; /* indicate end of file */
370  0 zzEndRead = zzStartRead; /* invalidate buffer */
371   
372  0 if (zzReader != null)
373  0 zzReader.close();
374    }
375   
376    /**
377    * Resets the scanner to read from a new input stream. Does not close the old
378    * reader.
379    *
380    * All internal variables are reset, the old input stream <b>cannot</b> be
381    * reused (internal buffer is discarded and lost). Lexical state is set to
382    * <tt>ZZ_INITIAL</tt>.
383    *
384    * @param reader
385    * the new input stream
386    */
 
387  252 toggle public final void yyreset(java.io.Reader reader)
388    {
389  252 zzReader = reader;
390  252 zzAtBOL = true;
391  252 zzAtEOF = false;
392  252 zzEndRead = zzStartRead = 0;
393  252 zzCurrentPos = zzMarkedPos = 0;
394  252 yyline = yychar = yycolumn = 0;
395  252 zzLexicalState = YYINITIAL;
396    }
397   
398    /**
399    * Returns the current lexical state.
400    */
 
401  0 toggle public final int yystate()
402    {
403  0 return zzLexicalState;
404    }
405   
406    /**
407    * Enters a new lexical state
408    *
409    * @param newState
410    * the new lexical state
411    */
 
412  1297746 toggle public final void yybegin(int newState)
413    {
414  1297746 zzLexicalState = newState;
415    }
416   
417    /**
418    * Returns the text matched by the current regular expression.
419    */
 
420  4705888 toggle public final String yytext()
421    {
422  4705888 return new String(zzBuffer, zzStartRead, zzMarkedPos - zzStartRead);
423    }
424   
425    /**
426    * Returns the character at position <tt>pos</tt> from the matched text.
427    *
428    * It is equivalent to yytext().charAt(pos), but faster
429    *
430    * @param pos
431    * the position of the character to fetch. A value from 0 to
432    * yylength()-1.
433    *
434    * @return the character at position pos
435    */
 
436  0 toggle public final char yycharat(int pos)
437    {
438  0 return zzBuffer[zzStartRead + pos];
439    }
440   
441    /**
442    * Returns the length of the matched text region.
443    */
 
444  0 toggle public final int yylength()
445    {
446  0 return zzMarkedPos - zzStartRead;
447    }
448   
449    /**
450    * Reports an error that occured while scanning.
451    *
452    * In a wellformed scanner (no or only correct usage of yypushback(int) and a
453    * match-all fallback rule) this method will only be called with things that
454    * "Can't Possibly Happen". If this method is called, something is seriously
455    * wrong (e.g. a JFlex bug producing a faulty scanner etc.).
456    *
457    * Usual syntax/scanner level error handling should be done in error fallback
458    * rules.
459    *
460    * @param errorCode
461    * the code of the errormessage to display
462    */
 
463  0 toggle private void zzScanError(int errorCode)
464    {
465  0 String message;
466  0 try
467    {
468  0 message = ZZ_ERROR_MSG[errorCode];
469    } catch (ArrayIndexOutOfBoundsException e)
470    {
471  0 message = ZZ_ERROR_MSG[ZZ_UNKNOWN_ERROR];
472    }
473   
474  0 throw new Error(message);
475    }
476   
477    /**
478    * Pushes the specified amount of characters back into the input stream.
479    *
480    * They will be read again by then next call of the scanning method
481    *
482    * @param number
483    * the number of characters to be read again. This number must not be
484    * greater than yylength()!
485    */
 
486  0 toggle public void yypushback(int number)
487    {
488  0 if (number > yylength())
489  0 zzScanError(ZZ_PUSHBACK_2BIG);
490   
491  0 zzMarkedPos -= number;
492    }
493   
494    /**
495    * Resumes scanning until the next regular expression is matched, the end of
496    * input is encountered or an I/O-Error occurs.
497    *
498    * @return the next token
499    * @exception java.io.IOException
500    * if any I/O-Error occurs
501    */
 
502  9660953 toggle public Yytoken yylex() throws java.io.IOException, ParseException
503    {
504  9660953 int zzInput;
505  9660953 int zzAction;
506   
507    // cached fields:
508  9660953 int zzCurrentPosL;
509  9660953 int zzMarkedPosL;
510  9660953 int zzEndReadL = zzEndRead;
511  9660953 char[] zzBufferL = zzBuffer;
512  9660953 char[] zzCMapL = ZZ_CMAP;
513   
514  9660953 int[] zzTransL = ZZ_TRANS;
515  9660953 int[] zzRowMapL = ZZ_ROWMAP;
516  9660953 int[] zzAttrL = ZZ_ATTRIBUTE;
517   
518  9660953 while (true)
519    {
520  11157436 zzMarkedPosL = zzMarkedPos;
521   
522  11157436 yychar += zzMarkedPosL - zzStartRead;
523   
524  11157436 zzAction = -1;
525   
526  11157436 zzCurrentPosL = zzCurrentPos = zzStartRead = zzMarkedPosL;
527   
528  11157436 zzState = ZZ_LEXSTATE[zzLexicalState];
529   
530  11157436 zzForAction:
531    {
532  11157436 while (true)
533    {
534   
535  26873122 if (zzCurrentPosL < zzEndReadL)
536  26871202 zzInput = zzBufferL[zzCurrentPosL++];
537  1920 else if (zzAtEOF)
538    {
539  0 zzInput = YYEOF;
540  0 break zzForAction;
541    }
542    else
543    {
544    // store back cached positions
545  1920 zzCurrentPos = zzCurrentPosL;
546  1920 zzMarkedPos = zzMarkedPosL;
547  1920 boolean eof = zzRefill();
548    // get translated positions and possibly new buffer
549  1920 zzCurrentPosL = zzCurrentPos;
550  1920 zzMarkedPosL = zzMarkedPos;
551  1920 zzBufferL = zzBuffer;
552  1920 zzEndReadL = zzEndRead;
553  1920 if (eof)
554    {
555  389 zzInput = YYEOF;
556  389 break zzForAction;
557    }
558    else
559    {
560  1531 zzInput = zzBufferL[zzCurrentPosL++];
561    }
562    }
563  26872733 int zzNext = zzTransL[zzRowMapL[zzState] + zzCMapL[zzInput]];
564  26872733 if (zzNext == -1)
565  4821234 break zzForAction;
566  22051499 zzState = zzNext;
567   
568  22051499 int zzAttributes = zzAttrL[zzState];
569  22051499 if ((zzAttributes & 1) == 1)
570    {
571  21834555 zzAction = zzState;
572  21834555 zzMarkedPosL = zzCurrentPosL;
573  21834555 if ((zzAttributes & 8) == 8)
574  6335813 break zzForAction;
575    }
576   
577    }
578    }
579   
580    // store back cached position
581  11157436 zzMarkedPos = zzMarkedPosL;
582  11157436 switch (zzAction < 0 ? zzAction : ZZ_ACTION[zzAction])
583    {
584  681099 case 11:
585    {
586  681099 sb.append(yytext());
587    }
588  0 case 25:
589  681099 break;
590  648873 case 4:
591    {
592  648873 sb = null;
593  648873 sb = new StringBuilder();
594  648873 yybegin(STRING_BEGIN);
595    }
596  0 case 26:
597  648873 break;
598  0 case 16:
599    {
600  0 sb.append('\b');
601    }
602  0 case 27:
603  0 break;
604  57233 case 6:
605    {
606  57233 return new Yytoken(Yytoken.TYPE_RIGHT_BRACE, null);
607    }
608  0 case 28:
609  0 break;
610  74 case 23:
611    {
612  74 Boolean val = Boolean.valueOf(yytext());
613  74 return new Yytoken(Yytoken.TYPE_VALUE, val);
614    }
615  0 case 29:
616  0 break;
617  56568 case 22:
618    {
619  56568 return new Yytoken(Yytoken.TYPE_VALUE, null);
620    }
621  0 case 30:
622  0 break;
623  648873 case 13:
624    {
625  648873 yybegin(YYINITIAL);
626  648873 return new Yytoken(Yytoken.TYPE_VALUE, sb.toString());
627    }
628  0 case 31:
629  0 break;
630  102 case 12:
631    {
632  102 sb.append('\\');
633    }
634  0 case 32:
635  102 break;
636  102863 case 21:
637    {
638  102863 Double val = Double.valueOf(yytext());
639  102863 return new Yytoken(Yytoken.TYPE_VALUE, val);
640    }
641  0 case 33:
642  0 break;
643  0 case 1:
644    {
645  0 throw new ParseException(yychar,
646    ParseException.ERROR_UNEXPECTED_CHAR,
647    Character.valueOf(yycharat(0)));
648    }
649  0 case 34:
650  0 break;
651  43210 case 8:
652    {
653  43210 return new Yytoken(Yytoken.TYPE_RIGHT_SQUARE, null);
654    }
655  0 case 35:
656  0 break;
657  0 case 19:
658    {
659  0 sb.append('\r');
660    }
661  0 case 36:
662  0 break;
663  50550 case 15:
664    {
665  50550 sb.append('/');
666    }
667  0 case 37:
668  50550 break;
669  376758 case 10:
670    {
671  376758 return new Yytoken(Yytoken.TYPE_COLON, null);
672    }
673  0 case 38:
674  0 break;
675  24 case 14:
676    {
677  24 sb.append('"');
678    }
679  0 case 39:
680  24 break;
681  57233 case 5:
682    {
683  57233 return new Yytoken(Yytoken.TYPE_LEFT_BRACE, null);
684    }
685  0 case 40:
686  0 break;
687  0 case 17:
688    {
689  0 sb.append('\f');
690    }
691  0 case 41:
692  0 break;
693  190 case 24:
694    {
695  190 try
696    {
697  190 int ch = Integer.parseInt(yytext().substring(2), 16);
698  190 sb.append((char) ch);
699    } catch (Exception e)
700    {
701  0 throw new ParseException(yychar,
702    ParseException.ERROR_UNEXPECTED_EXCEPTION, e);
703    }
704    }
705  0 case 42:
706  190 break;
707  0 case 20:
708    {
709  0 sb.append('\t');
710    }
711  0 case 43:
712  0 break;
713  43210 case 7:
714    {
715  43210 return new Yytoken(Yytoken.TYPE_LEFT_SQUARE, null);
716    }
717  0 case 44:
718  0 break;
719  3921662 case 2:
720    {
721  3921662 Long val = Long.valueOf(yytext());
722  3921662 return new Yytoken(Yytoken.TYPE_VALUE, val);
723    }
724  0 case 45:
725  0 break;
726  0 case 18:
727    {
728  0 sb.append('\n');
729    }
730  0 case 46:
731  0 break;
732  4353017 case 9:
733    {
734  4353017 return new Yytoken(Yytoken.TYPE_COMMA, null);
735    }
736  0 case 47:
737  0 break;
738  115645 case 3:
739    {
740    }
741  0 case 48:
742  115645 break;
743  252 default:
744  252 if (zzInput == YYEOF && zzStartRead == zzCurrentPos)
745    {
746  252 zzAtEOF = true;
747  252 return null;
748    }
749    else
750    {
751  0 zzScanError(ZZ_NO_MATCH);
752    }
753    }
754    }
755    }
756   
757    }