View | Details | Raw Unified | Return to bug 42565
Collapse All | Expand All

(-)ELParserTokenManager.java (-1393 / +1387 lines)
Lines 1-1403 Link Here
1
/* Generated By:JJTree&JavaCC: Do not edit this line. ELParserTokenManager.java */
1
/* Generated By:JJTree&JavaCC: Do not edit this line. ELParserTokenManager.java */
2
package org.apache.el.parser;
2
package org.apache.el.parser;
3
import java.io.StringReader;
4
import javax.el.ELException;
3
5
4
public class ELParserTokenManager implements ELParserConstants {
6
public class ELParserTokenManager implements ELParserConstants
5
	public java.io.PrintStream debugStream = System.out;
7
{
8
  public  java.io.PrintStream debugStream = System.out;
9
  public  void setDebugStream(java.io.PrintStream ds) { debugStream = ds; }
10
private final int jjStopStringLiteralDfa_0(int pos, long active0)
11
{
12
   switch (pos)
13
   {
14
      case 0:
15
         if ((active0 & 0x10L) != 0L)
16
            return 2;
17
         if ((active0 & 0x4L) != 0L)
18
         {
19
            jjmatchedKind = 1;
20
            return 4;
21
         }
22
         if ((active0 & 0x8L) != 0L)
23
         {
24
            jjmatchedKind = 1;
25
            return 6;
26
         }
27
         return -1;
28
      default :
29
         return -1;
30
   }
31
}
32
private final int jjStartNfa_0(int pos, long active0)
33
{
34
   return jjMoveNfa_0(jjStopStringLiteralDfa_0(pos, active0), pos + 1);
35
}
36
private final int jjStopAtPos(int pos, int kind)
37
{
38
   jjmatchedKind = kind;
39
   jjmatchedPos = pos;
40
   return pos + 1;
41
}
42
private final int jjStartNfaWithStates_0(int pos, int kind, int state)
43
{
44
   jjmatchedKind = kind;
45
   jjmatchedPos = pos;
46
   try { curChar = input_stream.readChar(); }
47
   catch(java.io.IOException e) { return pos + 1; }
48
   return jjMoveNfa_0(state, pos + 1);
49
}
50
private final int jjMoveStringLiteralDfa0_0()
51
{
52
   switch(curChar)
53
   {
54
      case 35:
55
         return jjMoveStringLiteralDfa1_0(0x8L);
56
      case 36:
57
         return jjMoveStringLiteralDfa1_0(0x4L);
58
      case 92:
59
         return jjStartNfaWithStates_0(0, 4, 2);
60
      default :
61
         return jjMoveNfa_0(7, 0);
62
   }
63
}
64
private final int jjMoveStringLiteralDfa1_0(long active0)
65
{
66
   try { curChar = input_stream.readChar(); }
67
   catch(java.io.IOException e) {
68
      jjStopStringLiteralDfa_0(0, active0);
69
      return 1;
70
   }
71
   switch(curChar)
72
   {
73
      case 123:
74
         if ((active0 & 0x4L) != 0L)
75
            return jjStopAtPos(1, 2);
76
         else if ((active0 & 0x8L) != 0L)
77
            return jjStopAtPos(1, 3);
78
         break;
79
      default :
80
         break;
81
   }
82
   return jjStartNfa_0(0, active0);
83
}
84
private final void jjCheckNAdd(int state)
85
{
86
   if (jjrounds[state] != jjround)
87
   {
88
      jjstateSet[jjnewStateCnt++] = state;
89
      jjrounds[state] = jjround;
90
   }
91
}
92
private final void jjAddStates(int start, int end)
93
{
94
   do {
95
      jjstateSet[jjnewStateCnt++] = jjnextStates[start];
96
   } while (start++ != end);
97
}
98
private final void jjCheckNAddTwoStates(int state1, int state2)
99
{
100
   jjCheckNAdd(state1);
101
   jjCheckNAdd(state2);
102
}
103
private final void jjCheckNAddStates(int start, int end)
104
{
105
   do {
106
      jjCheckNAdd(jjnextStates[start]);
107
   } while (start++ != end);
108
}
109
private final void jjCheckNAddStates(int start)
110
{
111
   jjCheckNAdd(jjnextStates[start]);
112
   jjCheckNAdd(jjnextStates[start + 1]);
113
}
114
static final long[] jjbitVec0 = {
115
   0xfffffffffffffffeL, 0xffffffffffffffffL, 0xffffffffffffffffL, 0xffffffffffffffffL
116
};
117
static final long[] jjbitVec2 = {
118
   0x0L, 0x0L, 0xffffffffffffffffL, 0xffffffffffffffffL
119
};
120
private final int jjMoveNfa_0(int startState, int curPos)
121
{
122
   int[] nextStates;
123
   int startsAt = 0;
124
   jjnewStateCnt = 8;
125
   int i = 1;
126
   jjstateSet[0] = startState;
127
   int j, kind = 0x7fffffff;
128
   for (;;)
129
   {
130
      if (++jjround == 0x7fffffff)
131
         ReInitRounds();
132
      if (curChar < 64)
133
      {
134
         long l = 1L << curChar;
135
         MatchLoop: do
136
         {
137
            switch(jjstateSet[--i])
138
            {
139
               case 7:
140
                  if ((0xffffffe7ffffffffL & l) != 0L)
141
                  {
142
                     if (kind > 1)
143
                        kind = 1;
144
                     jjCheckNAddStates(0, 3);
145
                  }
146
                  else if ((0x1800000000L & l) != 0L)
147
                  {
148
                     if (kind > 1)
149
                        kind = 1;
150
                  }
151
                  if (curChar == 35)
152
                     jjstateSet[jjnewStateCnt++] = 6;
153
                  else if (curChar == 36)
154
                     jjstateSet[jjnewStateCnt++] = 4;
155
                  break;
156
               case 0:
157
                  if ((0xffffffe7ffffffffL & l) == 0L)
158
                     break;
159
                  if (kind > 1)
160
                     kind = 1;
161
                  jjCheckNAddStates(0, 3);
162
                  break;
163
               case 2:
164
                  if ((0x1800000000L & l) == 0L)
165
                     break;
166
                  if (kind > 1)
167
                     kind = 1;
168
                  jjCheckNAddStates(0, 3);
169
                  break;
170
               case 3:
171
                  if (curChar == 36)
172
                     jjstateSet[jjnewStateCnt++] = 4;
173
                  break;
174
               case 4:
175
                  if ((0xffffffefffffffffL & l) == 0L)
176
                     break;
177
                  if (kind > 1)
178
                     kind = 1;
179
                  jjCheckNAddStates(0, 3);
180
                  break;
181
               case 5:
182
                  if (curChar == 35)
183
                     jjstateSet[jjnewStateCnt++] = 6;
184
                  break;
185
               case 6:
186
                  if ((0xfffffff7ffffffffL & l) == 0L)
187
                     break;
188
                  if (kind > 1)
189
                     kind = 1;
190
                  jjCheckNAddStates(0, 3);
191
                  break;
192
               default : break;
193
            }
194
         } while(i != startsAt);
195
      }
196
      else if (curChar < 128)
197
      {
198
         long l = 1L << (curChar & 077);
199
         MatchLoop: do
200
         {
201
            switch(jjstateSet[--i])
202
            {
203
               case 7:
204
                  if ((0xffffffffefffffffL & l) != 0L)
205
                  {
206
                     if (kind > 1)
207
                        kind = 1;
208
                     jjCheckNAddStates(0, 3);
209
                  }
210
                  else if (curChar == 92)
211
                     jjstateSet[jjnewStateCnt++] = 2;
212
                  break;
213
               case 0:
214
                  if ((0xffffffffefffffffL & l) == 0L)
215
                     break;
216
                  if (kind > 1)
217
                     kind = 1;
218
                  jjCheckNAddStates(0, 3);
219
                  break;
220
               case 1:
221
                  if (curChar == 92)
222
                     jjstateSet[jjnewStateCnt++] = 2;
223
                  break;
224
               case 2:
225
                  if (curChar != 92)
226
                     break;
227
                  if (kind > 1)
228
                     kind = 1;
229
                  jjCheckNAddStates(0, 3);
230
                  break;
231
               case 4:
232
               case 6:
233
                  if ((0xf7ffffffffffffffL & l) == 0L)
234
                     break;
235
                  if (kind > 1)
236
                     kind = 1;
237
                  jjCheckNAddStates(0, 3);
238
                  break;
239
               default : break;
240
            }
241
         } while(i != startsAt);
242
      }
243
      else
244
      {
245
         int hiByte = (int)(curChar >> 8);
246
         int i1 = hiByte >> 6;
247
         long l1 = 1L << (hiByte & 077);
248
         int i2 = (curChar & 0xff) >> 6;
249
         long l2 = 1L << (curChar & 077);
250
         MatchLoop: do
251
         {
252
            switch(jjstateSet[--i])
253
            {
254
               case 7:
255
               case 0:
256
               case 4:
257
               case 6:
258
                  if (!jjCanMove_0(hiByte, i1, i2, l1, l2))
259
                     break;
260
                  if (kind > 1)
261
                     kind = 1;
262
                  jjCheckNAddStates(0, 3);
263
                  break;
264
               default : break;
265
            }
266
         } while(i != startsAt);
267
      }
268
      if (kind != 0x7fffffff)
269
      {
270
         jjmatchedKind = kind;
271
         jjmatchedPos = curPos;
272
         kind = 0x7fffffff;
273
      }
274
      ++curPos;
275
      if ((i = jjnewStateCnt) == (startsAt = 8 - (jjnewStateCnt = startsAt)))
276
         return curPos;
277
      try { curChar = input_stream.readChar(); }
278
      catch(java.io.IOException e) { return curPos; }
279
   }
280
}
281
private final int jjStopStringLiteralDfa_1(int pos, long active0)
282
{
283
   switch (pos)
284
   {
285
      case 0:
286
         if ((active0 & 0x141d555401c000L) != 0L)
287
         {
288
            jjmatchedKind = 53;
289
            return 42;
290
         }
291
         if ((active0 & 0x40000L) != 0L)
292
            return 1;
293
         return -1;
294
      case 1:
295
         if ((active0 & 0x41554000000L) != 0L)
296
            return 42;
297
         if ((active0 & 0x1419400001c000L) != 0L)
298
         {
299
            jjmatchedKind = 53;
300
            jjmatchedPos = 1;
301
            return 42;
302
         }
303
         return -1;
304
      case 2:
305
         if ((active0 & 0x18000001c000L) != 0L)
306
         {
307
            jjmatchedKind = 53;
308
            jjmatchedPos = 2;
309
            return 42;
310
         }
311
         if ((active0 & 0x14014000000000L) != 0L)
312
            return 42;
313
         return -1;
314
      case 3:
315
         if ((active0 & 0x180000008000L) != 0L)
316
         {
317
            jjmatchedKind = 53;
318
            jjmatchedPos = 3;
319
            return 42;
320
         }
321
         if ((active0 & 0x14000L) != 0L)
322
            return 42;
323
         return -1;
324
      case 4:
325
         if ((active0 & 0x80000008000L) != 0L)
326
            return 42;
327
         if ((active0 & 0x100000000000L) != 0L)
328
         {
329
            jjmatchedKind = 53;
330
            jjmatchedPos = 4;
331
            return 42;
332
         }
333
         return -1;
334
      case 5:
335
         if ((active0 & 0x100000000000L) != 0L)
336
         {
337
            jjmatchedKind = 53;
338
            jjmatchedPos = 5;
339
            return 42;
340
         }
341
         return -1;
342
      case 6:
343
         if ((active0 & 0x100000000000L) != 0L)
344
         {
345
            jjmatchedKind = 53;
346
            jjmatchedPos = 6;
347
            return 42;
348
         }
349
         return -1;
350
      case 7:
351
         if ((active0 & 0x100000000000L) != 0L)
352
         {
353
            jjmatchedKind = 53;
354
            jjmatchedPos = 7;
355
            return 42;
356
         }
357
         return -1;
358
      case 8:
359
         if ((active0 & 0x100000000000L) != 0L)
360
         {
361
            jjmatchedKind = 53;
362
            jjmatchedPos = 8;
363
            return 42;
364
         }
365
         return -1;
366
      default :
367
         return -1;
368
   }
369
}
370
private final int jjStartNfa_1(int pos, long active0)
371
{
372
   return jjMoveNfa_1(jjStopStringLiteralDfa_1(pos, active0), pos + 1);
373
}
374
private final int jjStartNfaWithStates_1(int pos, int kind, int state)
375
{
376
   jjmatchedKind = kind;
377
   jjmatchedPos = pos;
378
   try { curChar = input_stream.readChar(); }
379
   catch(java.io.IOException e) { return pos + 1; }
380
   return jjMoveNfa_1(state, pos + 1);
381
}
382
private final int jjMoveStringLiteralDfa0_1()
383
{
384
   switch(curChar)
385
   {
386
      case 33:
387
         jjmatchedKind = 37;
388
         return jjMoveStringLiteralDfa1_1(0x800000000L);
389
      case 37:
390
         return jjStopAtPos(0, 51);
391
      case 38:
392
         return jjMoveStringLiteralDfa1_1(0x8000000000L);
393
      case 40:
394
         return jjStopAtPos(0, 19);
395
      case 41:
396
         return jjStopAtPos(0, 20);
397
      case 42:
398
         return jjStopAtPos(0, 45);
399
      case 43:
400
         return jjStopAtPos(0, 46);
401
      case 44:
402
         return jjStopAtPos(0, 24);
403
      case 45:
404
         return jjStopAtPos(0, 47);
405
      case 46:
406
         return jjStartNfaWithStates_1(0, 18, 1);
407
      case 47:
408
         return jjStopAtPos(0, 49);
409
      case 58:
410
         return jjStopAtPos(0, 23);
411
      case 60:
412
         jjmatchedKind = 27;
413
         return jjMoveStringLiteralDfa1_1(0x80000000L);
414
      case 61:
415
         return jjMoveStringLiteralDfa1_1(0x200000000L);
416
      case 62:
417
         jjmatchedKind = 25;
418
         return jjMoveStringLiteralDfa1_1(0x20000000L);
419
      case 63:
420
         return jjStopAtPos(0, 48);
421
      case 91:
422
         return jjStopAtPos(0, 21);
423
      case 93:
424
         return jjStopAtPos(0, 22);
425
      case 97:
426
         return jjMoveStringLiteralDfa1_1(0x10000000000L);
427
      case 100:
428
         return jjMoveStringLiteralDfa1_1(0x4000000000000L);
429
      case 101:
430
         return jjMoveStringLiteralDfa1_1(0x80400000000L);
431
      case 102:
432
         return jjMoveStringLiteralDfa1_1(0x8000L);
433
      case 103:
434
         return jjMoveStringLiteralDfa1_1(0x44000000L);
435
      case 105:
436
         return jjMoveStringLiteralDfa1_1(0x100000000000L);
437
      case 108:
438
         return jjMoveStringLiteralDfa1_1(0x110000000L);
439
      case 109:
440
         return jjMoveStringLiteralDfa1_1(0x10000000000000L);
441
      case 110:
442
         return jjMoveStringLiteralDfa1_1(0x5000010000L);
443
      case 111:
444
         return jjMoveStringLiteralDfa1_1(0x40000000000L);
445
      case 116:
446
         return jjMoveStringLiteralDfa1_1(0x4000L);
447
      case 124:
448
         return jjMoveStringLiteralDfa1_1(0x20000000000L);
449
      case 125:
450
         return jjStopAtPos(0, 17);
451
      default :
452
         return jjMoveNfa_1(0, 0);
453
   }
454
}
455
private final int jjMoveStringLiteralDfa1_1(long active0)
456
{
457
   try { curChar = input_stream.readChar(); }
458
   catch(java.io.IOException e) {
459
      jjStopStringLiteralDfa_1(0, active0);
460
      return 1;
461
   }
462
   switch(curChar)
463
   {
464
      case 38:
465
         if ((active0 & 0x8000000000L) != 0L)
466
            return jjStopAtPos(1, 39);
467
         break;
468
      case 61:
469
         if ((active0 & 0x20000000L) != 0L)
470
            return jjStopAtPos(1, 29);
471
         else if ((active0 & 0x80000000L) != 0L)
472
            return jjStopAtPos(1, 31);
473
         else if ((active0 & 0x200000000L) != 0L)
474
            return jjStopAtPos(1, 33);
475
         else if ((active0 & 0x800000000L) != 0L)
476
            return jjStopAtPos(1, 35);
477
         break;
478
      case 97:
479
         return jjMoveStringLiteralDfa2_1(active0, 0x8000L);
480
      case 101:
481
         if ((active0 & 0x40000000L) != 0L)
482
            return jjStartNfaWithStates_1(1, 30, 42);
483
         else if ((active0 & 0x100000000L) != 0L)
484
            return jjStartNfaWithStates_1(1, 32, 42);
485
         else if ((active0 & 0x1000000000L) != 0L)
486
            return jjStartNfaWithStates_1(1, 36, 42);
487
         break;
488
      case 105:
489
         return jjMoveStringLiteralDfa2_1(active0, 0x4000000000000L);
490
      case 109:
491
         return jjMoveStringLiteralDfa2_1(active0, 0x80000000000L);
492
      case 110:
493
         return jjMoveStringLiteralDfa2_1(active0, 0x110000000000L);
494
      case 111:
495
         return jjMoveStringLiteralDfa2_1(active0, 0x10004000000000L);
496
      case 113:
497
         if ((active0 & 0x400000000L) != 0L)
498
            return jjStartNfaWithStates_1(1, 34, 42);
499
         break;
500
      case 114:
501
         if ((active0 & 0x40000000000L) != 0L)
502
            return jjStartNfaWithStates_1(1, 42, 42);
503
         return jjMoveStringLiteralDfa2_1(active0, 0x4000L);
504
      case 116:
505
         if ((active0 & 0x4000000L) != 0L)
506
            return jjStartNfaWithStates_1(1, 26, 42);
507
         else if ((active0 & 0x10000000L) != 0L)
508
            return jjStartNfaWithStates_1(1, 28, 42);
509
         break;
510
      case 117:
511
         return jjMoveStringLiteralDfa2_1(active0, 0x10000L);
512
      case 124:
513
         if ((active0 & 0x20000000000L) != 0L)
514
            return jjStopAtPos(1, 41);
515
         break;
516
      default :
517
         break;
518
   }
519
   return jjStartNfa_1(0, active0);
520
}
521
private final int jjMoveStringLiteralDfa2_1(long old0, long active0)
522
{
523
   if (((active0 &= old0)) == 0L)
524
      return jjStartNfa_1(0, old0); 
525
   try { curChar = input_stream.readChar(); }
526
   catch(java.io.IOException e) {
527
      jjStopStringLiteralDfa_1(1, active0);
528
      return 2;
529
   }
530
   switch(curChar)
531
   {
532
      case 100:
533
         if ((active0 & 0x10000000000L) != 0L)
534
            return jjStartNfaWithStates_1(2, 40, 42);
535
         else if ((active0 & 0x10000000000000L) != 0L)
536
            return jjStartNfaWithStates_1(2, 52, 42);
537
         break;
538
      case 108:
539
         return jjMoveStringLiteralDfa3_1(active0, 0x18000L);
540
      case 112:
541
         return jjMoveStringLiteralDfa3_1(active0, 0x80000000000L);
542
      case 115:
543
         return jjMoveStringLiteralDfa3_1(active0, 0x100000000000L);
544
      case 116:
545
         if ((active0 & 0x4000000000L) != 0L)
546
            return jjStartNfaWithStates_1(2, 38, 42);
547
         break;
548
      case 117:
549
         return jjMoveStringLiteralDfa3_1(active0, 0x4000L);
550
      case 118:
551
         if ((active0 & 0x4000000000000L) != 0L)
552
            return jjStartNfaWithStates_1(2, 50, 42);
553
         break;
554
      default :
555
         break;
556
   }
557
   return jjStartNfa_1(1, active0);
558
}
559
private final int jjMoveStringLiteralDfa3_1(long old0, long active0)
560
{
561
   if (((active0 &= old0)) == 0L)
562
      return jjStartNfa_1(1, old0); 
563
   try { curChar = input_stream.readChar(); }
564
   catch(java.io.IOException e) {
565
      jjStopStringLiteralDfa_1(2, active0);
566
      return 3;
567
   }
568
   switch(curChar)
569
   {
570
      case 101:
571
         if ((active0 & 0x4000L) != 0L)
572
            return jjStartNfaWithStates_1(3, 14, 42);
573
         break;
574
      case 108:
575
         if ((active0 & 0x10000L) != 0L)
576
            return jjStartNfaWithStates_1(3, 16, 42);
577
         break;
578
      case 115:
579
         return jjMoveStringLiteralDfa4_1(active0, 0x8000L);
580
      case 116:
581
         return jjMoveStringLiteralDfa4_1(active0, 0x180000000000L);
582
      default :
583
         break;
584
   }
585
   return jjStartNfa_1(2, active0);
586
}
587
private final int jjMoveStringLiteralDfa4_1(long old0, long active0)
588
{
589
   if (((active0 &= old0)) == 0L)
590
      return jjStartNfa_1(2, old0); 
591
   try { curChar = input_stream.readChar(); }
592
   catch(java.io.IOException e) {
593
      jjStopStringLiteralDfa_1(3, active0);
594
      return 4;
595
   }
596
   switch(curChar)
597
   {
598
      case 97:
599
         return jjMoveStringLiteralDfa5_1(active0, 0x100000000000L);
600
      case 101:
601
         if ((active0 & 0x8000L) != 0L)
602
            return jjStartNfaWithStates_1(4, 15, 42);
603
         break;
604
      case 121:
605
         if ((active0 & 0x80000000000L) != 0L)
606
            return jjStartNfaWithStates_1(4, 43, 42);
607
         break;
608
      default :
609
         break;
610
   }
611
   return jjStartNfa_1(3, active0);
612
}
613
private final int jjMoveStringLiteralDfa5_1(long old0, long active0)
614
{
615
   if (((active0 &= old0)) == 0L)
616
      return jjStartNfa_1(3, old0); 
617
   try { curChar = input_stream.readChar(); }
618
   catch(java.io.IOException e) {
619
      jjStopStringLiteralDfa_1(4, active0);
620
      return 5;
621
   }
622
   switch(curChar)
623
   {
624
      case 110:
625
         return jjMoveStringLiteralDfa6_1(active0, 0x100000000000L);
626
      default :
627
         break;
628
   }
629
   return jjStartNfa_1(4, active0);
630
}
631
private final int jjMoveStringLiteralDfa6_1(long old0, long active0)
632
{
633
   if (((active0 &= old0)) == 0L)
634
      return jjStartNfa_1(4, old0); 
635
   try { curChar = input_stream.readChar(); }
636
   catch(java.io.IOException e) {
637
      jjStopStringLiteralDfa_1(5, active0);
638
      return 6;
639
   }
640
   switch(curChar)
641
   {
642
      case 99:
643
         return jjMoveStringLiteralDfa7_1(active0, 0x100000000000L);
644
      default :
645
         break;
646
   }
647
   return jjStartNfa_1(5, active0);
648
}
649
private final int jjMoveStringLiteralDfa7_1(long old0, long active0)
650
{
651
   if (((active0 &= old0)) == 0L)
652
      return jjStartNfa_1(5, old0); 
653
   try { curChar = input_stream.readChar(); }
654
   catch(java.io.IOException e) {
655
      jjStopStringLiteralDfa_1(6, active0);
656
      return 7;
657
   }
658
   switch(curChar)
659
   {
660
      case 101:
661
         return jjMoveStringLiteralDfa8_1(active0, 0x100000000000L);
662
      default :
663
         break;
664
   }
665
   return jjStartNfa_1(6, active0);
666
}
667
private final int jjMoveStringLiteralDfa8_1(long old0, long active0)
668
{
669
   if (((active0 &= old0)) == 0L)
670
      return jjStartNfa_1(6, old0); 
671
   try { curChar = input_stream.readChar(); }
672
   catch(java.io.IOException e) {
673
      jjStopStringLiteralDfa_1(7, active0);
674
      return 8;
675
   }
676
   switch(curChar)
677
   {
678
      case 111:
679
         return jjMoveStringLiteralDfa9_1(active0, 0x100000000000L);
680
      default :
681
         break;
682
   }
683
   return jjStartNfa_1(7, active0);
684
}
685
private final int jjMoveStringLiteralDfa9_1(long old0, long active0)
686
{
687
   if (((active0 &= old0)) == 0L)
688
      return jjStartNfa_1(7, old0); 
689
   try { curChar = input_stream.readChar(); }
690
   catch(java.io.IOException e) {
691
      jjStopStringLiteralDfa_1(8, active0);
692
      return 9;
693
   }
694
   switch(curChar)
695
   {
696
      case 102:
697
         if ((active0 & 0x100000000000L) != 0L)
698
            return jjStartNfaWithStates_1(9, 44, 42);
699
         break;
700
      default :
701
         break;
702
   }
703
   return jjStartNfa_1(8, active0);
704
}
705
static final long[] jjbitVec3 = {
706
   0x1ff00000fffffffeL, 0xffffffffffffc000L, 0xffffffffL, 0x600000000000000L
707
};
708
static final long[] jjbitVec4 = {
709
   0x0L, 0x0L, 0x0L, 0xff7fffffff7fffffL
710
};
711
static final long[] jjbitVec5 = {
712
   0x0L, 0xffffffffffffffffL, 0xffffffffffffffffL, 0xffffffffffffffffL
713
};
714
static final long[] jjbitVec6 = {
715
   0xffffffffffffffffL, 0xffffffffffffffffL, 0xffffL, 0x0L
716
};
717
static final long[] jjbitVec7 = {
718
   0xffffffffffffffffL, 0xffffffffffffffffL, 0x0L, 0x0L
719
};
720
static final long[] jjbitVec8 = {
721
   0x3fffffffffffL, 0x0L, 0x0L, 0x0L
722
};
723
private final int jjMoveNfa_1(int startState, int curPos)
724
{
725
   int[] nextStates;
726
   int startsAt = 0;
727
   jjnewStateCnt = 42;
728
   int i = 1;
729
   jjstateSet[0] = startState;
730
   int j, kind = 0x7fffffff;
731
   for (;;)
732
   {
733
      if (++jjround == 0x7fffffff)
734
         ReInitRounds();
735
      if (curChar < 64)
736
      {
737
         long l = 1L << curChar;
738
         MatchLoop: do
739
         {
740
            switch(jjstateSet[--i])
741
            {
742
               case 0:
743
                  if ((0x3ff000000000000L & l) != 0L)
744
                  {
745
                     if (kind > 9)
746
                        kind = 9;
747
                     jjCheckNAddStates(4, 8);
748
                  }
749
                  else if ((0x1800000000L & l) != 0L)
750
                  {
751
                     if (kind > 53)
752
                        kind = 53;
753
                     jjCheckNAddStates(9, 15);
754
                  }
755
                  else if (curChar == 39)
756
                     jjCheckNAddStates(16, 20);
757
                  else if (curChar == 34)
758
                     jjCheckNAddStates(21, 25);
759
                  else if (curChar == 46)
760
                     jjCheckNAdd(1);
761
                  break;
762
               case 42:
763
                  if ((0x3ff601000000000L & l) != 0L)
764
                     jjCheckNAddTwoStates(36, 37);
765
                  else if (curChar == 40)
766
                  {
767
                     if (kind > 56)
768
                        kind = 56;
769
                  }
770
                  else if (curChar == 58)
771
                     jjstateSet[jjnewStateCnt++] = 38;
772
                  if ((0x3ff001000000000L & l) != 0L)
773
                  {
774
                     if (kind > 57)
775
                        kind = 57;
776
                     jjCheckNAdd(41);
777
                  }
778
                  if ((0x3ff001000000000L & l) != 0L)
779
                     jjCheckNAddTwoStates(39, 40);
780
                  if ((0x3ff001000000000L & l) != 0L)
781
                     jjCheckNAddStates(26, 28);
782
                  if ((0x3ff001000000000L & l) != 0L)
783
                  {
784
                     if (kind > 53)
785
                        kind = 53;
786
                     jjCheckNAdd(34);
787
                  }
788
                  break;
789
               case 1:
790
                  if ((0x3ff000000000000L & l) == 0L)
791
                     break;
792
                  if (kind > 10)
793
                     kind = 10;
794
                  jjCheckNAddTwoStates(1, 2);
795
                  break;
796
               case 3:
797
                  if ((0x280000000000L & l) != 0L)
798
                     jjCheckNAdd(4);
799
                  break;
800
               case 4:
801
                  if ((0x3ff000000000000L & l) == 0L)
802
                     break;
803
                  if (kind > 10)
804
                     kind = 10;
805
                  jjCheckNAdd(4);
806
                  break;
807
               case 5:
808
                  if ((0x3ff000000000000L & l) == 0L)
809
                     break;
810
                  if (kind > 9)
811
                     kind = 9;
812
                  jjCheckNAddStates(4, 8);
813
                  break;
814
               case 6:
815
                  if ((0x3ff000000000000L & l) == 0L)
816
                     break;
817
                  if (kind > 9)
818
                     kind = 9;
819
                  jjCheckNAdd(6);
820
                  break;
821
               case 7:
822
                  if ((0x3ff000000000000L & l) != 0L)
823
                     jjCheckNAddTwoStates(7, 8);
824
                  break;
825
               case 8:
826
                  if (curChar != 46)
827
                     break;
828
                  if (kind > 10)
829
                     kind = 10;
830
                  jjCheckNAddTwoStates(9, 10);
831
                  break;
832
               case 9:
833
                  if ((0x3ff000000000000L & l) == 0L)
834
                     break;
835
                  if (kind > 10)
836
                     kind = 10;
837
                  jjCheckNAddTwoStates(9, 10);
838
                  break;
839
               case 11:
840
                  if ((0x280000000000L & l) != 0L)
841
                     jjCheckNAdd(12);
842
                  break;
843
               case 12:
844
                  if ((0x3ff000000000000L & l) == 0L)
845
                     break;
846
                  if (kind > 10)
847
                     kind = 10;
848
                  jjCheckNAdd(12);
849
                  break;
850
               case 13:
851
                  if ((0x3ff000000000000L & l) != 0L)
852
                     jjCheckNAddTwoStates(13, 14);
853
                  break;
854
               case 15:
855
                  if ((0x280000000000L & l) != 0L)
856
                     jjCheckNAdd(16);
857
                  break;
858
               case 16:
859
                  if ((0x3ff000000000000L & l) == 0L)
860
                     break;
861
                  if (kind > 10)
862
                     kind = 10;
863
                  jjCheckNAdd(16);
864
                  break;
865
               case 17:
866
                  if (curChar == 34)
867
                     jjCheckNAddStates(21, 25);
868
                  break;
869
               case 18:
870
                  if ((0xfffffffbffffffffL & l) != 0L)
871
                     jjCheckNAddStates(29, 31);
872
                  break;
873
               case 20:
874
                  if (curChar == 34)
875
                     jjCheckNAddStates(29, 31);
876
                  break;
877
               case 21:
878
                  if (curChar == 34 && kind > 12)
879
                     kind = 12;
880
                  break;
881
               case 22:
882
                  if ((0xfffffffbffffffffL & l) != 0L)
883
                     jjCheckNAddTwoStates(22, 23);
884
                  break;
885
               case 24:
886
                  if ((0xfffffffbffffffffL & l) != 0L && kind > 13)
887
                     kind = 13;
888
                  break;
889
               case 25:
890
                  if (curChar == 39)
891
                     jjCheckNAddStates(16, 20);
892
                  break;
893
               case 26:
894
                  if ((0xffffff7fffffffffL & l) != 0L)
895
                     jjCheckNAddStates(32, 34);
896
                  break;
897
               case 28:
898
                  if (curChar == 39)
899
                     jjCheckNAddStates(32, 34);
900
                  break;
901
               case 29:
902
                  if (curChar == 39 && kind > 12)
903
                     kind = 12;
904
                  break;
905
               case 30:
906
                  if ((0xffffff7fffffffffL & l) != 0L)
907
                     jjCheckNAddTwoStates(30, 31);
908
                  break;
909
               case 32:
910
                  if ((0xffffff7fffffffffL & l) != 0L && kind > 13)
911
                     kind = 13;
912
                  break;
913
               case 33:
914
                  if ((0x1800000000L & l) == 0L)
915
                     break;
916
                  if (kind > 53)
917
                     kind = 53;
918
                  jjCheckNAddStates(9, 15);
919
                  break;
920
               case 34:
921
                  if ((0x3ff001000000000L & l) == 0L)
922
                     break;
923
                  if (kind > 53)
924
                     kind = 53;
925
                  jjCheckNAdd(34);
926
                  break;
927
               case 35:
928
                  if ((0x3ff001000000000L & l) != 0L)
929
                     jjCheckNAddStates(26, 28);
930
                  break;
931
               case 36:
932
                  if ((0x3ff601000000000L & l) != 0L)
933
                     jjCheckNAddTwoStates(36, 37);
934
                  break;
935
               case 37:
936
                  if (curChar == 58)
937
                     jjstateSet[jjnewStateCnt++] = 38;
938
                  break;
939
               case 38:
940
                  if ((0x1800000000L & l) != 0L)
941
                     jjCheckNAddTwoStates(39, 40);
942
                  break;
943
               case 39:
944
                  if ((0x3ff001000000000L & l) != 0L)
945
                     jjCheckNAddTwoStates(39, 40);
946
                  break;
947
               case 40:
948
                  if (curChar == 40 && kind > 56)
949
                     kind = 56;
950
                  break;
951
               case 41:
952
                  if ((0x3ff001000000000L & l) == 0L)
953
                     break;
954
                  if (kind > 57)
955
                     kind = 57;
956
                  jjCheckNAdd(41);
957
                  break;
958
               default : break;
959
            }
960
         } while(i != startsAt);
961
      }
962
      else if (curChar < 128)
963
      {
964
         long l = 1L << (curChar & 077);
965
         MatchLoop: do
966
         {
967
            switch(jjstateSet[--i])
968
            {
969
               case 0:
970
                  if ((0x7fffffe87fffffeL & l) == 0L)
971
                     break;
972
                  if (kind > 53)
973
                     kind = 53;
974
                  jjCheckNAddStates(9, 15);
975
                  break;
976
               case 42:
977
                  if ((0x7fffffe87fffffeL & l) != 0L)
978
                  {
979
                     if (kind > 57)
980
                        kind = 57;
981
                     jjCheckNAdd(41);
982
                  }
983
                  if ((0x7fffffe87fffffeL & l) != 0L)
984
                     jjCheckNAddTwoStates(39, 40);
985
                  if ((0x7fffffe87fffffeL & l) != 0L)
986
                     jjCheckNAddTwoStates(36, 37);
987
                  if ((0x7fffffe87fffffeL & l) != 0L)
988
                     jjCheckNAddStates(26, 28);
989
                  if ((0x7fffffe87fffffeL & l) != 0L)
990
                  {
991
                     if (kind > 53)
992
                        kind = 53;
993
                     jjCheckNAdd(34);
994
                  }
995
                  break;
996
               case 2:
997
                  if ((0x2000000020L & l) != 0L)
998
                     jjAddStates(35, 36);
999
                  break;
1000
               case 10:
1001
                  if ((0x2000000020L & l) != 0L)
1002
                     jjAddStates(37, 38);
1003
                  break;
1004
               case 14:
1005
                  if ((0x2000000020L & l) != 0L)
1006
                     jjAddStates(39, 40);
1007
                  break;
1008
               case 18:
1009
                  if ((0xffffffffefffffffL & l) != 0L)
1010
                     jjCheckNAddStates(29, 31);
1011
                  break;
1012
               case 19:
1013
                  if (curChar == 92)
1014
                     jjstateSet[jjnewStateCnt++] = 20;
1015
                  break;
1016
               case 20:
1017
                  if (curChar == 92)
1018
                     jjCheckNAddStates(29, 31);
1019
                  break;
1020
               case 22:
1021
                  if ((0xffffffffefffffffL & l) != 0L)
1022
                     jjAddStates(41, 42);
1023
                  break;
1024
               case 23:
1025
                  if (curChar == 92)
1026
                     jjstateSet[jjnewStateCnt++] = 24;
1027
                  break;
1028
               case 24:
1029
               case 32:
1030
                  if ((0xffffffffefffffffL & l) != 0L && kind > 13)
1031
                     kind = 13;
1032
                  break;
1033
               case 26:
1034
                  if ((0xffffffffefffffffL & l) != 0L)
1035
                     jjCheckNAddStates(32, 34);
1036
                  break;
1037
               case 27:
1038
                  if (curChar == 92)
1039
                     jjstateSet[jjnewStateCnt++] = 28;
1040
                  break;
1041
               case 28:
1042
                  if (curChar == 92)
1043
                     jjCheckNAddStates(32, 34);
1044
                  break;
1045
               case 30:
1046
                  if ((0xffffffffefffffffL & l) != 0L)
1047
                     jjAddStates(43, 44);
1048
                  break;
1049
               case 31:
1050
                  if (curChar == 92)
1051
                     jjstateSet[jjnewStateCnt++] = 32;
1052
                  break;
1053
               case 34:
1054
                  if ((0x7fffffe87fffffeL & l) == 0L)
1055
                     break;
1056
                  if (kind > 53)
1057
                     kind = 53;
1058
                  jjCheckNAdd(34);
1059
                  break;
1060
               case 35:
1061
                  if ((0x7fffffe87fffffeL & l) != 0L)
1062
                     jjCheckNAddStates(26, 28);
1063
                  break;
1064
               case 36:
1065
                  if ((0x7fffffe87fffffeL & l) != 0L)
1066
                     jjCheckNAddTwoStates(36, 37);
1067
                  break;
1068
               case 38:
1069
                  if ((0x7fffffe87fffffeL & l) != 0L)
1070
                     jjCheckNAddTwoStates(39, 40);
1071
                  break;
1072
               case 39:
1073
                  if ((0x7fffffe87fffffeL & l) != 0L)
1074
                     jjCheckNAddTwoStates(39, 40);
1075
                  break;
1076
               case 41:
1077
                  if ((0x7fffffe87fffffeL & l) == 0L)
1078
                     break;
1079
                  if (kind > 57)
1080
                     kind = 57;
1081
                  jjCheckNAdd(41);
1082
                  break;
1083
               default : break;
1084
            }
1085
         } while(i != startsAt);
1086
      }
1087
      else
1088
      {
1089
         int hiByte = (int)(curChar >> 8);
1090
         int i1 = hiByte >> 6;
1091
         long l1 = 1L << (hiByte & 077);
1092
         int i2 = (curChar & 0xff) >> 6;
1093
         long l2 = 1L << (curChar & 077);
1094
         MatchLoop: do
1095
         {
1096
            switch(jjstateSet[--i])
1097
            {
1098
               case 0:
1099
                  if (!jjCanMove_1(hiByte, i1, i2, l1, l2))
1100
                     break;
1101
                  if (kind > 53)
1102
                     kind = 53;
1103
                  jjCheckNAddStates(9, 15);
1104
                  break;
1105
               case 42:
1106
                  if (jjCanMove_1(hiByte, i1, i2, l1, l2))
1107
                  {
1108
                     if (kind > 53)
1109
                        kind = 53;
1110
                     jjCheckNAdd(34);
1111
                  }
1112
                  if (jjCanMove_1(hiByte, i1, i2, l1, l2))
1113
                     jjCheckNAddStates(26, 28);
1114
                  if (jjCanMove_1(hiByte, i1, i2, l1, l2))
1115
                     jjCheckNAddTwoStates(36, 37);
1116
                  if (jjCanMove_1(hiByte, i1, i2, l1, l2))
1117
                     jjCheckNAddTwoStates(39, 40);
1118
                  if (jjCanMove_1(hiByte, i1, i2, l1, l2))
1119
                  {
1120
                     if (kind > 57)
1121
                        kind = 57;
1122
                     jjCheckNAdd(41);
1123
                  }
1124
                  break;
1125
               case 18:
1126
                  if (jjCanMove_0(hiByte, i1, i2, l1, l2))
1127
                     jjAddStates(29, 31);
1128
                  break;
1129
               case 22:
1130
                  if (jjCanMove_0(hiByte, i1, i2, l1, l2))
1131
                     jjAddStates(41, 42);
1132
                  break;
1133
               case 24:
1134
               case 32:
1135
                  if (jjCanMove_0(hiByte, i1, i2, l1, l2) && kind > 13)
1136
                     kind = 13;
1137
                  break;
1138
               case 26:
1139
                  if (jjCanMove_0(hiByte, i1, i2, l1, l2))
1140
                     jjAddStates(32, 34);
1141
                  break;
1142
               case 30:
1143
                  if (jjCanMove_0(hiByte, i1, i2, l1, l2))
1144
                     jjAddStates(43, 44);
1145
                  break;
1146
               case 34:
1147
                  if (!jjCanMove_1(hiByte, i1, i2, l1, l2))
1148
                     break;
1149
                  if (kind > 53)
1150
                     kind = 53;
1151
                  jjCheckNAdd(34);
1152
                  break;
1153
               case 35:
1154
                  if (jjCanMove_1(hiByte, i1, i2, l1, l2))
1155
                     jjCheckNAddStates(26, 28);
1156
                  break;
1157
               case 36:
1158
                  if (jjCanMove_1(hiByte, i1, i2, l1, l2))
1159
                     jjCheckNAddTwoStates(36, 37);
1160
                  break;
1161
               case 38:
1162
                  if (jjCanMove_1(hiByte, i1, i2, l1, l2))
1163
                     jjCheckNAddTwoStates(39, 40);
1164
                  break;
1165
               case 39:
1166
                  if (jjCanMove_1(hiByte, i1, i2, l1, l2))
1167
                     jjCheckNAddTwoStates(39, 40);
1168
                  break;
1169
               case 41:
1170
                  if (!jjCanMove_1(hiByte, i1, i2, l1, l2))
1171
                     break;
1172
                  if (kind > 57)
1173
                     kind = 57;
1174
                  jjCheckNAdd(41);
1175
                  break;
1176
               default : break;
1177
            }
1178
         } while(i != startsAt);
1179
      }
1180
      if (kind != 0x7fffffff)
1181
      {
1182
         jjmatchedKind = kind;
1183
         jjmatchedPos = curPos;
1184
         kind = 0x7fffffff;
1185
      }
1186
      ++curPos;
1187
      if ((i = jjnewStateCnt) == (startsAt = 42 - (jjnewStateCnt = startsAt)))
1188
         return curPos;
1189
      try { curChar = input_stream.readChar(); }
1190
      catch(java.io.IOException e) { return curPos; }
1191
   }
1192
}
1193
static final int[] jjnextStates = {
1194
   0, 1, 3, 5, 6, 7, 8, 13, 14, 34, 35, 36, 37, 39, 40, 41, 
1195
   26, 27, 29, 30, 31, 18, 19, 21, 22, 23, 35, 36, 37, 18, 19, 21, 
1196
   26, 27, 29, 3, 4, 11, 12, 15, 16, 22, 23, 30, 31, 
1197
};
1198
private static final boolean jjCanMove_0(int hiByte, int i1, int i2, long l1, long l2)
1199
{
1200
   switch(hiByte)
1201
   {
1202
      case 0:
1203
         return ((jjbitVec2[i2] & l2) != 0L);
1204
      default : 
1205
         if ((jjbitVec0[i1] & l1) != 0L)
1206
            return true;
1207
         return false;
1208
   }
1209
}
1210
private static final boolean jjCanMove_1(int hiByte, int i1, int i2, long l1, long l2)
1211
{
1212
   switch(hiByte)
1213
   {
1214
      case 0:
1215
         return ((jjbitVec4[i2] & l2) != 0L);
1216
      case 48:
1217
         return ((jjbitVec5[i2] & l2) != 0L);
1218
      case 49:
1219
         return ((jjbitVec6[i2] & l2) != 0L);
1220
      case 51:
1221
         return ((jjbitVec7[i2] & l2) != 0L);
1222
      case 61:
1223
         return ((jjbitVec8[i2] & l2) != 0L);
1224
      default : 
1225
         if ((jjbitVec3[i1] & l1) != 0L)
1226
            return true;
1227
         return false;
1228
   }
1229
}
1230
public static final String[] jjstrLiteralImages = {
1231
"", null, "\44\173", "\43\173", null, null, null, null, null, null, null, null, 
1232
null, null, "\164\162\165\145", "\146\141\154\163\145", "\156\165\154\154", "\175", 
1233
"\56", "\50", "\51", "\133", "\135", "\72", "\54", "\76", "\147\164", "\74", 
1234
"\154\164", "\76\75", "\147\145", "\74\75", "\154\145", "\75\75", "\145\161", "\41\75", 
1235
"\156\145", "\41", "\156\157\164", "\46\46", "\141\156\144", "\174\174", "\157\162", 
1236
"\145\155\160\164\171", "\151\156\163\164\141\156\143\145\157\146", "\52", "\53", "\55", "\77", "\57", 
1237
"\144\151\166", "\45", "\155\157\144", null, null, null, null, null, null, null, null, null, };
1238
public static final String[] lexStateNames = {
1239
   "DEFAULT", 
1240
   "IN_EXPRESSION", 
1241
};
1242
public static final int[] jjnewLexState = {
1243
   -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, 
1244
   -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
1245
   -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
1246
};
1247
static final long[] jjtoToken = {
1248
   0x233ffffffffff60fL, 
1249
};
1250
static final long[] jjtoSkip = {
1251
   0x1f0L, 
1252
};
1253
protected SimpleCharStream input_stream;
1254
private final int[] jjrounds = new int[42];
1255
private final int[] jjstateSet = new int[84];
1256
protected char curChar;
1257
public ELParserTokenManager(SimpleCharStream stream){
1258
   if (SimpleCharStream.staticFlag)
1259
      throw new Error("ERROR: Cannot use a static CharStream class with a non-static lexical analyzer.");
1260
   input_stream = stream;
1261
}
1262
public ELParserTokenManager(SimpleCharStream stream, int lexState){
1263
   this(stream);
1264
   SwitchTo(lexState);
1265
}
1266
public void ReInit(SimpleCharStream stream)
1267
{
1268
   jjmatchedPos = jjnewStateCnt = 0;
1269
   curLexState = defaultLexState;
1270
   input_stream = stream;
1271
   ReInitRounds();
1272
}
1273
private final void ReInitRounds()
1274
{
1275
   int i;
1276
   jjround = 0x80000001;
1277
   for (i = 42; i-- > 0;)
1278
      jjrounds[i] = 0x80000000;
1279
}
1280
public void ReInit(SimpleCharStream stream, int lexState)
1281
{
1282
   ReInit(stream);
1283
   SwitchTo(lexState);
1284
}
1285
public void SwitchTo(int lexState)
1286
{
1287
   if (lexState >= 2 || lexState < 0)
1288
      throw new TokenMgrError("Error: Ignoring invalid lexical state : " + lexState + ". State unchanged.", TokenMgrError.INVALID_LEXICAL_STATE);
1289
   else
1290
      curLexState = lexState;
1291
}
6
1292
7
	public void setDebugStream(java.io.PrintStream ds) {
1293
protected Token jjFillToken()
8
		debugStream = ds;
1294
{
9
	}
1295
   Token t = Token.newToken(jjmatchedKind);
1296
   t.kind = jjmatchedKind;
1297
   String im = jjstrLiteralImages[jjmatchedKind];
1298
   t.image = (im == null) ? input_stream.GetImage() : im;
1299
   t.beginLine = input_stream.getBeginLine();
1300
   t.beginColumn = input_stream.getBeginColumn();
1301
   t.endLine = input_stream.getEndLine();
1302
   t.endColumn = input_stream.getEndColumn();
1303
   return t;
1304
}
10
1305
11
	private final int jjStopStringLiteralDfa_0(int pos, long active0) {
1306
int curLexState = 0;
12
		switch (pos) {
1307
int defaultLexState = 0;
13
		case 0:
1308
int jjnewStateCnt;
14
			if ((active0 & 0x10L) != 0L)
1309
int jjround;
15
				return 2;
1310
int jjmatchedPos;
16
			if ((active0 & 0x4L) != 0L) {
1311
int jjmatchedKind;
17
				jjmatchedKind = 1;
18
				return 4;
19
			}
20
			if ((active0 & 0x8L) != 0L) {
21
				jjmatchedKind = 1;
22
				return 6;
23
			}
24
			return -1;
25
		default:
26
			return -1;
27
		}
28
	}
29
1312
30
	private final int jjStartNfa_0(int pos, long active0) {
1313
public Token getNextToken() 
31
		return jjMoveNfa_0(jjStopStringLiteralDfa_0(pos, active0), pos + 1);
1314
{
32
	}
1315
  int kind;
1316
  Token specialToken = null;
1317
  Token matchedToken;
1318
  int curPos = 0;
33
1319
34
	private final int jjStopAtPos(int pos, int kind) {
1320
  EOFLoop :
35
		jjmatchedKind = kind;
1321
  for (;;)
36
		jjmatchedPos = pos;
1322
  {   
37
		return pos + 1;
1323
   try   
38
	}
1324
   {     
1325
      curChar = input_stream.BeginToken();
1326
   }     
1327
   catch(java.io.IOException e)
1328
   {        
1329
      jjmatchedKind = 0;
1330
      matchedToken = jjFillToken();
1331
      return matchedToken;
1332
   }
39
1333
40
	private final int jjStartNfaWithStates_0(int pos, int kind, int state) {
1334
   switch(curLexState)
41
		jjmatchedKind = kind;
1335
   {
42
		jjmatchedPos = pos;
1336
     case 0:
43
		try {
1337
       jjmatchedKind = 0x7fffffff;
44
			curChar = input_stream.readChar();
1338
       jjmatchedPos = 0;
45
		} catch (java.io.IOException e) {
1339
       curPos = jjMoveStringLiteralDfa0_0();
46
			return pos + 1;
1340
       break;
47
		}
1341
     case 1:
48
		return jjMoveNfa_0(state, pos + 1);
1342
       try { input_stream.backup(0);
49
	}
1343
          while (curChar <= 32 && (0x100002600L & (1L << curChar)) != 0L)
1344
             curChar = input_stream.BeginToken();
1345
       }
1346
       catch (java.io.IOException e1) { continue EOFLoop; }
1347
       jjmatchedKind = 0x7fffffff;
1348
       jjmatchedPos = 0;
1349
       curPos = jjMoveStringLiteralDfa0_1();
1350
       if (jjmatchedPos == 0 && jjmatchedKind > 61)
1351
       {
1352
          jjmatchedKind = 61;
1353
       }
1354
       break;
1355
   }
1356
     if (jjmatchedKind != 0x7fffffff)
1357
     {
1358
        if (jjmatchedPos + 1 < curPos)
1359
           input_stream.backup(curPos - jjmatchedPos - 1);
1360
        if ((jjtoToken[jjmatchedKind >> 6] & (1L << (jjmatchedKind & 077))) != 0L)
1361
        {
1362
           matchedToken = jjFillToken();
1363
       if (jjnewLexState[jjmatchedKind] != -1)
1364
         curLexState = jjnewLexState[jjmatchedKind];
1365
           return matchedToken;
1366
        }
1367
        else
1368
        {
1369
         if (jjnewLexState[jjmatchedKind] != -1)
1370
           curLexState = jjnewLexState[jjmatchedKind];
1371
           continue EOFLoop;
1372
        }
1373
     }
1374
     int error_line = input_stream.getEndLine();
1375
     int error_column = input_stream.getEndColumn();
1376
     String error_after = null;
1377
     boolean EOFSeen = false;
1378
     try { input_stream.readChar(); input_stream.backup(1); }
1379
     catch (java.io.IOException e1) {
1380
        EOFSeen = true;
1381
        error_after = curPos <= 1 ? "" : input_stream.GetImage();
1382
        if (curChar == '\n' || curChar == '\r') {
1383
           error_line++;
1384
           error_column = 0;
1385
        }
1386
        else
1387
           error_column++;
1388
     }
1389
     if (!EOFSeen) {
1390
        input_stream.backup(1);
1391
        error_after = curPos <= 1 ? "" : input_stream.GetImage();
1392
     }
1393
     throw new TokenMgrError(EOFSeen, curLexState, error_line, error_column, error_after, curChar, TokenMgrError.LEXICAL_ERROR);
1394
  }
1395
}
50
1396
51
	private final int jjMoveStringLiteralDfa0_0() {
52
		switch (curChar) {
53
		case 35:
54
			return jjMoveStringLiteralDfa1_0(0x8L);
55
		case 36:
56
			return jjMoveStringLiteralDfa1_0(0x4L);
57
		case 92:
58
			return jjStartNfaWithStates_0(0, 4, 2);
59
		default:
60
			return jjMoveNfa_0(7, 0);
61
		}
62
	}
63
64
	private final int jjMoveStringLiteralDfa1_0(long active0) {
65
		try {
66
			curChar = input_stream.readChar();
67
		} catch (java.io.IOException e) {
68
			jjStopStringLiteralDfa_0(0, active0);
69
			return 1;
70
		}
71
		switch (curChar) {
72
		case 123:
73
			if ((active0 & 0x4L) != 0L)
74
				return jjStopAtPos(1, 2);
75
			else if ((active0 & 0x8L) != 0L)
76
				return jjStopAtPos(1, 3);
77
			break;
78
		default:
79
			break;
80
		}
81
		return jjStartNfa_0(0, active0);
82
	}
83
84
	private final void jjCheckNAdd(int state) {
85
		if (jjrounds[state] != jjround) {
86
			jjstateSet[jjnewStateCnt++] = state;
87
			jjrounds[state] = jjround;
88
		}
89
	}
90
91
	private final void jjAddStates(int start, int end) {
92
		do {
93
			jjstateSet[jjnewStateCnt++] = jjnextStates[start];
94
		} while (start++ != end);
95
	}
96
97
	private final void jjCheckNAddTwoStates(int state1, int state2) {
98
		jjCheckNAdd(state1);
99
		jjCheckNAdd(state2);
100
	}
101
102
	private final void jjCheckNAddStates(int start, int end) {
103
		do {
104
			jjCheckNAdd(jjnextStates[start]);
105
		} while (start++ != end);
106
	}
107
108
	private final void jjCheckNAddStates(int start) {
109
		jjCheckNAdd(jjnextStates[start]);
110
		jjCheckNAdd(jjnextStates[start + 1]);
111
	}
112
113
	static final long[] jjbitVec0 = { 0xfffffffffffffffeL, 0xffffffffffffffffL,
114
			0xffffffffffffffffL, 0xffffffffffffffffL };
115
116
	static final long[] jjbitVec2 = { 0x0L, 0x0L, 0xffffffffffffffffL,
117
			0xffffffffffffffffL };
118
119
	private final int jjMoveNfa_0(int startState, int curPos) {
120
		int[] nextStates;
121
		int startsAt = 0;
122
		jjnewStateCnt = 8;
123
		int i = 1;
124
		jjstateSet[0] = startState;
125
		int j, kind = 0x7fffffff;
126
		for (;;) {
127
			if (++jjround == 0x7fffffff)
128
				ReInitRounds();
129
			if (curChar < 64) {
130
				long l = 1L << curChar;
131
				MatchLoop: do {
132
					switch (jjstateSet[--i]) {
133
					case 7:
134
						if ((0xffffffe7ffffffffL & l) != 0L) {
135
							if (kind > 1)
136
								kind = 1;
137
							jjCheckNAddStates(0, 3);
138
						} else if ((0x1800000000L & l) != 0L) {
139
							if (kind > 1)
140
								kind = 1;
141
						}
142
						if (curChar == 35)
143
							jjstateSet[jjnewStateCnt++] = 6;
144
						else if (curChar == 36)
145
							jjstateSet[jjnewStateCnt++] = 4;
146
						break;
147
					case 0:
148
						if ((0xffffffe7ffffffffL & l) == 0L)
149
							break;
150
						if (kind > 1)
151
							kind = 1;
152
						jjCheckNAddStates(0, 3);
153
						break;
154
					case 2:
155
						if ((0x1800000000L & l) == 0L)
156
							break;
157
						if (kind > 1)
158
							kind = 1;
159
						jjCheckNAddStates(0, 3);
160
						break;
161
					case 3:
162
						if (curChar == 36)
163
							jjstateSet[jjnewStateCnt++] = 4;
164
						break;
165
					case 4:
166
						if ((0xffffffefffffffffL & l) == 0L)
167
							break;
168
						if (kind > 1)
169
							kind = 1;
170
						jjCheckNAddStates(0, 3);
171
						break;
172
					case 5:
173
						if (curChar == 35)
174
							jjstateSet[jjnewStateCnt++] = 6;
175
						break;
176
					case 6:
177
						if ((0xfffffff7ffffffffL & l) == 0L)
178
							break;
179
						if (kind > 1)
180
							kind = 1;
181
						jjCheckNAddStates(0, 3);
182
						break;
183
					default:
184
						break;
185
					}
186
				} while (i != startsAt);
187
			} else if (curChar < 128) {
188
				long l = 1L << (curChar & 077);
189
				MatchLoop: do {
190
					switch (jjstateSet[--i]) {
191
					case 7:
192
						if ((0xffffffffefffffffL & l) != 0L) {
193
							if (kind > 1)
194
								kind = 1;
195
							jjCheckNAddStates(0, 3);
196
						} else if (curChar == 92)
197
							jjstateSet[jjnewStateCnt++] = 2;
198
						break;
199
					case 0:
200
						if ((0xffffffffefffffffL & l) == 0L)
201
							break;
202
						if (kind > 1)
203
							kind = 1;
204
						jjCheckNAddStates(0, 3);
205
						break;
206
					case 1:
207
						if (curChar == 92)
208
							jjstateSet[jjnewStateCnt++] = 2;
209
						break;
210
					case 2:
211
						if (curChar != 92)
212
							break;
213
						if (kind > 1)
214
							kind = 1;
215
						jjCheckNAddStates(0, 3);
216
						break;
217
					case 4:
218
					case 6:
219
						if ((0xf7ffffffffffffffL & l) == 0L)
220
							break;
221
						if (kind > 1)
222
							kind = 1;
223
						jjCheckNAddStates(0, 3);
224
						break;
225
					default:
226
						break;
227
					}
228
				} while (i != startsAt);
229
			} else {
230
				int hiByte = (int) (curChar >> 8);
231
				int i1 = hiByte >> 6;
232
				long l1 = 1L << (hiByte & 077);
233
				int i2 = (curChar & 0xff) >> 6;
234
				long l2 = 1L << (curChar & 077);
235
				MatchLoop: do {
236
					switch (jjstateSet[--i]) {
237
					case 7:
238
					case 0:
239
					case 4:
240
					case 6:
241
						if (!jjCanMove_0(hiByte, i1, i2, l1, l2))
242
							break;
243
						if (kind > 1)
244
							kind = 1;
245
						jjCheckNAddStates(0, 3);
246
						break;
247
					default:
248
						break;
249
					}
250
				} while (i != startsAt);
251
			}
252
			if (kind != 0x7fffffff) {
253
				jjmatchedKind = kind;
254
				jjmatchedPos = curPos;
255
				kind = 0x7fffffff;
256
			}
257
			++curPos;
258
			if ((i = jjnewStateCnt) == (startsAt = 8 - (jjnewStateCnt = startsAt)))
259
				return curPos;
260
			try {
261
				curChar = input_stream.readChar();
262
			} catch (java.io.IOException e) {
263
				return curPos;
264
			}
265
		}
266
	}
267
268
	private final int jjStopStringLiteralDfa_1(int pos, long active0) {
269
		switch (pos) {
270
		case 0:
271
			if ((active0 & 0x141d555401c000L) != 0L) {
272
				jjmatchedKind = 53;
273
				return 41;
274
			}
275
			if ((active0 & 0x40000L) != 0L)
276
				return 1;
277
			return -1;
278
		case 1:
279
			if ((active0 & 0x41554000000L) != 0L)
280
				return 42;
281
			if ((active0 & 0x1419400001c000L) != 0L) {
282
				jjmatchedKind = 53;
283
				jjmatchedPos = 1;
284
				return 42;
285
			}
286
			return -1;
287
		case 2:
288
			if ((active0 & 0x14014000000000L) != 0L)
289
				return 42;
290
			if ((active0 & 0x18000001c000L) != 0L) {
291
				jjmatchedKind = 53;
292
				jjmatchedPos = 2;
293
				return 42;
294
			}
295
			return -1;
296
		case 3:
297
			if ((active0 & 0x14000L) != 0L)
298
				return 42;
299
			if ((active0 & 0x180000008000L) != 0L) {
300
				jjmatchedKind = 53;
301
				jjmatchedPos = 3;
302
				return 42;
303
			}
304
			return -1;
305
		case 4:
306
			if ((active0 & 0x80000008000L) != 0L)
307
				return 42;
308
			if ((active0 & 0x100000000000L) != 0L) {
309
				jjmatchedKind = 53;
310
				jjmatchedPos = 4;
311
				return 42;
312
			}
313
			return -1;
314
		case 5:
315
			if ((active0 & 0x100000000000L) != 0L) {
316
				jjmatchedKind = 53;
317
				jjmatchedPos = 5;
318
				return 42;
319
			}
320
			return -1;
321
		case 6:
322
			if ((active0 & 0x100000000000L) != 0L) {
323
				jjmatchedKind = 53;
324
				jjmatchedPos = 6;
325
				return 42;
326
			}
327
			return -1;
328
		case 7:
329
			if ((active0 & 0x100000000000L) != 0L) {
330
				jjmatchedKind = 53;
331
				jjmatchedPos = 7;
332
				return 42;
333
			}
334
			return -1;
335
		case 8:
336
			if ((active0 & 0x100000000000L) != 0L) {
337
				jjmatchedKind = 53;
338
				jjmatchedPos = 8;
339
				return 42;
340
			}
341
			return -1;
342
		default:
343
			return -1;
344
		}
345
	}
346
347
	private final int jjStartNfa_1(int pos, long active0) {
348
		return jjMoveNfa_1(jjStopStringLiteralDfa_1(pos, active0), pos + 1);
349
	}
350
351
	private final int jjStartNfaWithStates_1(int pos, int kind, int state) {
352
		jjmatchedKind = kind;
353
		jjmatchedPos = pos;
354
		try {
355
			curChar = input_stream.readChar();
356
		} catch (java.io.IOException e) {
357
			return pos + 1;
358
		}
359
		return jjMoveNfa_1(state, pos + 1);
360
	}
361
362
	private final int jjMoveStringLiteralDfa0_1() {
363
		switch (curChar) {
364
		case 33:
365
			jjmatchedKind = 37;
366
			return jjMoveStringLiteralDfa1_1(0x800000000L);
367
		case 37:
368
			return jjStopAtPos(0, 51);
369
		case 38:
370
			return jjMoveStringLiteralDfa1_1(0x8000000000L);
371
		case 40:
372
			return jjStopAtPos(0, 19);
373
		case 41:
374
			return jjStopAtPos(0, 20);
375
		case 42:
376
			return jjStopAtPos(0, 45);
377
		case 43:
378
			return jjStopAtPos(0, 46);
379
		case 44:
380
			return jjStopAtPos(0, 24);
381
		case 45:
382
			return jjStopAtPos(0, 47);
383
		case 46:
384
			return jjStartNfaWithStates_1(0, 18, 1);
385
		case 47:
386
			return jjStopAtPos(0, 49);
387
		case 58:
388
			return jjStopAtPos(0, 23);
389
		case 60:
390
			jjmatchedKind = 27;
391
			return jjMoveStringLiteralDfa1_1(0x80000000L);
392
		case 61:
393
			return jjMoveStringLiteralDfa1_1(0x200000000L);
394
		case 62:
395
			jjmatchedKind = 25;
396
			return jjMoveStringLiteralDfa1_1(0x20000000L);
397
		case 63:
398
			return jjStopAtPos(0, 48);
399
		case 91:
400
			return jjStopAtPos(0, 21);
401
		case 93:
402
			return jjStopAtPos(0, 22);
403
		case 97:
404
			return jjMoveStringLiteralDfa1_1(0x10000000000L);
405
		case 100:
406
			return jjMoveStringLiteralDfa1_1(0x4000000000000L);
407
		case 101:
408
			return jjMoveStringLiteralDfa1_1(0x80400000000L);
409
		case 102:
410
			return jjMoveStringLiteralDfa1_1(0x8000L);
411
		case 103:
412
			return jjMoveStringLiteralDfa1_1(0x44000000L);
413
		case 105:
414
			return jjMoveStringLiteralDfa1_1(0x100000000000L);
415
		case 108:
416
			return jjMoveStringLiteralDfa1_1(0x110000000L);
417
		case 109:
418
			return jjMoveStringLiteralDfa1_1(0x10000000000000L);
419
		case 110:
420
			return jjMoveStringLiteralDfa1_1(0x5000010000L);
421
		case 111:
422
			return jjMoveStringLiteralDfa1_1(0x40000000000L);
423
		case 116:
424
			return jjMoveStringLiteralDfa1_1(0x4000L);
425
		case 124:
426
			return jjMoveStringLiteralDfa1_1(0x20000000000L);
427
		case 125:
428
			return jjStopAtPos(0, 17);
429
		default:
430
			return jjMoveNfa_1(0, 0);
431
		}
432
	}
433
434
	private final int jjMoveStringLiteralDfa1_1(long active0) {
435
		try {
436
			curChar = input_stream.readChar();
437
		} catch (java.io.IOException e) {
438
			jjStopStringLiteralDfa_1(0, active0);
439
			return 1;
440
		}
441
		switch (curChar) {
442
		case 38:
443
			if ((active0 & 0x8000000000L) != 0L)
444
				return jjStopAtPos(1, 39);
445
			break;
446
		case 61:
447
			if ((active0 & 0x20000000L) != 0L)
448
				return jjStopAtPos(1, 29);
449
			else if ((active0 & 0x80000000L) != 0L)
450
				return jjStopAtPos(1, 31);
451
			else if ((active0 & 0x200000000L) != 0L)
452
				return jjStopAtPos(1, 33);
453
			else if ((active0 & 0x800000000L) != 0L)
454
				return jjStopAtPos(1, 35);
455
			break;
456
		case 97:
457
			return jjMoveStringLiteralDfa2_1(active0, 0x8000L);
458
		case 101:
459
			if ((active0 & 0x40000000L) != 0L)
460
				return jjStartNfaWithStates_1(1, 30, 42);
461
			else if ((active0 & 0x100000000L) != 0L)
462
				return jjStartNfaWithStates_1(1, 32, 42);
463
			else if ((active0 & 0x1000000000L) != 0L)
464
				return jjStartNfaWithStates_1(1, 36, 42);
465
			break;
466
		case 105:
467
			return jjMoveStringLiteralDfa2_1(active0, 0x4000000000000L);
468
		case 109:
469
			return jjMoveStringLiteralDfa2_1(active0, 0x80000000000L);
470
		case 110:
471
			return jjMoveStringLiteralDfa2_1(active0, 0x110000000000L);
472
		case 111:
473
			return jjMoveStringLiteralDfa2_1(active0, 0x10004000000000L);
474
		case 113:
475
			if ((active0 & 0x400000000L) != 0L)
476
				return jjStartNfaWithStates_1(1, 34, 42);
477
			break;
478
		case 114:
479
			if ((active0 & 0x40000000000L) != 0L)
480
				return jjStartNfaWithStates_1(1, 42, 42);
481
			return jjMoveStringLiteralDfa2_1(active0, 0x4000L);
482
		case 116:
483
			if ((active0 & 0x4000000L) != 0L)
484
				return jjStartNfaWithStates_1(1, 26, 42);
485
			else if ((active0 & 0x10000000L) != 0L)
486
				return jjStartNfaWithStates_1(1, 28, 42);
487
			break;
488
		case 117:
489
			return jjMoveStringLiteralDfa2_1(active0, 0x10000L);
490
		case 124:
491
			if ((active0 & 0x20000000000L) != 0L)
492
				return jjStopAtPos(1, 41);
493
			break;
494
		default:
495
			break;
496
		}
497
		return jjStartNfa_1(0, active0);
498
	}
499
500
	private final int jjMoveStringLiteralDfa2_1(long old0, long active0) {
501
		if (((active0 &= old0)) == 0L)
502
			return jjStartNfa_1(0, old0);
503
		try {
504
			curChar = input_stream.readChar();
505
		} catch (java.io.IOException e) {
506
			jjStopStringLiteralDfa_1(1, active0);
507
			return 2;
508
		}
509
		switch (curChar) {
510
		case 100:
511
			if ((active0 & 0x10000000000L) != 0L)
512
				return jjStartNfaWithStates_1(2, 40, 42);
513
			else if ((active0 & 0x10000000000000L) != 0L)
514
				return jjStartNfaWithStates_1(2, 52, 42);
515
			break;
516
		case 108:
517
			return jjMoveStringLiteralDfa3_1(active0, 0x18000L);
518
		case 112:
519
			return jjMoveStringLiteralDfa3_1(active0, 0x80000000000L);
520
		case 115:
521
			return jjMoveStringLiteralDfa3_1(active0, 0x100000000000L);
522
		case 116:
523
			if ((active0 & 0x4000000000L) != 0L)
524
				return jjStartNfaWithStates_1(2, 38, 42);
525
			break;
526
		case 117:
527
			return jjMoveStringLiteralDfa3_1(active0, 0x4000L);
528
		case 118:
529
			if ((active0 & 0x4000000000000L) != 0L)
530
				return jjStartNfaWithStates_1(2, 50, 42);
531
			break;
532
		default:
533
			break;
534
		}
535
		return jjStartNfa_1(1, active0);
536
	}
537
538
	private final int jjMoveStringLiteralDfa3_1(long old0, long active0) {
539
		if (((active0 &= old0)) == 0L)
540
			return jjStartNfa_1(1, old0);
541
		try {
542
			curChar = input_stream.readChar();
543
		} catch (java.io.IOException e) {
544
			jjStopStringLiteralDfa_1(2, active0);
545
			return 3;
546
		}
547
		switch (curChar) {
548
		case 101:
549
			if ((active0 & 0x4000L) != 0L)
550
				return jjStartNfaWithStates_1(3, 14, 42);
551
			break;
552
		case 108:
553
			if ((active0 & 0x10000L) != 0L)
554
				return jjStartNfaWithStates_1(3, 16, 42);
555
			break;
556
		case 115:
557
			return jjMoveStringLiteralDfa4_1(active0, 0x8000L);
558
		case 116:
559
			return jjMoveStringLiteralDfa4_1(active0, 0x180000000000L);
560
		default:
561
			break;
562
		}
563
		return jjStartNfa_1(2, active0);
564
	}
565
566
	private final int jjMoveStringLiteralDfa4_1(long old0, long active0) {
567
		if (((active0 &= old0)) == 0L)
568
			return jjStartNfa_1(2, old0);
569
		try {
570
			curChar = input_stream.readChar();
571
		} catch (java.io.IOException e) {
572
			jjStopStringLiteralDfa_1(3, active0);
573
			return 4;
574
		}
575
		switch (curChar) {
576
		case 97:
577
			return jjMoveStringLiteralDfa5_1(active0, 0x100000000000L);
578
		case 101:
579
			if ((active0 & 0x8000L) != 0L)
580
				return jjStartNfaWithStates_1(4, 15, 42);
581
			break;
582
		case 121:
583
			if ((active0 & 0x80000000000L) != 0L)
584
				return jjStartNfaWithStates_1(4, 43, 42);
585
			break;
586
		default:
587
			break;
588
		}
589
		return jjStartNfa_1(3, active0);
590
	}
591
592
	private final int jjMoveStringLiteralDfa5_1(long old0, long active0) {
593
		if (((active0 &= old0)) == 0L)
594
			return jjStartNfa_1(3, old0);
595
		try {
596
			curChar = input_stream.readChar();
597
		} catch (java.io.IOException e) {
598
			jjStopStringLiteralDfa_1(4, active0);
599
			return 5;
600
		}
601
		switch (curChar) {
602
		case 110:
603
			return jjMoveStringLiteralDfa6_1(active0, 0x100000000000L);
604
		default:
605
			break;
606
		}
607
		return jjStartNfa_1(4, active0);
608
	}
609
610
	private final int jjMoveStringLiteralDfa6_1(long old0, long active0) {
611
		if (((active0 &= old0)) == 0L)
612
			return jjStartNfa_1(4, old0);
613
		try {
614
			curChar = input_stream.readChar();
615
		} catch (java.io.IOException e) {
616
			jjStopStringLiteralDfa_1(5, active0);
617
			return 6;
618
		}
619
		switch (curChar) {
620
		case 99:
621
			return jjMoveStringLiteralDfa7_1(active0, 0x100000000000L);
622
		default:
623
			break;
624
		}
625
		return jjStartNfa_1(5, active0);
626
	}
627
628
	private final int jjMoveStringLiteralDfa7_1(long old0, long active0) {
629
		if (((active0 &= old0)) == 0L)
630
			return jjStartNfa_1(5, old0);
631
		try {
632
			curChar = input_stream.readChar();
633
		} catch (java.io.IOException e) {
634
			jjStopStringLiteralDfa_1(6, active0);
635
			return 7;
636
		}
637
		switch (curChar) {
638
		case 101:
639
			return jjMoveStringLiteralDfa8_1(active0, 0x100000000000L);
640
		default:
641
			break;
642
		}
643
		return jjStartNfa_1(6, active0);
644
	}
645
646
	private final int jjMoveStringLiteralDfa8_1(long old0, long active0) {
647
		if (((active0 &= old0)) == 0L)
648
			return jjStartNfa_1(6, old0);
649
		try {
650
			curChar = input_stream.readChar();
651
		} catch (java.io.IOException e) {
652
			jjStopStringLiteralDfa_1(7, active0);
653
			return 8;
654
		}
655
		switch (curChar) {
656
		case 111:
657
			return jjMoveStringLiteralDfa9_1(active0, 0x100000000000L);
658
		default:
659
			break;
660
		}
661
		return jjStartNfa_1(7, active0);
662
	}
663
664
	private final int jjMoveStringLiteralDfa9_1(long old0, long active0) {
665
		if (((active0 &= old0)) == 0L)
666
			return jjStartNfa_1(7, old0);
667
		try {
668
			curChar = input_stream.readChar();
669
		} catch (java.io.IOException e) {
670
			jjStopStringLiteralDfa_1(8, active0);
671
			return 9;
672
		}
673
		switch (curChar) {
674
		case 102:
675
			if ((active0 & 0x100000000000L) != 0L)
676
				return jjStartNfaWithStates_1(9, 44, 42);
677
			break;
678
		default:
679
			break;
680
		}
681
		return jjStartNfa_1(8, active0);
682
	}
683
684
	static final long[] jjbitVec3 = { 0x1ff00000fffffffeL, 0xffffffffffffc000L,
685
			0xffffffffL, 0x600000000000000L };
686
687
	static final long[] jjbitVec4 = { 0x0L, 0x0L, 0x0L, 0xff7fffffff7fffffL };
688
689
	static final long[] jjbitVec5 = { 0x0L, 0xffffffffffffffffL,
690
			0xffffffffffffffffL, 0xffffffffffffffffL };
691
692
	static final long[] jjbitVec6 = { 0xffffffffffffffffL, 0xffffffffffffffffL,
693
			0xffffL, 0x0L };
694
695
	static final long[] jjbitVec7 = { 0xffffffffffffffffL, 0xffffffffffffffffL,
696
			0x0L, 0x0L };
697
698
	static final long[] jjbitVec8 = { 0x3fffffffffffL, 0x0L, 0x0L, 0x0L };
699
700
	private final int jjMoveNfa_1(int startState, int curPos) {
701
		int[] nextStates;
702
		int startsAt = 0;
703
		jjnewStateCnt = 41;
704
		int i = 1;
705
		jjstateSet[0] = startState;
706
		int j, kind = 0x7fffffff;
707
		for (;;) {
708
			if (++jjround == 0x7fffffff)
709
				ReInitRounds();
710
			if (curChar < 64) {
711
				long l = 1L << curChar;
712
				MatchLoop: do {
713
					switch (jjstateSet[--i]) {
714
					case 41:
715
						if ((0x3ff001000000000L & l) != 0L) {
716
							if (kind > 55)
717
								kind = 55;
718
							jjCheckNAdd(40);
719
						} else if ((0x600000000000L & l) != 0L)
720
							jjCheckNAddStates(4, 6);
721
						else if (curChar == 58) {
722
							if (kind > 54)
723
								kind = 54;
724
						}
725
						if ((0x3ff001000000000L & l) != 0L)
726
							jjCheckNAddStates(7, 10);
727
						if ((0x3ff001000000000L & l) != 0L) {
728
							if (kind > 53)
729
								kind = 53;
730
							jjCheckNAdd(34);
731
						}
732
						if ((0x1800000000L & l) != 0L)
733
							jjCheckNAddStates(11, 14);
734
						break;
735
					case 0:
736
						if ((0x3ff000000000000L & l) != 0L) {
737
							if (kind > 9)
738
								kind = 9;
739
							jjCheckNAddStates(15, 19);
740
						} else if ((0x1800000000L & l) != 0L) {
741
							if (kind > 53)
742
								kind = 53;
743
							jjCheckNAddStates(20, 25);
744
						} else if (curChar == 39)
745
							jjCheckNAddStates(26, 30);
746
						else if (curChar == 34)
747
							jjCheckNAddStates(31, 35);
748
						else if (curChar == 46)
749
							jjCheckNAdd(1);
750
						break;
751
					case 42:
752
						if ((0x3ff001000000000L & l) != 0L) {
753
							if (kind > 55)
754
								kind = 55;
755
							jjCheckNAdd(40);
756
						} else if ((0x600000000000L & l) != 0L)
757
							jjCheckNAddStates(4, 6);
758
						else if (curChar == 58) {
759
							if (kind > 54)
760
								kind = 54;
761
						}
762
						if ((0x3ff001000000000L & l) != 0L)
763
							jjCheckNAddStates(11, 14);
764
						if ((0x3ff001000000000L & l) != 0L)
765
							jjCheckNAddStates(7, 10);
766
						if ((0x3ff001000000000L & l) != 0L) {
767
							if (kind > 53)
768
								kind = 53;
769
							jjCheckNAdd(34);
770
						}
771
						if ((0x1800000000L & l) != 0L)
772
							jjCheckNAddStates(11, 14);
773
						break;
774
					case 1:
775
						if ((0x3ff000000000000L & l) == 0L)
776
							break;
777
						if (kind > 10)
778
							kind = 10;
779
						jjCheckNAddTwoStates(1, 2);
780
						break;
781
					case 3:
782
						if ((0x280000000000L & l) != 0L)
783
							jjCheckNAdd(4);
784
						break;
785
					case 4:
786
						if ((0x3ff000000000000L & l) == 0L)
787
							break;
788
						if (kind > 10)
789
							kind = 10;
790
						jjCheckNAdd(4);
791
						break;
792
					case 5:
793
						if ((0x3ff000000000000L & l) == 0L)
794
							break;
795
						if (kind > 9)
796
							kind = 9;
797
						jjCheckNAddStates(15, 19);
798
						break;
799
					case 6:
800
						if ((0x3ff000000000000L & l) == 0L)
801
							break;
802
						if (kind > 9)
803
							kind = 9;
804
						jjCheckNAdd(6);
805
						break;
806
					case 7:
807
						if ((0x3ff000000000000L & l) != 0L)
808
							jjCheckNAddTwoStates(7, 8);
809
						break;
810
					case 8:
811
						if (curChar != 46)
812
							break;
813
						if (kind > 10)
814
							kind = 10;
815
						jjCheckNAddTwoStates(9, 10);
816
						break;
817
					case 9:
818
						if ((0x3ff000000000000L & l) == 0L)
819
							break;
820
						if (kind > 10)
821
							kind = 10;
822
						jjCheckNAddTwoStates(9, 10);
823
						break;
824
					case 11:
825
						if ((0x280000000000L & l) != 0L)
826
							jjCheckNAdd(12);
827
						break;
828
					case 12:
829
						if ((0x3ff000000000000L & l) == 0L)
830
							break;
831
						if (kind > 10)
832
							kind = 10;
833
						jjCheckNAdd(12);
834
						break;
835
					case 13:
836
						if ((0x3ff000000000000L & l) != 0L)
837
							jjCheckNAddTwoStates(13, 14);
838
						break;
839
					case 15:
840
						if ((0x280000000000L & l) != 0L)
841
							jjCheckNAdd(16);
842
						break;
843
					case 16:
844
						if ((0x3ff000000000000L & l) == 0L)
845
							break;
846
						if (kind > 10)
847
							kind = 10;
848
						jjCheckNAdd(16);
849
						break;
850
					case 17:
851
						if (curChar == 34)
852
							jjCheckNAddStates(31, 35);
853
						break;
854
					case 18:
855
						if ((0xfffffffbffffffffL & l) != 0L)
856
							jjCheckNAddStates(36, 38);
857
						break;
858
					case 20:
859
						if (curChar == 34)
860
							jjCheckNAddStates(36, 38);
861
						break;
862
					case 21:
863
						if (curChar == 34 && kind > 12)
864
							kind = 12;
865
						break;
866
					case 22:
867
						if ((0xfffffffbffffffffL & l) != 0L)
868
							jjCheckNAddTwoStates(22, 23);
869
						break;
870
					case 24:
871
						if ((0xfffffffbffffffffL & l) != 0L && kind > 13)
872
							kind = 13;
873
						break;
874
					case 25:
875
						if (curChar == 39)
876
							jjCheckNAddStates(26, 30);
877
						break;
878
					case 26:
879
						if ((0xffffff7fffffffffL & l) != 0L)
880
							jjCheckNAddStates(39, 41);
881
						break;
882
					case 28:
883
						if (curChar == 39)
884
							jjCheckNAddStates(39, 41);
885
						break;
886
					case 29:
887
						if (curChar == 39 && kind > 12)
888
							kind = 12;
889
						break;
890
					case 30:
891
						if ((0xffffff7fffffffffL & l) != 0L)
892
							jjCheckNAddTwoStates(30, 31);
893
						break;
894
					case 32:
895
						if ((0xffffff7fffffffffL & l) != 0L && kind > 13)
896
							kind = 13;
897
						break;
898
					case 33:
899
						if ((0x1800000000L & l) == 0L)
900
							break;
901
						if (kind > 53)
902
							kind = 53;
903
						jjCheckNAddStates(20, 25);
904
						break;
905
					case 34:
906
						if ((0x3ff001000000000L & l) == 0L)
907
							break;
908
						if (kind > 53)
909
							kind = 53;
910
						jjCheckNAdd(34);
911
						break;
912
					case 35:
913
						if ((0x3ff001000000000L & l) != 0L)
914
							jjCheckNAddStates(7, 10);
915
						break;
916
					case 36:
917
						if ((0x1800000000L & l) != 0L)
918
							jjCheckNAddStates(11, 14);
919
						break;
920
					case 37:
921
						if ((0x3ff001000000000L & l) != 0L)
922
							jjCheckNAddStates(11, 14);
923
						break;
924
					case 38:
925
						if ((0x600000000000L & l) != 0L)
926
							jjCheckNAddStates(4, 6);
927
						break;
928
					case 39:
929
						if (curChar == 58 && kind > 54)
930
							kind = 54;
931
						break;
932
					case 40:
933
						if ((0x3ff001000000000L & l) == 0L)
934
							break;
935
						if (kind > 55)
936
							kind = 55;
937
						jjCheckNAdd(40);
938
						break;
939
					default:
940
						break;
941
					}
942
				} while (i != startsAt);
943
			} else if (curChar < 128) {
944
				long l = 1L << (curChar & 077);
945
				MatchLoop: do {
946
					switch (jjstateSet[--i]) {
947
					case 41:
948
						if ((0x7fffffe87fffffeL & l) != 0L) {
949
							if (kind > 55)
950
								kind = 55;
951
							jjCheckNAdd(40);
952
						}
953
						if ((0x7fffffe87fffffeL & l) != 0L)
954
							jjCheckNAddStates(11, 14);
955
						if ((0x7fffffe87fffffeL & l) != 0L)
956
							jjCheckNAddStates(7, 10);
957
						if ((0x7fffffe87fffffeL & l) != 0L) {
958
							if (kind > 53)
959
								kind = 53;
960
							jjCheckNAdd(34);
961
						}
962
						break;
963
					case 0:
964
						if ((0x7fffffe87fffffeL & l) == 0L)
965
							break;
966
						if (kind > 53)
967
							kind = 53;
968
						jjCheckNAddStates(20, 25);
969
						break;
970
					case 42:
971
						if ((0x7fffffe87fffffeL & l) != 0L) {
972
							if (kind > 55)
973
								kind = 55;
974
							jjCheckNAdd(40);
975
						}
976
						if ((0x7fffffe87fffffeL & l) != 0L)
977
							jjCheckNAddStates(11, 14);
978
						if ((0x7fffffe87fffffeL & l) != 0L)
979
							jjCheckNAddStates(11, 14);
980
						if ((0x7fffffe87fffffeL & l) != 0L)
981
							jjCheckNAddStates(7, 10);
982
						if ((0x7fffffe87fffffeL & l) != 0L) {
983
							if (kind > 53)
984
								kind = 53;
985
							jjCheckNAdd(34);
986
						}
987
						break;
988
					case 2:
989
						if ((0x2000000020L & l) != 0L)
990
							jjAddStates(42, 43);
991
						break;
992
					case 10:
993
						if ((0x2000000020L & l) != 0L)
994
							jjAddStates(44, 45);
995
						break;
996
					case 14:
997
						if ((0x2000000020L & l) != 0L)
998
							jjAddStates(46, 47);
999
						break;
1000
					case 18:
1001
						if ((0xffffffffefffffffL & l) != 0L)
1002
							jjCheckNAddStates(36, 38);
1003
						break;
1004
					case 19:
1005
						if (curChar == 92)
1006
							jjstateSet[jjnewStateCnt++] = 20;
1007
						break;
1008
					case 20:
1009
						if (curChar == 92)
1010
							jjCheckNAddStates(36, 38);
1011
						break;
1012
					case 22:
1013
						if ((0xffffffffefffffffL & l) != 0L)
1014
							jjAddStates(48, 49);
1015
						break;
1016
					case 23:
1017
						if (curChar == 92)
1018
							jjstateSet[jjnewStateCnt++] = 24;
1019
						break;
1020
					case 24:
1021
					case 32:
1022
						if ((0xffffffffefffffffL & l) != 0L && kind > 13)
1023
							kind = 13;
1024
						break;
1025
					case 26:
1026
						if ((0xffffffffefffffffL & l) != 0L)
1027
							jjCheckNAddStates(39, 41);
1028
						break;
1029
					case 27:
1030
						if (curChar == 92)
1031
							jjstateSet[jjnewStateCnt++] = 28;
1032
						break;
1033
					case 28:
1034
						if (curChar == 92)
1035
							jjCheckNAddStates(39, 41);
1036
						break;
1037
					case 30:
1038
						if ((0xffffffffefffffffL & l) != 0L)
1039
							jjAddStates(50, 51);
1040
						break;
1041
					case 31:
1042
						if (curChar == 92)
1043
							jjstateSet[jjnewStateCnt++] = 32;
1044
						break;
1045
					case 34:
1046
						if ((0x7fffffe87fffffeL & l) == 0L)
1047
							break;
1048
						if (kind > 53)
1049
							kind = 53;
1050
						jjCheckNAdd(34);
1051
						break;
1052
					case 35:
1053
						if ((0x7fffffe87fffffeL & l) != 0L)
1054
							jjCheckNAddStates(7, 10);
1055
						break;
1056
					case 36:
1057
						if ((0x7fffffe87fffffeL & l) != 0L)
1058
							jjCheckNAddStates(11, 14);
1059
						break;
1060
					case 37:
1061
						if ((0x7fffffe87fffffeL & l) != 0L)
1062
							jjCheckNAddStates(11, 14);
1063
						break;
1064
					case 40:
1065
						if ((0x7fffffe87fffffeL & l) == 0L)
1066
							break;
1067
						if (kind > 55)
1068
							kind = 55;
1069
						jjCheckNAdd(40);
1070
						break;
1071
					default:
1072
						break;
1073
					}
1074
				} while (i != startsAt);
1075
			} else {
1076
				int hiByte = (int) (curChar >> 8);
1077
				int i1 = hiByte >> 6;
1078
				long l1 = 1L << (hiByte & 077);
1079
				int i2 = (curChar & 0xff) >> 6;
1080
				long l2 = 1L << (curChar & 077);
1081
				MatchLoop: do {
1082
					switch (jjstateSet[--i]) {
1083
					case 41:
1084
						if (jjCanMove_1(hiByte, i1, i2, l1, l2)) {
1085
							if (kind > 53)
1086
								kind = 53;
1087
							jjCheckNAdd(34);
1088
						}
1089
						if (jjCanMove_1(hiByte, i1, i2, l1, l2))
1090
							jjCheckNAddStates(7, 10);
1091
						if (jjCanMove_1(hiByte, i1, i2, l1, l2))
1092
							jjCheckNAddStates(11, 14);
1093
						if (jjCanMove_1(hiByte, i1, i2, l1, l2)) {
1094
							if (kind > 55)
1095
								kind = 55;
1096
							jjCheckNAdd(40);
1097
						}
1098
						break;
1099
					case 0:
1100
						if (!jjCanMove_1(hiByte, i1, i2, l1, l2))
1101
							break;
1102
						if (kind > 53)
1103
							kind = 53;
1104
						jjCheckNAddStates(20, 25);
1105
						break;
1106
					case 42:
1107
						if (jjCanMove_1(hiByte, i1, i2, l1, l2)) {
1108
							if (kind > 53)
1109
								kind = 53;
1110
							jjCheckNAdd(34);
1111
						}
1112
						if (jjCanMove_1(hiByte, i1, i2, l1, l2))
1113
							jjCheckNAddStates(7, 10);
1114
						if (jjCanMove_1(hiByte, i1, i2, l1, l2))
1115
							jjCheckNAddStates(11, 14);
1116
						if (jjCanMove_1(hiByte, i1, i2, l1, l2))
1117
							jjCheckNAddStates(11, 14);
1118
						if (jjCanMove_1(hiByte, i1, i2, l1, l2)) {
1119
							if (kind > 55)
1120
								kind = 55;
1121
							jjCheckNAdd(40);
1122
						}
1123
						break;
1124
					case 18:
1125
						if (jjCanMove_0(hiByte, i1, i2, l1, l2))
1126
							jjAddStates(36, 38);
1127
						break;
1128
					case 22:
1129
						if (jjCanMove_0(hiByte, i1, i2, l1, l2))
1130
							jjAddStates(48, 49);
1131
						break;
1132
					case 24:
1133
					case 32:
1134
						if (jjCanMove_0(hiByte, i1, i2, l1, l2) && kind > 13)
1135
							kind = 13;
1136
						break;
1137
					case 26:
1138
						if (jjCanMove_0(hiByte, i1, i2, l1, l2))
1139
							jjAddStates(39, 41);
1140
						break;
1141
					case 30:
1142
						if (jjCanMove_0(hiByte, i1, i2, l1, l2))
1143
							jjAddStates(50, 51);
1144
						break;
1145
					case 34:
1146
						if (!jjCanMove_1(hiByte, i1, i2, l1, l2))
1147
							break;
1148
						if (kind > 53)
1149
							kind = 53;
1150
						jjCheckNAdd(34);
1151
						break;
1152
					case 35:
1153
						if (jjCanMove_1(hiByte, i1, i2, l1, l2))
1154
							jjCheckNAddStates(7, 10);
1155
						break;
1156
					case 36:
1157
						if (jjCanMove_1(hiByte, i1, i2, l1, l2))
1158
							jjCheckNAddStates(11, 14);
1159
						break;
1160
					case 37:
1161
						if (jjCanMove_1(hiByte, i1, i2, l1, l2))
1162
							jjCheckNAddStates(11, 14);
1163
						break;
1164
					case 40:
1165
						if (!jjCanMove_1(hiByte, i1, i2, l1, l2))
1166
							break;
1167
						if (kind > 55)
1168
							kind = 55;
1169
						jjCheckNAdd(40);
1170
						break;
1171
					default:
1172
						break;
1173
					}
1174
				} while (i != startsAt);
1175
			}
1176
			if (kind != 0x7fffffff) {
1177
				jjmatchedKind = kind;
1178
				jjmatchedPos = curPos;
1179
				kind = 0x7fffffff;
1180
			}
1181
			++curPos;
1182
			if ((i = jjnewStateCnt) == (startsAt = 41 - (jjnewStateCnt = startsAt)))
1183
				return curPos;
1184
			try {
1185
				curChar = input_stream.readChar();
1186
			} catch (java.io.IOException e) {
1187
				return curPos;
1188
			}
1189
		}
1190
	}
1191
1192
	static final int[] jjnextStates = { 0, 1, 3, 5, 36, 38, 39, 35, 36, 38, 39,
1193
			36, 37, 38, 39, 6, 7, 8, 13, 14, 34, 35, 36, 38, 39, 40, 26, 27,
1194
			29, 30, 31, 18, 19, 21, 22, 23, 18, 19, 21, 26, 27, 29, 3, 4, 11,
1195
			12, 15, 16, 22, 23, 30, 31, };
1196
1197
	private static final boolean jjCanMove_0(int hiByte, int i1, int i2,
1198
			long l1, long l2) {
1199
		switch (hiByte) {
1200
		case 0:
1201
			return ((jjbitVec2[i2] & l2) != 0L);
1202
		default:
1203
			if ((jjbitVec0[i1] & l1) != 0L)
1204
				return true;
1205
			return false;
1206
		}
1207
	}
1208
1209
	private static final boolean jjCanMove_1(int hiByte, int i1, int i2,
1210
			long l1, long l2) {
1211
		switch (hiByte) {
1212
		case 0:
1213
			return ((jjbitVec4[i2] & l2) != 0L);
1214
		case 48:
1215
			return ((jjbitVec5[i2] & l2) != 0L);
1216
		case 49:
1217
			return ((jjbitVec6[i2] & l2) != 0L);
1218
		case 51:
1219
			return ((jjbitVec7[i2] & l2) != 0L);
1220
		case 61:
1221
			return ((jjbitVec8[i2] & l2) != 0L);
1222
		default:
1223
			if ((jjbitVec3[i1] & l1) != 0L)
1224
				return true;
1225
			return false;
1226
		}
1227
	}
1228
1229
	public static final String[] jjstrLiteralImages = { "", null, "\44\173",
1230
			"\43\173", null, null, null, null, null, null, null, null, null,
1231
			null, "\164\162\165\145", "\146\141\154\163\145",
1232
			"\156\165\154\154", "\175", "\56", "\50", "\51", "\133", "\135",
1233
			"\72", "\54", "\76", "\147\164", "\74", "\154\164", "\76\75",
1234
			"\147\145", "\74\75", "\154\145", "\75\75", "\145\161", "\41\75",
1235
			"\156\145", "\41", "\156\157\164", "\46\46", "\141\156\144",
1236
			"\174\174", "\157\162", "\145\155\160\164\171",
1237
			"\151\156\163\164\141\156\143\145\157\146", "\52", "\53", "\55",
1238
			"\77", "\57", "\144\151\166", "\45", "\155\157\144", null, null,
1239
			null, null, null, null, null, };
1240
1241
	public static final String[] lexStateNames = { "DEFAULT", "IN_EXPRESSION", };
1242
1243
	public static final int[] jjnewLexState = { -1, -1, 1, 1, -1, -1, -1, -1,
1244
			-1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1,
1245
			-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1246
			-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1247
			-1, };
1248
1249
	static final long[] jjtoToken = { 0x8fffffffffff60fL, };
1250
1251
	static final long[] jjtoSkip = { 0x1f0L, };
1252
1253
	protected SimpleCharStream input_stream;
1254
1255
	private final int[] jjrounds = new int[41];
1256
1257
	private final int[] jjstateSet = new int[82];
1258
1259
	protected char curChar;
1260
1261
	public ELParserTokenManager(SimpleCharStream stream) {
1262
		if (SimpleCharStream.staticFlag)
1263
			throw new Error(
1264
					"ERROR: Cannot use a static CharStream class with a non-static lexical analyzer.");
1265
		input_stream = stream;
1266
	}
1267
1268
	public ELParserTokenManager(SimpleCharStream stream, int lexState) {
1269
		this(stream);
1270
		SwitchTo(lexState);
1271
	}
1272
1273
	public void ReInit(SimpleCharStream stream) {
1274
		jjmatchedPos = jjnewStateCnt = 0;
1275
		curLexState = defaultLexState;
1276
		input_stream = stream;
1277
		ReInitRounds();
1278
	}
1279
1280
	private final void ReInitRounds() {
1281
		int i;
1282
		jjround = 0x80000001;
1283
		for (i = 41; i-- > 0;)
1284
			jjrounds[i] = 0x80000000;
1285
	}
1286
1287
	public void ReInit(SimpleCharStream stream, int lexState) {
1288
		ReInit(stream);
1289
		SwitchTo(lexState);
1290
	}
1291
1292
	public void SwitchTo(int lexState) {
1293
		if (lexState >= 2 || lexState < 0)
1294
			throw new TokenMgrError("Error: Ignoring invalid lexical state : "
1295
					+ lexState + ". State unchanged.",
1296
					TokenMgrError.INVALID_LEXICAL_STATE);
1297
		else
1298
			curLexState = lexState;
1299
	}
1300
1301
	protected Token jjFillToken() {
1302
		Token t = Token.newToken(jjmatchedKind);
1303
		t.kind = jjmatchedKind;
1304
		String im = jjstrLiteralImages[jjmatchedKind];
1305
		t.image = (im == null) ? input_stream.GetImage() : im;
1306
		t.beginLine = input_stream.getBeginLine();
1307
		t.beginColumn = input_stream.getBeginColumn();
1308
		t.endLine = input_stream.getEndLine();
1309
		t.endColumn = input_stream.getEndColumn();
1310
		return t;
1311
	}
1312
1313
	int curLexState = 0;
1314
1315
	int defaultLexState = 0;
1316
1317
	int jjnewStateCnt;
1318
1319
	int jjround;
1320
1321
	int jjmatchedPos;
1322
1323
	int jjmatchedKind;
1324
1325
	public Token getNextToken() {
1326
		int kind;
1327
		Token specialToken = null;
1328
		Token matchedToken;
1329
		int curPos = 0;
1330
1331
		EOFLoop: for (;;) {
1332
			try {
1333
				curChar = input_stream.BeginToken();
1334
			} catch (java.io.IOException e) {
1335
				jjmatchedKind = 0;
1336
				matchedToken = jjFillToken();
1337
				return matchedToken;
1338
			}
1339
1340
			switch (curLexState) {
1341
			case 0:
1342
				jjmatchedKind = 0x7fffffff;
1343
				jjmatchedPos = 0;
1344
				curPos = jjMoveStringLiteralDfa0_0();
1345
				break;
1346
			case 1:
1347
				try {
1348
					input_stream.backup(0);
1349
					while (curChar <= 32
1350
							&& (0x100002600L & (1L << curChar)) != 0L)
1351
						curChar = input_stream.BeginToken();
1352
				} catch (java.io.IOException e1) {
1353
					continue EOFLoop;
1354
				}
1355
				jjmatchedKind = 0x7fffffff;
1356
				jjmatchedPos = 0;
1357
				curPos = jjMoveStringLiteralDfa0_1();
1358
				if (jjmatchedPos == 0 && jjmatchedKind > 59) {
1359
					jjmatchedKind = 59;
1360
				}
1361
				break;
1362
			}
1363
			if (jjmatchedKind != 0x7fffffff) {
1364
				if (jjmatchedPos + 1 < curPos)
1365
					input_stream.backup(curPos - jjmatchedPos - 1);
1366
				if ((jjtoToken[jjmatchedKind >> 6] & (1L << (jjmatchedKind & 077))) != 0L) {
1367
					matchedToken = jjFillToken();
1368
					if (jjnewLexState[jjmatchedKind] != -1)
1369
						curLexState = jjnewLexState[jjmatchedKind];
1370
					return matchedToken;
1371
				} else {
1372
					if (jjnewLexState[jjmatchedKind] != -1)
1373
						curLexState = jjnewLexState[jjmatchedKind];
1374
					continue EOFLoop;
1375
				}
1376
			}
1377
			int error_line = input_stream.getEndLine();
1378
			int error_column = input_stream.getEndColumn();
1379
			String error_after = null;
1380
			boolean EOFSeen = false;
1381
			try {
1382
				input_stream.readChar();
1383
				input_stream.backup(1);
1384
			} catch (java.io.IOException e1) {
1385
				EOFSeen = true;
1386
				error_after = curPos <= 1 ? "" : input_stream.GetImage();
1387
				if (curChar == '\n' || curChar == '\r') {
1388
					error_line++;
1389
					error_column = 0;
1390
				} else
1391
					error_column++;
1392
			}
1393
			if (!EOFSeen) {
1394
				input_stream.backup(1);
1395
				error_after = curPos <= 1 ? "" : input_stream.GetImage();
1396
			}
1397
			throw new TokenMgrError(EOFSeen, curLexState, error_line,
1398
					error_column, error_after, curChar,
1399
					TokenMgrError.LEXICAL_ERROR);
1400
		}
1401
	}
1402
1403
}
1397
}
(-)ELParserConstants.java (-124 / +123 lines)
Lines 3-133 Link Here
3
3
4
public interface ELParserConstants {
4
public interface ELParserConstants {
5
5
6
	int EOF = 0;
6
  int EOF = 0;
7
  int LITERAL_EXPRESSION = 1;
8
  int START_DYNAMIC_EXPRESSION = 2;
9
  int START_DEFERRED_EXPRESSION = 3;
10
  int INTEGER_LITERAL = 9;
11
  int FLOATING_POINT_LITERAL = 10;
12
  int EXPONENT = 11;
13
  int STRING_LITERAL = 12;
14
  int BADLY_ESCAPED_STRING_LITERAL = 13;
15
  int TRUE = 14;
16
  int FALSE = 15;
17
  int NULL = 16;
18
  int END_EXPRESSION = 17;
19
  int DOT = 18;
20
  int LPAREN = 19;
21
  int RPAREN = 20;
22
  int LBRACK = 21;
23
  int RBRACK = 22;
24
  int COLON = 23;
25
  int COMMA = 24;
26
  int GT0 = 25;
27
  int GT1 = 26;
28
  int LT0 = 27;
29
  int LT1 = 28;
30
  int GE0 = 29;
31
  int GE1 = 30;
32
  int LE0 = 31;
33
  int LE1 = 32;
34
  int EQ0 = 33;
35
  int EQ1 = 34;
36
  int NE0 = 35;
37
  int NE1 = 36;
38
  int NOT0 = 37;
39
  int NOT1 = 38;
40
  int AND0 = 39;
41
  int AND1 = 40;
42
  int OR0 = 41;
43
  int OR1 = 42;
44
  int EMPTY = 43;
45
  int INSTANCEOF = 44;
46
  int MULT = 45;
47
  int PLUS = 46;
48
  int MINUS = 47;
49
  int QUESTIONMARK = 48;
50
  int DIV0 = 49;
51
  int DIV1 = 50;
52
  int MOD0 = 51;
53
  int MOD1 = 52;
54
  int IDENTIFIER = 53;
55
  int NAMESPACE = 54;
56
  int NAMESPACE_NAME = 55;
57
  int FUNCTION_CALL = 56;
58
  int FUNCTIONSUFFIX = 57;
59
  int IMPL_OBJ_START = 58;
60
  int LETTER = 59;
61
  int DIGIT = 60;
62
  int ILLEGAL_CHARACTER = 61;
7
63
8
	int LITERAL_EXPRESSION = 1;
64
  int DEFAULT = 0;
65
  int IN_EXPRESSION = 1;
9
66
10
	int START_DYNAMIC_EXPRESSION = 2;
67
  String[] tokenImage = {
68
    "<EOF>",
69
    "<LITERAL_EXPRESSION>",
70
    "\"${\"",
71
    "\"#{\"",
72
    "\"\\\\\"",
73
    "\" \"",
74
    "\"\\t\"",
75
    "\"\\n\"",
76
    "\"\\r\"",
77
    "<INTEGER_LITERAL>",
78
    "<FLOATING_POINT_LITERAL>",
79
    "<EXPONENT>",
80
    "<STRING_LITERAL>",
81
    "<BADLY_ESCAPED_STRING_LITERAL>",
82
    "\"true\"",
83
    "\"false\"",
84
    "\"null\"",
85
    "\"}\"",
86
    "\".\"",
87
    "\"(\"",
88
    "\")\"",
89
    "\"[\"",
90
    "\"]\"",
91
    "\":\"",
92
    "\",\"",
93
    "\">\"",
94
    "\"gt\"",
95
    "\"<\"",
96
    "\"lt\"",
97
    "\">=\"",
98
    "\"ge\"",
99
    "\"<=\"",
100
    "\"le\"",
101
    "\"==\"",
102
    "\"eq\"",
103
    "\"!=\"",
104
    "\"ne\"",
105
    "\"!\"",
106
    "\"not\"",
107
    "\"&&\"",
108
    "\"and\"",
109
    "\"||\"",
110
    "\"or\"",
111
    "\"empty\"",
112
    "\"instanceof\"",
113
    "\"*\"",
114
    "\"+\"",
115
    "\"-\"",
116
    "\"?\"",
117
    "\"/\"",
118
    "\"div\"",
119
    "\"%\"",
120
    "\"mod\"",
121
    "<IDENTIFIER>",
122
    "<NAMESPACE>",
123
    "<NAMESPACE_NAME>",
124
    "<FUNCTION_CALL>",
125
    "<FUNCTIONSUFFIX>",
126
    "\"#\"",
127
    "<LETTER>",
128
    "<DIGIT>",
129
    "<ILLEGAL_CHARACTER>",
130
  };
11
131
12
	int START_DEFERRED_EXPRESSION = 3;
13
14
	int INTEGER_LITERAL = 9;
15
16
	int FLOATING_POINT_LITERAL = 10;
17
18
	int EXPONENT = 11;
19
20
	int STRING_LITERAL = 12;
21
22
	int BADLY_ESCAPED_STRING_LITERAL = 13;
23
24
	int TRUE = 14;
25
26
	int FALSE = 15;
27
28
	int NULL = 16;
29
30
	int END_EXPRESSION = 17;
31
32
	int DOT = 18;
33
34
	int LPAREN = 19;
35
36
	int RPAREN = 20;
37
38
	int LBRACK = 21;
39
40
	int RBRACK = 22;
41
42
	int COLON = 23;
43
44
	int COMMA = 24;
45
46
	int GT0 = 25;
47
48
	int GT1 = 26;
49
50
	int LT0 = 27;
51
52
	int LT1 = 28;
53
54
	int GE0 = 29;
55
56
	int GE1 = 30;
57
58
	int LE0 = 31;
59
60
	int LE1 = 32;
61
62
	int EQ0 = 33;
63
64
	int EQ1 = 34;
65
66
	int NE0 = 35;
67
68
	int NE1 = 36;
69
70
	int NOT0 = 37;
71
72
	int NOT1 = 38;
73
74
	int AND0 = 39;
75
76
	int AND1 = 40;
77
78
	int OR0 = 41;
79
80
	int OR1 = 42;
81
82
	int EMPTY = 43;
83
84
	int INSTANCEOF = 44;
85
86
	int MULT = 45;
87
88
	int PLUS = 46;
89
90
	int MINUS = 47;
91
92
	int QUESTIONMARK = 48;
93
94
	int DIV0 = 49;
95
96
	int DIV1 = 50;
97
98
	int MOD0 = 51;
99
100
	int MOD1 = 52;
101
102
	int IDENTIFIER = 53;
103
104
	int NAMESPACE = 54;
105
106
	int FUNCTIONSUFFIX = 55;
107
108
	int IMPL_OBJ_START = 56;
109
110
	int LETTER = 57;
111
112
	int DIGIT = 58;
113
114
	int ILLEGAL_CHARACTER = 59;
115
116
	int DEFAULT = 0;
117
118
	int IN_EXPRESSION = 1;
119
120
	String[] tokenImage = { "<EOF>", "<LITERAL_EXPRESSION>", "\"${\"",
121
			"\"#{\"", "\"\\\\\"", "\" \"", "\"\\t\"", "\"\\n\"", "\"\\r\"",
122
			"<INTEGER_LITERAL>", "<FLOATING_POINT_LITERAL>", "<EXPONENT>",
123
			"<STRING_LITERAL>", "<BADLY_ESCAPED_STRING_LITERAL>", "\"true\"",
124
			"\"false\"", "\"null\"", "\"}\"", "\".\"", "\"(\"", "\")\"",
125
			"\"[\"", "\"]\"", "\":\"", "\",\"", "\">\"", "\"gt\"", "\"<\"",
126
			"\"lt\"", "\">=\"", "\"ge\"", "\"<=\"", "\"le\"", "\"==\"",
127
			"\"eq\"", "\"!=\"", "\"ne\"", "\"!\"", "\"not\"", "\"&&\"",
128
			"\"and\"", "\"||\"", "\"or\"", "\"empty\"", "\"instanceof\"",
129
			"\"*\"", "\"+\"", "\"-\"", "\"?\"", "\"/\"", "\"div\"", "\"%\"",
130
			"\"mod\"", "<IDENTIFIER>", "<NAMESPACE>", "<FUNCTIONSUFFIX>",
131
			"\"#\"", "<LETTER>", "<DIGIT>", "<ILLEGAL_CHARACTER>", };
132
133
}
132
}
(-)ELParser.java (-603 / +850 lines)
Lines 4-19 Link Here
4
import javax.el.ELException;
4
import javax.el.ELException;
5
public class ELParser/*@bgen(jjtree)*/implements ELParserTreeConstants, ELParserConstants {/*@bgen(jjtree)*/
5
public class ELParser/*@bgen(jjtree)*/implements ELParserTreeConstants, ELParserConstants {/*@bgen(jjtree)*/
6
  protected JJTELParserState jjtree = new JJTELParserState();public static Node parse(String ref) throws ELException
6
  protected JJTELParserState jjtree = new JJTELParserState();public static Node parse(String ref) throws ELException
7
    {
7
   {
8
        try {
8
       try {
9
                return (new ELParser(new StringReader(ref))).CompositeExpression();
9
               return (new ELParser(new StringReader(ref))).CompositeExpression();
10
        } catch (ParseException pe) {
10
       } catch (ParseException pe) {
11
                throw new ELException(pe.getMessage());
11
               throw new ELException(pe.getMessage());
12
        }
12
       }
13
    }
13
   }
14
  
14
15
  public static void main(String[] argv) throws Exception {
15
  public static void main(String[] argv) throws Exception {
16
	  String[] str = { "${foo()}", "${fn.fn:foo() ? a : b}", "${fn:foo() ? (fn_af.f:fd() ? a : b) : b}", "${a.b.c ? a : b}" };
16
	  String[] str = { "${foo()}", "${fn.fn:foo() ? a : b}", "${fn.2fn:foo() ? a : b}", "${fn:foo() ? (fn_af.f:fd() ? a : b) : b}", "${a.b.c ? a : b}", "${true?false:true}", "${true? (false?true:false):false}" };
17
		for (int i = 0; i < str.length; i++) {
17
		for (int i = 0; i < str.length; i++) {
18
			SimpleNode sn = (SimpleNode) ELParser.parse(str[i]);
18
			SimpleNode sn = (SimpleNode) ELParser.parse(str[i]);
19
			System.out.println("====\n" + str[i]);
19
			System.out.println("====\n" + str[i]);
Lines 61-87 Link Here
61
        }
61
        }
62
      }
62
      }
63
      jj_consume_token(0);
63
      jj_consume_token(0);
64
                                                                                    jjtree.closeNodeScope(jjtn000, true);
64
                                                                                   jjtree.closeNodeScope(jjtn000, true);
65
                                                                                    jjtc000 = false;
65
                                                                                   jjtc000 = false;
66
                                                                                    {if (true) return jjtn000;}
66
                                                                                   {if (true) return jjtn000;}
67
    } catch (Throwable jjte000) {
67
    } catch (Throwable jjte000) {
68
          if (jjtc000) {
68
         if (jjtc000) {
69
            jjtree.clearNodeScope(jjtn000);
69
           jjtree.clearNodeScope(jjtn000);
70
            jjtc000 = false;
70
           jjtc000 = false;
71
          } else {
71
         } else {
72
            jjtree.popNode();
72
           jjtree.popNode();
73
          }
73
         }
74
          if (jjte000 instanceof RuntimeException) {
74
         if (jjte000 instanceof RuntimeException) {
75
            {if (true) throw (RuntimeException)jjte000;}
75
           {if (true) throw (RuntimeException)jjte000;}
76
          }
76
         }
77
          if (jjte000 instanceof ParseException) {
77
         if (jjte000 instanceof ParseException) {
78
            {if (true) throw (ParseException)jjte000;}
78
           {if (true) throw (ParseException)jjte000;}
79
          }
79
         }
80
          {if (true) throw (Error)jjte000;}
80
         {if (true) throw (Error)jjte000;}
81
    } finally {
81
    } finally {
82
          if (jjtc000) {
82
         if (jjtc000) {
83
            jjtree.closeNodeScope(jjtn000, true);
83
           jjtree.closeNodeScope(jjtn000, true);
84
          }
84
         }
85
    }
85
    }
86
    throw new Error("Missing return statement in function");
86
    throw new Error("Missing return statement in function");
87
  }
87
  }
Lines 97-109 Link Here
97
                                                jjtree.openNodeScope(jjtn000);Token t = null;
97
                                                jjtree.openNodeScope(jjtn000);Token t = null;
98
    try {
98
    try {
99
      t = jj_consume_token(LITERAL_EXPRESSION);
99
      t = jj_consume_token(LITERAL_EXPRESSION);
100
                                 jjtree.closeNodeScope(jjtn000, true);
100
                                jjtree.closeNodeScope(jjtn000, true);
101
                                 jjtc000 = false;
101
                                jjtc000 = false;
102
                                 jjtn000.setImage(t.image);
102
                                jjtn000.setImage(t.image);
103
    } finally {
103
    } finally {
104
          if (jjtc000) {
104
         if (jjtc000) {
105
            jjtree.closeNodeScope(jjtn000, true);
105
           jjtree.closeNodeScope(jjtn000, true);
106
          }
106
         }
107
    }
107
    }
108
  }
108
  }
109
109
Lines 121-143 Link Here
121
      Expression();
121
      Expression();
122
      jj_consume_token(END_EXPRESSION);
122
      jj_consume_token(END_EXPRESSION);
123
    } catch (Throwable jjte000) {
123
    } catch (Throwable jjte000) {
124
          if (jjtc000) {
124
         if (jjtc000) {
125
            jjtree.clearNodeScope(jjtn000);
125
           jjtree.clearNodeScope(jjtn000);
126
            jjtc000 = false;
126
           jjtc000 = false;
127
          } else {
127
         } else {
128
            jjtree.popNode();
128
           jjtree.popNode();
129
          }
129
         }
130
          if (jjte000 instanceof RuntimeException) {
130
         if (jjte000 instanceof RuntimeException) {
131
            {if (true) throw (RuntimeException)jjte000;}
131
           {if (true) throw (RuntimeException)jjte000;}
132
          }
132
         }
133
          if (jjte000 instanceof ParseException) {
133
         if (jjte000 instanceof ParseException) {
134
            {if (true) throw (ParseException)jjte000;}
134
           {if (true) throw (ParseException)jjte000;}
135
          }
135
         }
136
          {if (true) throw (Error)jjte000;}
136
         {if (true) throw (Error)jjte000;}
137
    } finally {
137
    } finally {
138
          if (jjtc000) {
138
         if (jjtc000) {
139
            jjtree.closeNodeScope(jjtn000, true);
139
           jjtree.closeNodeScope(jjtn000, true);
140
          }
140
         }
141
    }
141
    }
142
  }
142
  }
143
143
Lines 155-177 Link Here
155
      Expression();
155
      Expression();
156
      jj_consume_token(END_EXPRESSION);
156
      jj_consume_token(END_EXPRESSION);
157
    } catch (Throwable jjte000) {
157
    } catch (Throwable jjte000) {
158
          if (jjtc000) {
158
         if (jjtc000) {
159
            jjtree.clearNodeScope(jjtn000);
159
           jjtree.clearNodeScope(jjtn000);
160
            jjtc000 = false;
160
           jjtc000 = false;
161
          } else {
161
         } else {
162
            jjtree.popNode();
162
           jjtree.popNode();
163
          }
163
         }
164
          if (jjte000 instanceof RuntimeException) {
164
         if (jjte000 instanceof RuntimeException) {
165
            {if (true) throw (RuntimeException)jjte000;}
165
           {if (true) throw (RuntimeException)jjte000;}
166
          }
166
         }
167
          if (jjte000 instanceof ParseException) {
167
         if (jjte000 instanceof ParseException) {
168
            {if (true) throw (ParseException)jjte000;}
168
           {if (true) throw (ParseException)jjte000;}
169
          }
169
         }
170
          {if (true) throw (Error)jjte000;}
170
         {if (true) throw (Error)jjte000;}
171
    } finally {
171
    } finally {
172
          if (jjtc000) {
172
         if (jjtc000) {
173
            jjtree.closeNodeScope(jjtn000, true);
173
           jjtree.closeNodeScope(jjtn000, true);
174
          }
174
         }
175
    }
175
    }
176
  }
176
  }
177
177
Lines 202-230 Link Here
202
      jj_consume_token(QUESTIONMARK);
202
      jj_consume_token(QUESTIONMARK);
203
      Or();
203
      Or();
204
      jj_consume_token(COLON);
204
      jj_consume_token(COLON);
205
                                            AstChoice jjtn001 = new AstChoice(JJTCHOICE);
205
                                           AstChoice jjtn001 = new AstChoice(JJTCHOICE);
206
                                            boolean jjtc001 = true;
206
                                           boolean jjtc001 = true;
207
                                            jjtree.openNodeScope(jjtn001);
207
                                           jjtree.openNodeScope(jjtn001);
208
      try {
208
      try {
209
        Choice();
209
        Choice();
210
      } catch (Throwable jjte001) {
210
      } catch (Throwable jjte001) {
211
                                            if (jjtc001) {
211
                                           if (jjtc001) {
212
                                              jjtree.clearNodeScope(jjtn001);
212
                                             jjtree.clearNodeScope(jjtn001);
213
                                              jjtc001 = false;
213
                                             jjtc001 = false;
214
                                            } else {
214
                                           } else {
215
                                              jjtree.popNode();
215
                                             jjtree.popNode();
216
                                            }
216
                                           }
217
                                            if (jjte001 instanceof RuntimeException) {
217
                                           if (jjte001 instanceof RuntimeException) {
218
                                              {if (true) throw (RuntimeException)jjte001;}
218
                                             {if (true) throw (RuntimeException)jjte001;}
219
                                            }
219
                                           }
220
                                            if (jjte001 instanceof ParseException) {
220
                                           if (jjte001 instanceof ParseException) {
221
                                              {if (true) throw (ParseException)jjte001;}
221
                                             {if (true) throw (ParseException)jjte001;}
222
                                            }
222
                                           }
223
                                            {if (true) throw (Error)jjte001;}
223
                                           {if (true) throw (Error)jjte001;}
224
      } finally {
224
      } finally {
225
                                            if (jjtc001) {
225
                                           if (jjtc001) {
226
                                              jjtree.closeNodeScope(jjtn001,  3);
226
                                             jjtree.closeNodeScope(jjtn001,  3);
227
                                            }
227
                                           }
228
      }
228
      }
229
    }
229
    }
230
  }
230
  }
Lines 258-286 Link Here
258
        jj_consume_token(-1);
258
        jj_consume_token(-1);
259
        throw new ParseException();
259
        throw new ParseException();
260
      }
260
      }
261
                               AstOr jjtn001 = new AstOr(JJTOR);
261
                              AstOr jjtn001 = new AstOr(JJTOR);
262
                               boolean jjtc001 = true;
262
                              boolean jjtc001 = true;
263
                               jjtree.openNodeScope(jjtn001);
263
                              jjtree.openNodeScope(jjtn001);
264
      try {
264
      try {
265
        And();
265
        And();
266
      } catch (Throwable jjte001) {
266
      } catch (Throwable jjte001) {
267
                               if (jjtc001) {
267
                              if (jjtc001) {
268
                                 jjtree.clearNodeScope(jjtn001);
268
                                jjtree.clearNodeScope(jjtn001);
269
                                 jjtc001 = false;
269
                                jjtc001 = false;
270
                               } else {
270
                              } else {
271
                                 jjtree.popNode();
271
                                jjtree.popNode();
272
                               }
272
                              }
273
                               if (jjte001 instanceof RuntimeException) {
273
                              if (jjte001 instanceof RuntimeException) {
274
                                 {if (true) throw (RuntimeException)jjte001;}
274
                                {if (true) throw (RuntimeException)jjte001;}
275
                               }
275
                              }
276
                               if (jjte001 instanceof ParseException) {
276
                              if (jjte001 instanceof ParseException) {
277
                                 {if (true) throw (ParseException)jjte001;}
277
                                {if (true) throw (ParseException)jjte001;}
278
                               }
278
                              }
279
                               {if (true) throw (Error)jjte001;}
279
                              {if (true) throw (Error)jjte001;}
280
      } finally {
280
      } finally {
281
                               if (jjtc001) {
281
                              if (jjtc001) {
282
                                 jjtree.closeNodeScope(jjtn001,  2);
282
                                jjtree.closeNodeScope(jjtn001,  2);
283
                               }
283
                              }
284
      }
284
      }
285
    }
285
    }
286
  }
286
  }
Lines 314-342 Link Here
314
        jj_consume_token(-1);
314
        jj_consume_token(-1);
315
        throw new ParseException();
315
        throw new ParseException();
316
      }
316
      }
317
                                      AstAnd jjtn001 = new AstAnd(JJTAND);
317
                                     AstAnd jjtn001 = new AstAnd(JJTAND);
318
                                      boolean jjtc001 = true;
318
                                     boolean jjtc001 = true;
319
                                      jjtree.openNodeScope(jjtn001);
319
                                     jjtree.openNodeScope(jjtn001);
320
      try {
320
      try {
321
        Equality();
321
        Equality();
322
      } catch (Throwable jjte001) {
322
      } catch (Throwable jjte001) {
323
                                      if (jjtc001) {
323
                                     if (jjtc001) {
324
                                        jjtree.clearNodeScope(jjtn001);
324
                                       jjtree.clearNodeScope(jjtn001);
325
                                        jjtc001 = false;
325
                                       jjtc001 = false;
326
                                      } else {
326
                                     } else {
327
                                        jjtree.popNode();
327
                                       jjtree.popNode();
328
                                      }
328
                                     }
329
                                      if (jjte001 instanceof RuntimeException) {
329
                                     if (jjte001 instanceof RuntimeException) {
330
                                        {if (true) throw (RuntimeException)jjte001;}
330
                                       {if (true) throw (RuntimeException)jjte001;}
331
                                      }
331
                                     }
332
                                      if (jjte001 instanceof ParseException) {
332
                                     if (jjte001 instanceof ParseException) {
333
                                        {if (true) throw (ParseException)jjte001;}
333
                                       {if (true) throw (ParseException)jjte001;}
334
                                      }
334
                                     }
335
                                      {if (true) throw (Error)jjte001;}
335
                                     {if (true) throw (Error)jjte001;}
336
      } finally {
336
      } finally {
337
                                      if (jjtc001) {
337
                                     if (jjtc001) {
338
                                        jjtree.closeNodeScope(jjtn001,  2);
338
                                       jjtree.closeNodeScope(jjtn001,  2);
339
                                      }
339
                                     }
340
      }
340
      }
341
    }
341
    }
342
  }
342
  }
Lines 375-403 Link Here
375
          jj_consume_token(-1);
375
          jj_consume_token(-1);
376
          throw new ParseException();
376
          throw new ParseException();
377
        }
377
        }
378
                                 AstEqual jjtn001 = new AstEqual(JJTEQUAL);
378
                                AstEqual jjtn001 = new AstEqual(JJTEQUAL);
379
                                 boolean jjtc001 = true;
379
                                boolean jjtc001 = true;
380
                                 jjtree.openNodeScope(jjtn001);
380
                                jjtree.openNodeScope(jjtn001);
381
        try {
381
        try {
382
          Compare();
382
          Compare();
383
        } catch (Throwable jjte001) {
383
        } catch (Throwable jjte001) {
384
                                 if (jjtc001) {
384
                                if (jjtc001) {
385
                                   jjtree.clearNodeScope(jjtn001);
385
                                  jjtree.clearNodeScope(jjtn001);
386
                                   jjtc001 = false;
386
                                  jjtc001 = false;
387
                                 } else {
387
                                } else {
388
                                   jjtree.popNode();
388
                                  jjtree.popNode();
389
                                 }
389
                                }
390
                                 if (jjte001 instanceof RuntimeException) {
390
                                if (jjte001 instanceof RuntimeException) {
391
                                   {if (true) throw (RuntimeException)jjte001;}
391
                                  {if (true) throw (RuntimeException)jjte001;}
392
                                 }
392
                                }
393
                                 if (jjte001 instanceof ParseException) {
393
                                if (jjte001 instanceof ParseException) {
394
                                   {if (true) throw (ParseException)jjte001;}
394
                                  {if (true) throw (ParseException)jjte001;}
395
                                 }
395
                                }
396
                                 {if (true) throw (Error)jjte001;}
396
                                {if (true) throw (Error)jjte001;}
397
        } finally {
397
        } finally {
398
                                 if (jjtc001) {
398
                                if (jjtc001) {
399
                                   jjtree.closeNodeScope(jjtn001,  2);
399
                                  jjtree.closeNodeScope(jjtn001,  2);
400
                                 }
400
                                }
401
        }
401
        }
402
        break;
402
        break;
403
      case NE0:
403
      case NE0:
Lines 414-442 Link Here
414
          jj_consume_token(-1);
414
          jj_consume_token(-1);
415
          throw new ParseException();
415
          throw new ParseException();
416
        }
416
        }
417
                                 AstNotEqual jjtn002 = new AstNotEqual(JJTNOTEQUAL);
417
                                AstNotEqual jjtn002 = new AstNotEqual(JJTNOTEQUAL);
418
                                 boolean jjtc002 = true;
418
                                boolean jjtc002 = true;
419
                                 jjtree.openNodeScope(jjtn002);
419
                                jjtree.openNodeScope(jjtn002);
420
        try {
420
        try {
421
          Compare();
421
          Compare();
422
        } catch (Throwable jjte002) {
422
        } catch (Throwable jjte002) {
423
                                 if (jjtc002) {
423
                                if (jjtc002) {
424
                                   jjtree.clearNodeScope(jjtn002);
424
                                  jjtree.clearNodeScope(jjtn002);
425
                                   jjtc002 = false;
425
                                  jjtc002 = false;
426
                                 } else {
426
                                } else {
427
                                   jjtree.popNode();
427
                                  jjtree.popNode();
428
                                 }
428
                                }
429
                                 if (jjte002 instanceof RuntimeException) {
429
                                if (jjte002 instanceof RuntimeException) {
430
                                   {if (true) throw (RuntimeException)jjte002;}
430
                                  {if (true) throw (RuntimeException)jjte002;}
431
                                 }
431
                                }
432
                                 if (jjte002 instanceof ParseException) {
432
                                if (jjte002 instanceof ParseException) {
433
                                   {if (true) throw (ParseException)jjte002;}
433
                                  {if (true) throw (ParseException)jjte002;}
434
                                 }
434
                                }
435
                                 {if (true) throw (Error)jjte002;}
435
                                {if (true) throw (Error)jjte002;}
436
        } finally {
436
        } finally {
437
                                 if (jjtc002) {
437
                                if (jjtc002) {
438
                                   jjtree.closeNodeScope(jjtn002,  2);
438
                                  jjtree.closeNodeScope(jjtn002,  2);
439
                                 }
439
                                }
440
        }
440
        }
441
        break;
441
        break;
442
      default:
442
      default:
Lines 485-513 Link Here
485
          jj_consume_token(-1);
485
          jj_consume_token(-1);
486
          throw new ParseException();
486
          throw new ParseException();
487
        }
487
        }
488
                                 AstLessThan jjtn001 = new AstLessThan(JJTLESSTHAN);
488
                                AstLessThan jjtn001 = new AstLessThan(JJTLESSTHAN);
489
                                 boolean jjtc001 = true;
489
                                boolean jjtc001 = true;
490
                                 jjtree.openNodeScope(jjtn001);
490
                                jjtree.openNodeScope(jjtn001);
491
        try {
491
        try {
492
          Math();
492
          Math();
493
        } catch (Throwable jjte001) {
493
        } catch (Throwable jjte001) {
494
                                 if (jjtc001) {
494
                                if (jjtc001) {
495
                                   jjtree.clearNodeScope(jjtn001);
495
                                  jjtree.clearNodeScope(jjtn001);
496
                                   jjtc001 = false;
496
                                  jjtc001 = false;
497
                                 } else {
497
                                } else {
498
                                   jjtree.popNode();
498
                                  jjtree.popNode();
499
                                 }
499
                                }
500
                                 if (jjte001 instanceof RuntimeException) {
500
                                if (jjte001 instanceof RuntimeException) {
501
                                   {if (true) throw (RuntimeException)jjte001;}
501
                                  {if (true) throw (RuntimeException)jjte001;}
502
                                 }
502
                                }
503
                                 if (jjte001 instanceof ParseException) {
503
                                if (jjte001 instanceof ParseException) {
504
                                   {if (true) throw (ParseException)jjte001;}
504
                                  {if (true) throw (ParseException)jjte001;}
505
                                 }
505
                                }
506
                                 {if (true) throw (Error)jjte001;}
506
                                {if (true) throw (Error)jjte001;}
507
        } finally {
507
        } finally {
508
                                 if (jjtc001) {
508
                                if (jjtc001) {
509
                                   jjtree.closeNodeScope(jjtn001,  2);
509
                                  jjtree.closeNodeScope(jjtn001,  2);
510
                                 }
510
                                }
511
        }
511
        }
512
        break;
512
        break;
513
      case GT0:
513
      case GT0:
Lines 524-552 Link Here
524
          jj_consume_token(-1);
524
          jj_consume_token(-1);
525
          throw new ParseException();
525
          throw new ParseException();
526
        }
526
        }
527
                                 AstGreaterThan jjtn002 = new AstGreaterThan(JJTGREATERTHAN);
527
                                AstGreaterThan jjtn002 = new AstGreaterThan(JJTGREATERTHAN);
528
                                 boolean jjtc002 = true;
528
                                boolean jjtc002 = true;
529
                                 jjtree.openNodeScope(jjtn002);
529
                                jjtree.openNodeScope(jjtn002);
530
        try {
530
        try {
531
          Math();
531
          Math();
532
        } catch (Throwable jjte002) {
532
        } catch (Throwable jjte002) {
533
                                 if (jjtc002) {
533
                                if (jjtc002) {
534
                                   jjtree.clearNodeScope(jjtn002);
534
                                  jjtree.clearNodeScope(jjtn002);
535
                                   jjtc002 = false;
535
                                  jjtc002 = false;
536
                                 } else {
536
                                } else {
537
                                   jjtree.popNode();
537
                                  jjtree.popNode();
538
                                 }
538
                                }
539
                                 if (jjte002 instanceof RuntimeException) {
539
                                if (jjte002 instanceof RuntimeException) {
540
                                   {if (true) throw (RuntimeException)jjte002;}
540
                                  {if (true) throw (RuntimeException)jjte002;}
541
                                 }
541
                                }
542
                                 if (jjte002 instanceof ParseException) {
542
                                if (jjte002 instanceof ParseException) {
543
                                   {if (true) throw (ParseException)jjte002;}
543
                                  {if (true) throw (ParseException)jjte002;}
544
                                 }
544
                                }
545
                                 {if (true) throw (Error)jjte002;}
545
                                {if (true) throw (Error)jjte002;}
546
        } finally {
546
        } finally {
547
                                 if (jjtc002) {
547
                                if (jjtc002) {
548
                                   jjtree.closeNodeScope(jjtn002,  2);
548
                                  jjtree.closeNodeScope(jjtn002,  2);
549
                                 }
549
                                }
550
        }
550
        }
551
        break;
551
        break;
552
      case LE0:
552
      case LE0:
Lines 563-591 Link Here
563
          jj_consume_token(-1);
563
          jj_consume_token(-1);
564
          throw new ParseException();
564
          throw new ParseException();
565
        }
565
        }
566
                                 AstLessThanEqual jjtn003 = new AstLessThanEqual(JJTLESSTHANEQUAL);
566
                                AstLessThanEqual jjtn003 = new AstLessThanEqual(JJTLESSTHANEQUAL);
567
                                 boolean jjtc003 = true;
567
                                boolean jjtc003 = true;
568
                                 jjtree.openNodeScope(jjtn003);
568
                                jjtree.openNodeScope(jjtn003);
569
        try {
569
        try {
570
          Math();
570
          Math();
571
        } catch (Throwable jjte003) {
571
        } catch (Throwable jjte003) {
572
                                 if (jjtc003) {
572
                                if (jjtc003) {
573
                                   jjtree.clearNodeScope(jjtn003);
573
                                  jjtree.clearNodeScope(jjtn003);
574
                                   jjtc003 = false;
574
                                  jjtc003 = false;
575
                                 } else {
575
                                } else {
576
                                   jjtree.popNode();
576
                                  jjtree.popNode();
577
                                 }
577
                                }
578
                                 if (jjte003 instanceof RuntimeException) {
578
                                if (jjte003 instanceof RuntimeException) {
579
                                   {if (true) throw (RuntimeException)jjte003;}
579
                                  {if (true) throw (RuntimeException)jjte003;}
580
                                 }
580
                                }
581
                                 if (jjte003 instanceof ParseException) {
581
                                if (jjte003 instanceof ParseException) {
582
                                   {if (true) throw (ParseException)jjte003;}
582
                                  {if (true) throw (ParseException)jjte003;}
583
                                 }
583
                                }
584
                                 {if (true) throw (Error)jjte003;}
584
                                {if (true) throw (Error)jjte003;}
585
        } finally {
585
        } finally {
586
                                 if (jjtc003) {
586
                                if (jjtc003) {
587
                                   jjtree.closeNodeScope(jjtn003,  2);
587
                                  jjtree.closeNodeScope(jjtn003,  2);
588
                                 }
588
                                }
589
        }
589
        }
590
        break;
590
        break;
591
      case GE0:
591
      case GE0:
Lines 602-630 Link Here
602
          jj_consume_token(-1);
602
          jj_consume_token(-1);
603
          throw new ParseException();
603
          throw new ParseException();
604
        }
604
        }
605
                                 AstGreaterThanEqual jjtn004 = new AstGreaterThanEqual(JJTGREATERTHANEQUAL);
605
                                AstGreaterThanEqual jjtn004 = new AstGreaterThanEqual(JJTGREATERTHANEQUAL);
606
                                 boolean jjtc004 = true;
606
                                boolean jjtc004 = true;
607
                                 jjtree.openNodeScope(jjtn004);
607
                                jjtree.openNodeScope(jjtn004);
608
        try {
608
        try {
609
          Math();
609
          Math();
610
        } catch (Throwable jjte004) {
610
        } catch (Throwable jjte004) {
611
                                 if (jjtc004) {
611
                                if (jjtc004) {
612
                                   jjtree.clearNodeScope(jjtn004);
612
                                  jjtree.clearNodeScope(jjtn004);
613
                                   jjtc004 = false;
613
                                  jjtc004 = false;
614
                                 } else {
614
                                } else {
615
                                   jjtree.popNode();
615
                                  jjtree.popNode();
616
                                 }
616
                                }
617
                                 if (jjte004 instanceof RuntimeException) {
617
                                if (jjte004 instanceof RuntimeException) {
618
                                   {if (true) throw (RuntimeException)jjte004;}
618
                                  {if (true) throw (RuntimeException)jjte004;}
619
                                 }
619
                                }
620
                                 if (jjte004 instanceof ParseException) {
620
                                if (jjte004 instanceof ParseException) {
621
                                   {if (true) throw (ParseException)jjte004;}
621
                                  {if (true) throw (ParseException)jjte004;}
622
                                 }
622
                                }
623
                                 {if (true) throw (Error)jjte004;}
623
                                {if (true) throw (Error)jjte004;}
624
        } finally {
624
        } finally {
625
                                 if (jjtc004) {
625
                                if (jjtc004) {
626
                                   jjtree.closeNodeScope(jjtn004,  2);
626
                                  jjtree.closeNodeScope(jjtn004,  2);
627
                                 }
627
                                }
628
        }
628
        }
629
        break;
629
        break;
630
      default:
630
      default:
Lines 655-710 Link Here
655
      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
655
      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
656
      case PLUS:
656
      case PLUS:
657
        jj_consume_token(PLUS);
657
        jj_consume_token(PLUS);
658
                          AstPlus jjtn001 = new AstPlus(JJTPLUS);
658
                         AstPlus jjtn001 = new AstPlus(JJTPLUS);
659
                          boolean jjtc001 = true;
659
                         boolean jjtc001 = true;
660
                          jjtree.openNodeScope(jjtn001);
660
                         jjtree.openNodeScope(jjtn001);
661
        try {
661
        try {
662
          Multiplication();
662
          Multiplication();
663
        } catch (Throwable jjte001) {
663
        } catch (Throwable jjte001) {
664
                          if (jjtc001) {
664
                         if (jjtc001) {
665
                            jjtree.clearNodeScope(jjtn001);
665
                           jjtree.clearNodeScope(jjtn001);
666
                            jjtc001 = false;
666
                           jjtc001 = false;
667
                          } else {
667
                         } else {
668
                            jjtree.popNode();
668
                           jjtree.popNode();
669
                          }
669
                         }
670
                          if (jjte001 instanceof RuntimeException) {
670
                         if (jjte001 instanceof RuntimeException) {
671
                            {if (true) throw (RuntimeException)jjte001;}
671
                           {if (true) throw (RuntimeException)jjte001;}
672
                          }
672
                         }
673
                          if (jjte001 instanceof ParseException) {
673
                         if (jjte001 instanceof ParseException) {
674
                            {if (true) throw (ParseException)jjte001;}
674
                           {if (true) throw (ParseException)jjte001;}
675
                          }
675
                         }
676
                          {if (true) throw (Error)jjte001;}
676
                         {if (true) throw (Error)jjte001;}
677
        } finally {
677
        } finally {
678
                          if (jjtc001) {
678
                         if (jjtc001) {
679
                            jjtree.closeNodeScope(jjtn001,  2);
679
                           jjtree.closeNodeScope(jjtn001,  2);
680
                          }
680
                         }
681
        }
681
        }
682
        break;
682
        break;
683
      case MINUS:
683
      case MINUS:
684
        jj_consume_token(MINUS);
684
        jj_consume_token(MINUS);
685
                           AstMinus jjtn002 = new AstMinus(JJTMINUS);
685
                          AstMinus jjtn002 = new AstMinus(JJTMINUS);
686
                           boolean jjtc002 = true;
686
                          boolean jjtc002 = true;
687
                           jjtree.openNodeScope(jjtn002);
687
                          jjtree.openNodeScope(jjtn002);
688
        try {
688
        try {
689
          Multiplication();
689
          Multiplication();
690
        } catch (Throwable jjte002) {
690
        } catch (Throwable jjte002) {
691
                           if (jjtc002) {
691
                          if (jjtc002) {
692
                             jjtree.clearNodeScope(jjtn002);
692
                            jjtree.clearNodeScope(jjtn002);
693
                             jjtc002 = false;
693
                            jjtc002 = false;
694
                           } else {
694
                          } else {
695
                             jjtree.popNode();
695
                            jjtree.popNode();
696
                           }
696
                          }
697
                           if (jjte002 instanceof RuntimeException) {
697
                          if (jjte002 instanceof RuntimeException) {
698
                             {if (true) throw (RuntimeException)jjte002;}
698
                            {if (true) throw (RuntimeException)jjte002;}
699
                           }
699
                          }
700
                           if (jjte002 instanceof ParseException) {
700
                          if (jjte002 instanceof ParseException) {
701
                             {if (true) throw (ParseException)jjte002;}
701
                            {if (true) throw (ParseException)jjte002;}
702
                           }
702
                          }
703
                           {if (true) throw (Error)jjte002;}
703
                          {if (true) throw (Error)jjte002;}
704
        } finally {
704
        } finally {
705
                           if (jjtc002) {
705
                          if (jjtc002) {
706
                             jjtree.closeNodeScope(jjtn002,  2);
706
                            jjtree.closeNodeScope(jjtn002,  2);
707
                           }
707
                          }
708
        }
708
        }
709
        break;
709
        break;
710
      default:
710
      default:
Lines 738-766 Link Here
738
      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
738
      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
739
      case MULT:
739
      case MULT:
740
        jj_consume_token(MULT);
740
        jj_consume_token(MULT);
741
                          AstMult jjtn001 = new AstMult(JJTMULT);
741
                         AstMult jjtn001 = new AstMult(JJTMULT);
742
                          boolean jjtc001 = true;
742
                         boolean jjtc001 = true;
743
                          jjtree.openNodeScope(jjtn001);
743
                         jjtree.openNodeScope(jjtn001);
744
        try {
744
        try {
745
          Unary();
745
          Unary();
746
        } catch (Throwable jjte001) {
746
        } catch (Throwable jjte001) {
747
                          if (jjtc001) {
747
                         if (jjtc001) {
748
                            jjtree.clearNodeScope(jjtn001);
748
                           jjtree.clearNodeScope(jjtn001);
749
                            jjtc001 = false;
749
                           jjtc001 = false;
750
                          } else {
750
                         } else {
751
                            jjtree.popNode();
751
                           jjtree.popNode();
752
                          }
752
                         }
753
                          if (jjte001 instanceof RuntimeException) {
753
                         if (jjte001 instanceof RuntimeException) {
754
                            {if (true) throw (RuntimeException)jjte001;}
754
                           {if (true) throw (RuntimeException)jjte001;}
755
                          }
755
                         }
756
                          if (jjte001 instanceof ParseException) {
756
                         if (jjte001 instanceof ParseException) {
757
                            {if (true) throw (ParseException)jjte001;}
757
                           {if (true) throw (ParseException)jjte001;}
758
                          }
758
                         }
759
                          {if (true) throw (Error)jjte001;}
759
                         {if (true) throw (Error)jjte001;}
760
        } finally {
760
        } finally {
761
                          if (jjtc001) {
761
                         if (jjtc001) {
762
                            jjtree.closeNodeScope(jjtn001,  2);
762
                           jjtree.closeNodeScope(jjtn001,  2);
763
                          }
763
                         }
764
        }
764
        }
765
        break;
765
        break;
766
      case DIV0:
766
      case DIV0:
Lines 777-805 Link Here
777
          jj_consume_token(-1);
777
          jj_consume_token(-1);
778
          throw new ParseException();
778
          throw new ParseException();
779
        }
779
        }
780
                                   AstDiv jjtn002 = new AstDiv(JJTDIV);
780
                                  AstDiv jjtn002 = new AstDiv(JJTDIV);
781
                                   boolean jjtc002 = true;
781
                                  boolean jjtc002 = true;
782
                                   jjtree.openNodeScope(jjtn002);
782
                                  jjtree.openNodeScope(jjtn002);
783
        try {
783
        try {
784
          Unary();
784
          Unary();
785
        } catch (Throwable jjte002) {
785
        } catch (Throwable jjte002) {
786
                                   if (jjtc002) {
786
                                  if (jjtc002) {
787
                                     jjtree.clearNodeScope(jjtn002);
787
                                    jjtree.clearNodeScope(jjtn002);
788
                                     jjtc002 = false;
788
                                    jjtc002 = false;
789
                                   } else {
789
                                  } else {
790
                                     jjtree.popNode();
790
                                    jjtree.popNode();
791
                                   }
791
                                  }
792
                                   if (jjte002 instanceof RuntimeException) {
792
                                  if (jjte002 instanceof RuntimeException) {
793
                                     {if (true) throw (RuntimeException)jjte002;}
793
                                    {if (true) throw (RuntimeException)jjte002;}
794
                                   }
794
                                  }
795
                                   if (jjte002 instanceof ParseException) {
795
                                  if (jjte002 instanceof ParseException) {
796
                                     {if (true) throw (ParseException)jjte002;}
796
                                    {if (true) throw (ParseException)jjte002;}
797
                                   }
797
                                  }
798
                                   {if (true) throw (Error)jjte002;}
798
                                  {if (true) throw (Error)jjte002;}
799
        } finally {
799
        } finally {
800
                                   if (jjtc002) {
800
                                  if (jjtc002) {
801
                                     jjtree.closeNodeScope(jjtn002,  2);
801
                                    jjtree.closeNodeScope(jjtn002,  2);
802
                                   }
802
                                  }
803
        }
803
        }
804
        break;
804
        break;
805
      case MOD0:
805
      case MOD0:
Lines 816-844 Link Here
816
          jj_consume_token(-1);
816
          jj_consume_token(-1);
817
          throw new ParseException();
817
          throw new ParseException();
818
        }
818
        }
819
                                   AstMod jjtn003 = new AstMod(JJTMOD);
819
                                  AstMod jjtn003 = new AstMod(JJTMOD);
820
                                   boolean jjtc003 = true;
820
                                  boolean jjtc003 = true;
821
                                   jjtree.openNodeScope(jjtn003);
821
                                  jjtree.openNodeScope(jjtn003);
822
        try {
822
        try {
823
          Unary();
823
          Unary();
824
        } catch (Throwable jjte003) {
824
        } catch (Throwable jjte003) {
825
                                   if (jjtc003) {
825
                                  if (jjtc003) {
826
                                     jjtree.clearNodeScope(jjtn003);
826
                                    jjtree.clearNodeScope(jjtn003);
827
                                     jjtc003 = false;
827
                                    jjtc003 = false;
828
                                   } else {
828
                                  } else {
829
                                     jjtree.popNode();
829
                                    jjtree.popNode();
830
                                   }
830
                                  }
831
                                   if (jjte003 instanceof RuntimeException) {
831
                                  if (jjte003 instanceof RuntimeException) {
832
                                     {if (true) throw (RuntimeException)jjte003;}
832
                                    {if (true) throw (RuntimeException)jjte003;}
833
                                   }
833
                                  }
834
                                   if (jjte003 instanceof ParseException) {
834
                                  if (jjte003 instanceof ParseException) {
835
                                     {if (true) throw (ParseException)jjte003;}
835
                                    {if (true) throw (ParseException)jjte003;}
836
                                   }
836
                                  }
837
                                   {if (true) throw (Error)jjte003;}
837
                                  {if (true) throw (Error)jjte003;}
838
        } finally {
838
        } finally {
839
                                   if (jjtc003) {
839
                                  if (jjtc003) {
840
                                     jjtree.closeNodeScope(jjtn003,  2);
840
                                    jjtree.closeNodeScope(jjtn003,  2);
841
                                   }
841
                                  }
842
        }
842
        }
843
        break;
843
        break;
844
      default:
844
      default:
Lines 857-885 Link Here
857
    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
857
    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
858
    case MINUS:
858
    case MINUS:
859
      jj_consume_token(MINUS);
859
      jj_consume_token(MINUS);
860
                          AstNegative jjtn001 = new AstNegative(JJTNEGATIVE);
860
                         AstNegative jjtn001 = new AstNegative(JJTNEGATIVE);
861
                          boolean jjtc001 = true;
861
                         boolean jjtc001 = true;
862
                          jjtree.openNodeScope(jjtn001);
862
                         jjtree.openNodeScope(jjtn001);
863
      try {
863
      try {
864
        Unary();
864
        Unary();
865
      } catch (Throwable jjte001) {
865
      } catch (Throwable jjte001) {
866
                          if (jjtc001) {
866
                         if (jjtc001) {
867
                            jjtree.clearNodeScope(jjtn001);
867
                           jjtree.clearNodeScope(jjtn001);
868
                            jjtc001 = false;
868
                           jjtc001 = false;
869
                          } else {
869
                         } else {
870
                            jjtree.popNode();
870
                           jjtree.popNode();
871
                          }
871
                         }
872
                          if (jjte001 instanceof RuntimeException) {
872
                         if (jjte001 instanceof RuntimeException) {
873
                            {if (true) throw (RuntimeException)jjte001;}
873
                           {if (true) throw (RuntimeException)jjte001;}
874
                          }
874
                         }
875
                          if (jjte001 instanceof ParseException) {
875
                         if (jjte001 instanceof ParseException) {
876
                            {if (true) throw (ParseException)jjte001;}
876
                           {if (true) throw (ParseException)jjte001;}
877
                          }
877
                         }
878
                          {if (true) throw (Error)jjte001;}
878
                         {if (true) throw (Error)jjte001;}
879
      } finally {
879
      } finally {
880
                          if (jjtc001) {
880
                         if (jjtc001) {
881
                            jjtree.closeNodeScope(jjtn001, true);
881
                           jjtree.closeNodeScope(jjtn001, true);
882
                          }
882
                         }
883
      }
883
      }
884
      break;
884
      break;
885
    case NOT0:
885
    case NOT0:
Lines 896-951 Link Here
896
        jj_consume_token(-1);
896
        jj_consume_token(-1);
897
        throw new ParseException();
897
        throw new ParseException();
898
      }
898
      }
899
                                  AstNot jjtn002 = new AstNot(JJTNOT);
899
                                 AstNot jjtn002 = new AstNot(JJTNOT);
900
                                  boolean jjtc002 = true;
900
                                 boolean jjtc002 = true;
901
                                  jjtree.openNodeScope(jjtn002);
901
                                 jjtree.openNodeScope(jjtn002);
902
      try {
902
      try {
903
        Unary();
903
        Unary();
904
      } catch (Throwable jjte002) {
904
      } catch (Throwable jjte002) {
905
                                  if (jjtc002) {
905
                                 if (jjtc002) {
906
                                    jjtree.clearNodeScope(jjtn002);
906
                                   jjtree.clearNodeScope(jjtn002);
907
                                    jjtc002 = false;
907
                                   jjtc002 = false;
908
                                  } else {
908
                                 } else {
909
                                    jjtree.popNode();
909
                                   jjtree.popNode();
910
                                  }
910
                                 }
911
                                  if (jjte002 instanceof RuntimeException) {
911
                                 if (jjte002 instanceof RuntimeException) {
912
                                    {if (true) throw (RuntimeException)jjte002;}
912
                                   {if (true) throw (RuntimeException)jjte002;}
913
                                  }
913
                                 }
914
                                  if (jjte002 instanceof ParseException) {
914
                                 if (jjte002 instanceof ParseException) {
915
                                    {if (true) throw (ParseException)jjte002;}
915
                                   {if (true) throw (ParseException)jjte002;}
916
                                  }
916
                                 }
917
                                  {if (true) throw (Error)jjte002;}
917
                                 {if (true) throw (Error)jjte002;}
918
      } finally {
918
      } finally {
919
                                  if (jjtc002) {
919
                                 if (jjtc002) {
920
                                    jjtree.closeNodeScope(jjtn002, true);
920
                                   jjtree.closeNodeScope(jjtn002, true);
921
                                  }
921
                                 }
922
      }
922
      }
923
      break;
923
      break;
924
    case EMPTY:
924
    case EMPTY:
925
      jj_consume_token(EMPTY);
925
      jj_consume_token(EMPTY);
926
                          AstEmpty jjtn003 = new AstEmpty(JJTEMPTY);
926
                         AstEmpty jjtn003 = new AstEmpty(JJTEMPTY);
927
                          boolean jjtc003 = true;
927
                         boolean jjtc003 = true;
928
                          jjtree.openNodeScope(jjtn003);
928
                         jjtree.openNodeScope(jjtn003);
929
      try {
929
      try {
930
        Unary();
930
        Unary();
931
      } catch (Throwable jjte003) {
931
      } catch (Throwable jjte003) {
932
                          if (jjtc003) {
932
                         if (jjtc003) {
933
                            jjtree.clearNodeScope(jjtn003);
933
                           jjtree.clearNodeScope(jjtn003);
934
                            jjtc003 = false;
934
                           jjtc003 = false;
935
                          } else {
935
                         } else {
936
                            jjtree.popNode();
936
                           jjtree.popNode();
937
                          }
937
                         }
938
                          if (jjte003 instanceof RuntimeException) {
938
                         if (jjte003 instanceof RuntimeException) {
939
                            {if (true) throw (RuntimeException)jjte003;}
939
                           {if (true) throw (RuntimeException)jjte003;}
940
                          }
940
                         }
941
                          if (jjte003 instanceof ParseException) {
941
                         if (jjte003 instanceof ParseException) {
942
                            {if (true) throw (ParseException)jjte003;}
942
                           {if (true) throw (ParseException)jjte003;}
943
                          }
943
                         }
944
                          {if (true) throw (Error)jjte003;}
944
                         {if (true) throw (Error)jjte003;}
945
      } finally {
945
      } finally {
946
                          if (jjtc003) {
946
                         if (jjtc003) {
947
                            jjtree.closeNodeScope(jjtn003, true);
947
                           jjtree.closeNodeScope(jjtn003, true);
948
                          }
948
                         }
949
      }
949
      }
950
      break;
950
      break;
951
    case INTEGER_LITERAL:
951
    case INTEGER_LITERAL:
Lines 956-962 Link Here
956
    case NULL:
956
    case NULL:
957
    case LPAREN:
957
    case LPAREN:
958
    case IDENTIFIER:
958
    case IDENTIFIER:
959
    case NAMESPACE:
959
    case FUNCTION_CALL:
960
      Value();
960
      Value();
961
      break;
961
      break;
962
    default:
962
    default:
Lines 971-979 Link Here
971
 * Defines Prefix plus zero or more Suffixes
971
 * Defines Prefix plus zero or more Suffixes
972
 */
972
 */
973
  final public void Value() throws ParseException {
973
  final public void Value() throws ParseException {
974
          AstValue jjtn001 = new AstValue(JJTVALUE);
974
         AstValue jjtn001 = new AstValue(JJTVALUE);
975
          boolean jjtc001 = true;
975
         boolean jjtc001 = true;
976
          jjtree.openNodeScope(jjtn001);
976
         jjtree.openNodeScope(jjtn001);
977
    try {
977
    try {
978
      ValuePrefix();
978
      ValuePrefix();
979
      label_9:
979
      label_9:
Lines 990-1012 Link Here
990
        ValueSuffix();
990
        ValueSuffix();
991
      }
991
      }
992
    } catch (Throwable jjte001) {
992
    } catch (Throwable jjte001) {
993
          if (jjtc001) {
993
         if (jjtc001) {
994
            jjtree.clearNodeScope(jjtn001);
994
           jjtree.clearNodeScope(jjtn001);
995
            jjtc001 = false;
995
           jjtc001 = false;
996
          } else {
996
         } else {
997
            jjtree.popNode();
997
           jjtree.popNode();
998
          }
998
         }
999
          if (jjte001 instanceof RuntimeException) {
999
         if (jjte001 instanceof RuntimeException) {
1000
            {if (true) throw (RuntimeException)jjte001;}
1000
           {if (true) throw (RuntimeException)jjte001;}
1001
          }
1001
         }
1002
          if (jjte001 instanceof ParseException) {
1002
         if (jjte001 instanceof ParseException) {
1003
            {if (true) throw (ParseException)jjte001;}
1003
           {if (true) throw (ParseException)jjte001;}
1004
          }
1004
         }
1005
          {if (true) throw (Error)jjte001;}
1005
         {if (true) throw (Error)jjte001;}
1006
    } finally {
1006
    } finally {
1007
          if (jjtc001) {
1007
         if (jjtc001) {
1008
            jjtree.closeNodeScope(jjtn001, jjtree.nodeArity() > 1);
1008
           jjtree.closeNodeScope(jjtn001, jjtree.nodeArity() > 1);
1009
          }
1009
         }
1010
    }
1010
    }
1011
  }
1011
  }
1012
1012
Lines 1026-1032 Link Here
1026
      break;
1026
      break;
1027
    case LPAREN:
1027
    case LPAREN:
1028
    case IDENTIFIER:
1028
    case IDENTIFIER:
1029
    case NAMESPACE:
1029
    case FUNCTION_CALL:
1030
      NonLiteral();
1030
      NonLiteral();
1031
      break;
1031
      break;
1032
    default:
1032
    default:
Lines 1067-1079 Link Here
1067
    try {
1067
    try {
1068
      jj_consume_token(DOT);
1068
      jj_consume_token(DOT);
1069
      t = jj_consume_token(IDENTIFIER);
1069
      t = jj_consume_token(IDENTIFIER);
1070
                               jjtree.closeNodeScope(jjtn000, true);
1070
                              jjtree.closeNodeScope(jjtn000, true);
1071
                               jjtc000 = false;
1071
                              jjtc000 = false;
1072
                               jjtn000.setImage(t.image);
1072
                              jjtn000.setImage(t.image);
1073
    } finally {
1073
    } finally {
1074
          if (jjtc000) {
1074
         if (jjtc000) {
1075
            jjtree.closeNodeScope(jjtn000, true);
1075
           jjtree.closeNodeScope(jjtn000, true);
1076
          }
1076
         }
1077
    }
1077
    }
1078
  }
1078
  }
1079
1079
Lines 1091-1113 Link Here
1091
      Expression();
1091
      Expression();
1092
      jj_consume_token(RBRACK);
1092
      jj_consume_token(RBRACK);
1093
    } catch (Throwable jjte000) {
1093
    } catch (Throwable jjte000) {
1094
          if (jjtc000) {
1094
         if (jjtc000) {
1095
            jjtree.clearNodeScope(jjtn000);
1095
           jjtree.clearNodeScope(jjtn000);
1096
            jjtc000 = false;
1096
           jjtc000 = false;
1097
          } else {
1097
         } else {
1098
            jjtree.popNode();
1098
           jjtree.popNode();
1099
          }
1099
         }
1100
          if (jjte000 instanceof RuntimeException) {
1100
         if (jjte000 instanceof RuntimeException) {
1101
            {if (true) throw (RuntimeException)jjte000;}
1101
           {if (true) throw (RuntimeException)jjte000;}
1102
          }
1102
         }
1103
          if (jjte000 instanceof ParseException) {
1103
         if (jjte000 instanceof ParseException) {
1104
            {if (true) throw (ParseException)jjte000;}
1104
           {if (true) throw (ParseException)jjte000;}
1105
          }
1105
         }
1106
          {if (true) throw (Error)jjte000;}
1106
         {if (true) throw (Error)jjte000;}
1107
    } finally {
1107
    } finally {
1108
          if (jjtc000) {
1108
         if (jjtc000) {
1109
            jjtree.closeNodeScope(jjtn000, true);
1109
           jjtree.closeNodeScope(jjtn000, true);
1110
          }
1110
         }
1111
    }
1111
    }
1112
  }
1112
  }
1113
1113
Lines 1151-1163 Link Here
1151
                                  jjtree.openNodeScope(jjtn000);Token t = null;
1151
                                  jjtree.openNodeScope(jjtn000);Token t = null;
1152
    try {
1152
    try {
1153
      t = jj_consume_token(IDENTIFIER);
1153
      t = jj_consume_token(IDENTIFIER);
1154
                         jjtree.closeNodeScope(jjtn000, true);
1154
                        jjtree.closeNodeScope(jjtn000, true);
1155
                         jjtc000 = false;
1155
                        jjtc000 = false;
1156
                         jjtn000.setImage(t.image);
1156
                        jjtn000.setImage(t.image);
1157
    } finally {
1157
    } finally {
1158
          if (jjtc000) {
1158
         if (jjtc000) {
1159
            jjtree.closeNodeScope(jjtn000, true);
1159
           jjtree.closeNodeScope(jjtn000, true);
1160
          }
1160
         }
1161
    }
1161
    }
1162
  }
1162
  }
1163
1163
Lines 1167-1194 Link Here
1167
 */
1167
 */
1168
  final public void Function() throws ParseException {
1168
  final public void Function() throws ParseException {
1169
 /*@bgen(jjtree) Function */
1169
 /*@bgen(jjtree) Function */
1170
        AstFunction jjtn000 = new AstFunction(JJTFUNCTION);
1170
       AstFunction jjtn000 = new AstFunction(JJTFUNCTION);
1171
        boolean jjtc000 = true;
1171
       boolean jjtc000 = true;
1172
        jjtree.openNodeScope(jjtn000);Token t0 = null;
1172
       jjtree.openNodeScope(jjtn000);Token tx = null;
1173
        Token t1 = null;
1174
    try {
1173
    try {
1174
      tx = jj_consume_token(FUNCTION_CALL);
1175
      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1175
      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1176
      case NAMESPACE:
1177
        t0 = jj_consume_token(NAMESPACE);
1178
        break;
1179
      default:
1180
        jj_la1[30] = jj_gen;
1181
        ;
1182
      }
1183
      t1 = jj_consume_token(IDENTIFIER);
1184
                if (t0 != null) {
1185
                        jjtn000.setPrefix(t0.image.substring(0, t0.image.length() - 1));
1186
                        jjtn000.setLocalName(t1.image);
1187
                } else {
1188
                        jjtn000.setLocalName(t1.image);
1189
                }
1190
      jj_consume_token(LPAREN);
1191
      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1192
      case INTEGER_LITERAL:
1176
      case INTEGER_LITERAL:
1193
      case FLOATING_POINT_LITERAL:
1177
      case FLOATING_POINT_LITERAL:
1194
      case STRING_LITERAL:
1178
      case STRING_LITERAL:
Lines 1201-1207 Link Here
1201
      case EMPTY:
1185
      case EMPTY:
1202
      case MINUS:
1186
      case MINUS:
1203
      case IDENTIFIER:
1187
      case IDENTIFIER:
1204
      case NAMESPACE:
1188
      case FUNCTION_CALL:
1205
        Expression();
1189
        Expression();
1206
        label_10:
1190
        label_10:
1207
        while (true) {
1191
        while (true) {
Lines 1210-1216 Link Here
1210
            ;
1194
            ;
1211
            break;
1195
            break;
1212
          default:
1196
          default:
1213
            jj_la1[31] = jj_gen;
1197
            jj_la1[30] = jj_gen;
1214
            break label_10;
1198
            break label_10;
1215
          }
1199
          }
1216
          jj_consume_token(COMMA);
1200
          jj_consume_token(COMMA);
Lines 1218-1245 Link Here
1218
        }
1202
        }
1219
        break;
1203
        break;
1220
      default:
1204
      default:
1221
        jj_la1[32] = jj_gen;
1205
        jj_la1[31] = jj_gen;
1222
        ;
1206
        ;
1223
      }
1207
      }
1224
      jj_consume_token(RPAREN);
1208
      jj_consume_token(RPAREN);
1209
         jjtree.closeNodeScope(jjtn000, true);
1210
         jjtc000 = false;
1211
               if (tx.image.indexOf(":")!=-1) {
1212
                       jjtn000.setPrefix(tx.image.substring(0, tx.image.indexOf(":")));
1213
                       jjtn000.setLocalName(tx.image.substring(tx.image.indexOf(":") + 1, tx.image.length() - 1));
1214
               } else {
1215
                       jjtn000.setLocalName(tx.image.substring(0, tx.image.length() - 1));
1216
               }
1225
    } catch (Throwable jjte000) {
1217
    } catch (Throwable jjte000) {
1226
          if (jjtc000) {
1218
         if (jjtc000) {
1227
            jjtree.clearNodeScope(jjtn000);
1219
           jjtree.clearNodeScope(jjtn000);
1228
            jjtc000 = false;
1220
           jjtc000 = false;
1229
          } else {
1221
         } else {
1230
            jjtree.popNode();
1222
           jjtree.popNode();
1231
          }
1223
         }
1232
          if (jjte000 instanceof RuntimeException) {
1224
         if (jjte000 instanceof RuntimeException) {
1233
            {if (true) throw (RuntimeException)jjte000;}
1225
           {if (true) throw (RuntimeException)jjte000;}
1234
          }
1226
         }
1235
          if (jjte000 instanceof ParseException) {
1227
         if (jjte000 instanceof ParseException) {
1236
            {if (true) throw (ParseException)jjte000;}
1228
           {if (true) throw (ParseException)jjte000;}
1237
          }
1229
         }
1238
          {if (true) throw (Error)jjte000;}
1230
         {if (true) throw (Error)jjte000;}
1239
    } finally {
1231
    } finally {
1240
          if (jjtc000) {
1232
         if (jjtc000) {
1241
            jjtree.closeNodeScope(jjtn000, true);
1233
           jjtree.closeNodeScope(jjtn000, true);
1242
          }
1234
         }
1243
    }
1235
    }
1244
  }
1236
  }
1245
1237
Lines 1266-1272 Link Here
1266
      Null();
1258
      Null();
1267
      break;
1259
      break;
1268
    default:
1260
    default:
1269
      jj_la1[33] = jj_gen;
1261
      jj_la1[32] = jj_gen;
1270
      jj_consume_token(-1);
1262
      jj_consume_token(-1);
1271
      throw new ParseException();
1263
      throw new ParseException();
1272
    }
1264
    }
Lines 1279-1309 Link Here
1279
  final public void Boolean() throws ParseException {
1271
  final public void Boolean() throws ParseException {
1280
    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1272
    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1281
    case TRUE:
1273
    case TRUE:
1282
          AstTrue jjtn001 = new AstTrue(JJTTRUE);
1274
         AstTrue jjtn001 = new AstTrue(JJTTRUE);
1283
          boolean jjtc001 = true;
1275
         boolean jjtc001 = true;
1284
          jjtree.openNodeScope(jjtn001);
1276
         jjtree.openNodeScope(jjtn001);
1285
      try {
1277
      try {
1286
        jj_consume_token(TRUE);
1278
        jj_consume_token(TRUE);
1287
      } finally {
1279
      } finally {
1288
          if (jjtc001) {
1280
         if (jjtc001) {
1289
            jjtree.closeNodeScope(jjtn001, true);
1281
           jjtree.closeNodeScope(jjtn001, true);
1290
          }
1282
         }
1291
      }
1283
      }
1292
      break;
1284
      break;
1293
    case FALSE:
1285
    case FALSE:
1294
            AstFalse jjtn002 = new AstFalse(JJTFALSE);
1286
           AstFalse jjtn002 = new AstFalse(JJTFALSE);
1295
            boolean jjtc002 = true;
1287
           boolean jjtc002 = true;
1296
            jjtree.openNodeScope(jjtn002);
1288
           jjtree.openNodeScope(jjtn002);
1297
      try {
1289
      try {
1298
        jj_consume_token(FALSE);
1290
        jj_consume_token(FALSE);
1299
      } finally {
1291
      } finally {
1300
            if (jjtc002) {
1292
           if (jjtc002) {
1301
              jjtree.closeNodeScope(jjtn002, true);
1293
             jjtree.closeNodeScope(jjtn002, true);
1302
            }
1294
           }
1303
      }
1295
      }
1304
      break;
1296
      break;
1305
    default:
1297
    default:
1306
      jj_la1[34] = jj_gen;
1298
      jj_la1[33] = jj_gen;
1307
      jj_consume_token(-1);
1299
      jj_consume_token(-1);
1308
      throw new ParseException();
1300
      throw new ParseException();
1309
    }
1301
    }
Lines 1320-1332 Link Here
1320
                                        jjtree.openNodeScope(jjtn000);Token t = null;
1312
                                        jjtree.openNodeScope(jjtn000);Token t = null;
1321
    try {
1313
    try {
1322
      t = jj_consume_token(FLOATING_POINT_LITERAL);
1314
      t = jj_consume_token(FLOATING_POINT_LITERAL);
1323
                                     jjtree.closeNodeScope(jjtn000, true);
1315
                                    jjtree.closeNodeScope(jjtn000, true);
1324
                                     jjtc000 = false;
1316
                                    jjtc000 = false;
1325
                                     jjtn000.setImage(t.image);
1317
                                    jjtn000.setImage(t.image);
1326
    } finally {
1318
    } finally {
1327
          if (jjtc000) {
1319
         if (jjtc000) {
1328
            jjtree.closeNodeScope(jjtn000, true);
1320
           jjtree.closeNodeScope(jjtn000, true);
1329
          }
1321
         }
1330
    }
1322
    }
1331
  }
1323
  }
1332
1324
Lines 1341-1353 Link Here
1341
                            jjtree.openNodeScope(jjtn000);Token t = null;
1333
                            jjtree.openNodeScope(jjtn000);Token t = null;
1342
    try {
1334
    try {
1343
      t = jj_consume_token(INTEGER_LITERAL);
1335
      t = jj_consume_token(INTEGER_LITERAL);
1344
                              jjtree.closeNodeScope(jjtn000, true);
1336
                             jjtree.closeNodeScope(jjtn000, true);
1345
                              jjtc000 = false;
1337
                             jjtc000 = false;
1346
                              jjtn000.setImage(t.image);
1338
                             jjtn000.setImage(t.image);
1347
    } finally {
1339
    } finally {
1348
          if (jjtc000) {
1340
         if (jjtc000) {
1349
            jjtree.closeNodeScope(jjtn000, true);
1341
           jjtree.closeNodeScope(jjtn000, true);
1350
          }
1342
         }
1351
    }
1343
    }
1352
  }
1344
  }
1353
1345
Lines 1362-1374 Link Here
1362
                          jjtree.openNodeScope(jjtn000);Token t = null;
1354
                          jjtree.openNodeScope(jjtn000);Token t = null;
1363
    try {
1355
    try {
1364
      t = jj_consume_token(STRING_LITERAL);
1356
      t = jj_consume_token(STRING_LITERAL);
1365
                             jjtree.closeNodeScope(jjtn000, true);
1357
                            jjtree.closeNodeScope(jjtn000, true);
1366
                             jjtc000 = false;
1358
                            jjtc000 = false;
1367
                             jjtn000.setImage(t.image);
1359
                            jjtn000.setImage(t.image);
1368
    } finally {
1360
    } finally {
1369
          if (jjtc000) {
1361
         if (jjtc000) {
1370
            jjtree.closeNodeScope(jjtn000, true);
1362
           jjtree.closeNodeScope(jjtn000, true);
1371
          }
1363
         }
1372
    }
1364
    }
1373
  }
1365
  }
1374
1366
Lines 1384-1392 Link Here
1384
    try {
1376
    try {
1385
      jj_consume_token(NULL);
1377
      jj_consume_token(NULL);
1386
    } finally {
1378
    } finally {
1387
          if (jjtc000) {
1379
         if (jjtc000) {
1388
            jjtree.closeNodeScope(jjtn000, true);
1380
           jjtree.closeNodeScope(jjtn000, true);
1389
          }
1381
         }
1390
    }
1382
    }
1391
  }
1383
  }
1392
1384
Lines 1398-1431 Link Here
1398
  }
1390
  }
1399
1391
1400
  final private boolean jj_3R_11() {
1392
  final private boolean jj_3R_11() {
1393
    if (jj_scan_token(FUNCTION_CALL)) return true;
1401
    Token xsp;
1394
    Token xsp;
1402
    xsp = jj_scanpos;
1395
    xsp = jj_scanpos;
1403
    if (jj_scan_token(54)) jj_scanpos = xsp;
1404
    if (jj_scan_token(IDENTIFIER)) return true;
1405
    if (jj_scan_token(LPAREN)) return true;
1406
    xsp = jj_scanpos;
1407
    if (jj_3R_12()) jj_scanpos = xsp;
1396
    if (jj_3R_12()) jj_scanpos = xsp;
1408
    if (jj_scan_token(RPAREN)) return true;
1397
    if (jj_scan_token(RPAREN)) return true;
1409
    return false;
1398
    return false;
1410
  }
1399
  }
1411
1400
1412
  final private boolean jj_3R_20() {
1401
  final private boolean jj_3R_28() {
1413
    if (jj_3R_21()) return true;
1402
    if (jj_3R_34()) return true;
1403
    Token xsp;
1404
    while (true) {
1405
      xsp = jj_scanpos;
1406
      if (jj_3R_35()) { jj_scanpos = xsp; break; }
1407
    }
1414
    return false;
1408
    return false;
1415
  }
1409
  }
1416
1410
1417
  final private boolean jj_3R_44() {
1411
  final private boolean jj_3R_37() {
1412
    if (jj_scan_token(MINUS)) return true;
1413
    return false;
1414
  }
1415
1416
  final private boolean jj_3R_29() {
1417
    Token xsp;
1418
    xsp = jj_scanpos;
1419
    if (jj_3R_36()) {
1420
    jj_scanpos = xsp;
1421
    if (jj_3R_37()) return true;
1422
    }
1423
    return false;
1424
  }
1425
1426
  final private boolean jj_3R_36() {
1427
    if (jj_scan_token(PLUS)) return true;
1428
    return false;
1429
  }
1430
1431
  final private boolean jj_3R_69() {
1418
    if (jj_scan_token(IDENTIFIER)) return true;
1432
    if (jj_scan_token(IDENTIFIER)) return true;
1419
    return false;
1433
    return false;
1420
  }
1434
  }
1421
1435
1422
  final private boolean jj_3R_19() {
1436
  final private boolean jj_3R_61() {
1423
    if (jj_3R_20()) return true;
1437
    if (jj_3R_69()) return true;
1424
    return false;
1438
    return false;
1425
  }
1439
  }
1426
1440
1427
  final private boolean jj_3R_38() {
1441
  final private boolean jj_3R_24() {
1428
    if (jj_3R_44()) return true;
1442
    if (jj_3R_28()) return true;
1443
    Token xsp;
1444
    while (true) {
1445
      xsp = jj_scanpos;
1446
      if (jj_3R_29()) { jj_scanpos = xsp; break; }
1447
    }
1429
    return false;
1448
    return false;
1430
  }
1449
  }
1431
1450
Lines 1434-1620 Link Here
1434
    return false;
1453
    return false;
1435
  }
1454
  }
1436
1455
1437
  final private boolean jj_3R_31() {
1456
  final private boolean jj_3R_33() {
1438
    Token xsp;
1457
    Token xsp;
1439
    xsp = jj_scanpos;
1458
    xsp = jj_scanpos;
1440
    if (jj_3R_37()) {
1459
    if (jj_scan_token(29)) {
1441
    jj_scanpos = xsp;
1460
    jj_scanpos = xsp;
1461
    if (jj_scan_token(30)) return true;
1462
    }
1463
    return false;
1464
  }
1465
1466
  final private boolean jj_3R_60() {
1467
    if (jj_scan_token(LPAREN)) return true;
1468
    if (jj_3R_13()) return true;
1469
    return false;
1470
  }
1471
1472
  final private boolean jj_3R_52() {
1473
    Token xsp;
1474
    xsp = jj_scanpos;
1475
    if (jj_3R_60()) {
1476
    jj_scanpos = xsp;
1442
    if (jj_3_1()) {
1477
    if (jj_3_1()) {
1443
    jj_scanpos = xsp;
1478
    jj_scanpos = xsp;
1444
    if (jj_3R_38()) return true;
1479
    if (jj_3R_61()) return true;
1445
    }
1480
    }
1446
    }
1481
    }
1447
    return false;
1482
    return false;
1448
  }
1483
  }
1449
1484
1450
  final private boolean jj_3R_37() {
1485
  final private boolean jj_3R_32() {
1451
    if (jj_scan_token(LPAREN)) return true;
1486
    Token xsp;
1487
    xsp = jj_scanpos;
1488
    if (jj_scan_token(31)) {
1489
    jj_scanpos = xsp;
1490
    if (jj_scan_token(32)) return true;
1491
    }
1452
    return false;
1492
    return false;
1453
  }
1493
  }
1454
1494
1455
  final private boolean jj_3R_43() {
1495
  final private boolean jj_3R_31() {
1496
    Token xsp;
1497
    xsp = jj_scanpos;
1498
    if (jj_scan_token(25)) {
1499
    jj_scanpos = xsp;
1500
    if (jj_scan_token(26)) return true;
1501
    }
1502
    return false;
1503
  }
1504
1505
  final private boolean jj_3R_25() {
1506
    Token xsp;
1507
    xsp = jj_scanpos;
1508
    if (jj_3R_30()) {
1509
    jj_scanpos = xsp;
1510
    if (jj_3R_31()) {
1511
    jj_scanpos = xsp;
1512
    if (jj_3R_32()) {
1513
    jj_scanpos = xsp;
1514
    if (jj_3R_33()) return true;
1515
    }
1516
    }
1517
    }
1518
    return false;
1519
  }
1520
1521
  final private boolean jj_3R_30() {
1522
    Token xsp;
1523
    xsp = jj_scanpos;
1524
    if (jj_scan_token(27)) {
1525
    jj_scanpos = xsp;
1526
    if (jj_scan_token(28)) return true;
1527
    }
1528
    return false;
1529
  }
1530
1531
  final private boolean jj_3R_68() {
1456
    if (jj_scan_token(NULL)) return true;
1532
    if (jj_scan_token(NULL)) return true;
1457
    return false;
1533
    return false;
1458
  }
1534
  }
1459
1535
1460
  final private boolean jj_3R_42() {
1536
  final private boolean jj_3R_63() {
1537
    if (jj_scan_token(LBRACK)) return true;
1538
    return false;
1539
  }
1540
1541
  final private boolean jj_3R_54() {
1542
    if (jj_3R_63()) return true;
1543
    return false;
1544
  }
1545
1546
  final private boolean jj_3R_67() {
1461
    if (jj_scan_token(STRING_LITERAL)) return true;
1547
    if (jj_scan_token(STRING_LITERAL)) return true;
1462
    return false;
1548
    return false;
1463
  }
1549
  }
1464
1550
1465
  final private boolean jj_3R_18() {
1551
  final private boolean jj_3R_22() {
1466
    if (jj_3R_19()) return true;
1552
    if (jj_3R_24()) return true;
1553
    Token xsp;
1554
    while (true) {
1555
      xsp = jj_scanpos;
1556
      if (jj_3R_25()) { jj_scanpos = xsp; break; }
1557
    }
1467
    return false;
1558
    return false;
1468
  }
1559
  }
1469
1560
1470
  final private boolean jj_3R_41() {
1561
  final private boolean jj_3R_27() {
1562
    Token xsp;
1563
    xsp = jj_scanpos;
1564
    if (jj_scan_token(35)) {
1565
    jj_scanpos = xsp;
1566
    if (jj_scan_token(36)) return true;
1567
    }
1568
    return false;
1569
  }
1570
1571
  final private boolean jj_3R_62() {
1572
    if (jj_scan_token(DOT)) return true;
1573
    return false;
1574
  }
1575
1576
  final private boolean jj_3R_26() {
1577
    Token xsp;
1578
    xsp = jj_scanpos;
1579
    if (jj_scan_token(33)) {
1580
    jj_scanpos = xsp;
1581
    if (jj_scan_token(34)) return true;
1582
    }
1583
    return false;
1584
  }
1585
1586
  final private boolean jj_3R_23() {
1587
    Token xsp;
1588
    xsp = jj_scanpos;
1589
    if (jj_3R_26()) {
1590
    jj_scanpos = xsp;
1591
    if (jj_3R_27()) return true;
1592
    }
1593
    return false;
1594
  }
1595
1596
  final private boolean jj_3R_66() {
1471
    if (jj_scan_token(INTEGER_LITERAL)) return true;
1597
    if (jj_scan_token(INTEGER_LITERAL)) return true;
1472
    return false;
1598
    return false;
1473
  }
1599
  }
1474
1600
1475
  final private boolean jj_3R_17() {
1601
  final private boolean jj_3R_21() {
1476
    if (jj_3R_18()) return true;
1602
    Token xsp;
1603
    xsp = jj_scanpos;
1604
    if (jj_scan_token(39)) {
1605
    jj_scanpos = xsp;
1606
    if (jj_scan_token(40)) return true;
1607
    }
1477
    return false;
1608
    return false;
1478
  }
1609
  }
1479
1610
1480
  final private boolean jj_3R_40() {
1611
  final private boolean jj_3R_53() {
1612
    if (jj_3R_62()) return true;
1613
    return false;
1614
  }
1615
1616
  final private boolean jj_3R_50() {
1617
    Token xsp;
1618
    xsp = jj_scanpos;
1619
    if (jj_3R_53()) {
1620
    jj_scanpos = xsp;
1621
    if (jj_3R_54()) return true;
1622
    }
1623
    return false;
1624
  }
1625
1626
  final private boolean jj_3R_20() {
1627
    if (jj_3R_22()) return true;
1628
    Token xsp;
1629
    while (true) {
1630
      xsp = jj_scanpos;
1631
      if (jj_3R_23()) { jj_scanpos = xsp; break; }
1632
    }
1633
    return false;
1634
  }
1635
1636
  final private boolean jj_3R_47() {
1637
    if (jj_3R_50()) return true;
1638
    return false;
1639
  }
1640
1641
  final private boolean jj_3R_65() {
1481
    if (jj_scan_token(FLOATING_POINT_LITERAL)) return true;
1642
    if (jj_scan_token(FLOATING_POINT_LITERAL)) return true;
1482
    return false;
1643
    return false;
1483
  }
1644
  }
1484
1645
1485
  final private boolean jj_3R_29() {
1646
  final private boolean jj_3R_49() {
1486
    if (jj_3R_31()) return true;
1647
    if (jj_3R_52()) return true;
1487
    return false;
1648
    return false;
1488
  }
1649
  }
1489
1650
1490
  final private boolean jj_3R_46() {
1651
  final private boolean jj_3R_14() {
1491
    if (jj_scan_token(FALSE)) return true;
1652
    if (jj_scan_token(COMMA)) return true;
1492
    return false;
1653
    return false;
1493
  }
1654
  }
1494
1655
1495
  final private boolean jj_3R_16() {
1656
  final private boolean jj_3R_48() {
1496
    if (jj_3R_17()) return true;
1657
    if (jj_3R_51()) return true;
1497
    return false;
1658
    return false;
1498
  }
1659
  }
1499
1660
1500
  final private boolean jj_3R_27() {
1661
  final private boolean jj_3R_46() {
1501
    Token xsp;
1662
    Token xsp;
1502
    xsp = jj_scanpos;
1663
    xsp = jj_scanpos;
1503
    if (jj_3R_28()) {
1664
    if (jj_3R_48()) {
1504
    jj_scanpos = xsp;
1665
    jj_scanpos = xsp;
1505
    if (jj_3R_29()) return true;
1666
    if (jj_3R_49()) return true;
1506
    }
1667
    }
1507
    return false;
1668
    return false;
1508
  }
1669
  }
1509
1670
1510
  final private boolean jj_3R_28() {
1671
  final private boolean jj_3R_18() {
1511
    if (jj_3R_30()) return true;
1672
    if (jj_3R_20()) return true;
1673
    Token xsp;
1674
    while (true) {
1675
      xsp = jj_scanpos;
1676
      if (jj_3R_21()) { jj_scanpos = xsp; break; }
1677
    }
1512
    return false;
1678
    return false;
1513
  }
1679
  }
1514
1680
1515
  final private boolean jj_3R_45() {
1681
  final private boolean jj_3R_71() {
1682
    if (jj_scan_token(FALSE)) return true;
1683
    return false;
1684
  }
1685
1686
  final private boolean jj_3R_19() {
1687
    Token xsp;
1688
    xsp = jj_scanpos;
1689
    if (jj_scan_token(41)) {
1690
    jj_scanpos = xsp;
1691
    if (jj_scan_token(42)) return true;
1692
    }
1693
    return false;
1694
  }
1695
1696
  final private boolean jj_3R_70() {
1516
    if (jj_scan_token(TRUE)) return true;
1697
    if (jj_scan_token(TRUE)) return true;
1517
    return false;
1698
    return false;
1518
  }
1699
  }
1519
1700
1520
  final private boolean jj_3R_39() {
1701
  final private boolean jj_3R_64() {
1521
    Token xsp;
1702
    Token xsp;
1522
    xsp = jj_scanpos;
1703
    xsp = jj_scanpos;
1523
    if (jj_3R_45()) {
1704
    if (jj_3R_70()) {
1524
    jj_scanpos = xsp;
1705
    jj_scanpos = xsp;
1525
    if (jj_3R_46()) return true;
1706
    if (jj_3R_71()) return true;
1526
    }
1707
    }
1527
    return false;
1708
    return false;
1528
  }
1709
  }
1529
1710
1530
  final private boolean jj_3R_15() {
1711
  final private boolean jj_3R_45() {
1531
    if (jj_3R_16()) return true;
1712
    if (jj_3R_46()) return true;
1713
    Token xsp;
1714
    while (true) {
1715
      xsp = jj_scanpos;
1716
      if (jj_3R_47()) { jj_scanpos = xsp; break; }
1717
    }
1532
    return false;
1718
    return false;
1533
  }
1719
  }
1534
1720
1535
  final private boolean jj_3R_26() {
1721
  final private boolean jj_3R_16() {
1536
    if (jj_3R_27()) return true;
1722
    if (jj_3R_18()) return true;
1723
    Token xsp;
1724
    while (true) {
1725
      xsp = jj_scanpos;
1726
      if (jj_3R_19()) { jj_scanpos = xsp; break; }
1727
    }
1537
    return false;
1728
    return false;
1538
  }
1729
  }
1539
1730
1540
  final private boolean jj_3R_25() {
1731
  final private boolean jj_3R_41() {
1541
    if (jj_3R_26()) return true;
1732
    if (jj_3R_45()) return true;
1542
    return false;
1733
    return false;
1543
  }
1734
  }
1544
1735
1545
  final private boolean jj_3R_36() {
1736
  final private boolean jj_3R_59() {
1546
    if (jj_3R_43()) return true;
1737
    if (jj_3R_68()) return true;
1547
    return false;
1738
    return false;
1548
  }
1739
  }
1549
1740
1550
  final private boolean jj_3R_35() {
1741
  final private boolean jj_3R_17() {
1551
    if (jj_3R_42()) return true;
1742
    if (jj_scan_token(QUESTIONMARK)) return true;
1552
    return false;
1743
    return false;
1553
  }
1744
  }
1554
1745
1555
  final private boolean jj_3R_24() {
1746
  final private boolean jj_3R_40() {
1556
    if (jj_scan_token(EMPTY)) return true;
1747
    if (jj_scan_token(EMPTY)) return true;
1748
    if (jj_3R_34()) return true;
1557
    return false;
1749
    return false;
1558
  }
1750
  }
1559
1751
1560
  final private boolean jj_3R_34() {
1752
  final private boolean jj_3R_12() {
1561
    if (jj_3R_41()) return true;
1753
    if (jj_3R_13()) return true;
1754
    Token xsp;
1755
    while (true) {
1756
      xsp = jj_scanpos;
1757
      if (jj_3R_14()) { jj_scanpos = xsp; break; }
1758
    }
1562
    return false;
1759
    return false;
1563
  }
1760
  }
1564
1761
1565
  final private boolean jj_3R_33() {
1762
  final private boolean jj_3R_58() {
1566
    if (jj_3R_40()) return true;
1763
    if (jj_3R_67()) return true;
1567
    return false;
1764
    return false;
1568
  }
1765
  }
1569
1766
1570
  final private boolean jj_3R_23() {
1767
  final private boolean jj_3R_57() {
1768
    if (jj_3R_66()) return true;
1769
    return false;
1770
  }
1771
1772
  final private boolean jj_3R_39() {
1571
    Token xsp;
1773
    Token xsp;
1572
    xsp = jj_scanpos;
1774
    xsp = jj_scanpos;
1573
    if (jj_scan_token(37)) {
1775
    if (jj_scan_token(37)) {
1574
    jj_scanpos = xsp;
1776
    jj_scanpos = xsp;
1575
    if (jj_scan_token(38)) return true;
1777
    if (jj_scan_token(38)) return true;
1576
    }
1778
    }
1779
    if (jj_3R_34()) return true;
1577
    return false;
1780
    return false;
1578
  }
1781
  }
1579
1782
1580
  final private boolean jj_3R_12() {
1783
  final private boolean jj_3R_56() {
1581
    if (jj_3R_13()) return true;
1784
    if (jj_3R_65()) return true;
1582
    return false;
1785
    return false;
1583
  }
1786
  }
1584
1787
1585
  final private boolean jj_3R_22() {
1788
  final private boolean jj_3R_34() {
1586
    if (jj_scan_token(MINUS)) return true;
1587
    return false;
1588
  }
1589
1590
  final private boolean jj_3R_21() {
1591
    Token xsp;
1789
    Token xsp;
1592
    xsp = jj_scanpos;
1790
    xsp = jj_scanpos;
1593
    if (jj_3R_22()) {
1791
    if (jj_3R_38()) {
1594
    jj_scanpos = xsp;
1792
    jj_scanpos = xsp;
1595
    if (jj_3R_23()) {
1793
    if (jj_3R_39()) {
1596
    jj_scanpos = xsp;
1794
    jj_scanpos = xsp;
1597
    if (jj_3R_24()) {
1795
    if (jj_3R_40()) {
1598
    jj_scanpos = xsp;
1796
    jj_scanpos = xsp;
1599
    if (jj_3R_25()) return true;
1797
    if (jj_3R_41()) return true;
1600
    }
1798
    }
1601
    }
1799
    }
1602
    }
1800
    }
1603
    return false;
1801
    return false;
1604
  }
1802
  }
1605
1803
1606
  final private boolean jj_3R_30() {
1804
  final private boolean jj_3R_38() {
1805
    if (jj_scan_token(MINUS)) return true;
1806
    if (jj_3R_34()) return true;
1807
    return false;
1808
  }
1809
1810
  final private boolean jj_3R_55() {
1811
    if (jj_3R_64()) return true;
1812
    return false;
1813
  }
1814
1815
  final private boolean jj_3R_51() {
1607
    Token xsp;
1816
    Token xsp;
1608
    xsp = jj_scanpos;
1817
    xsp = jj_scanpos;
1609
    if (jj_3R_32()) {
1818
    if (jj_3R_55()) {
1610
    jj_scanpos = xsp;
1819
    jj_scanpos = xsp;
1611
    if (jj_3R_33()) {
1820
    if (jj_3R_56()) {
1612
    jj_scanpos = xsp;
1821
    jj_scanpos = xsp;
1613
    if (jj_3R_34()) {
1822
    if (jj_3R_57()) {
1614
    jj_scanpos = xsp;
1823
    jj_scanpos = xsp;
1615
    if (jj_3R_35()) {
1824
    if (jj_3R_58()) {
1616
    jj_scanpos = xsp;
1825
    jj_scanpos = xsp;
1617
    if (jj_3R_36()) return true;
1826
    if (jj_3R_59()) return true;
1618
    }
1827
    }
1619
    }
1828
    }
1620
    }
1829
    }
Lines 1622-1642 Link Here
1622
    return false;
1831
    return false;
1623
  }
1832
  }
1624
1833
1625
  final private boolean jj_3R_32() {
1834
  final private boolean jj_3R_15() {
1626
    if (jj_3R_39()) return true;
1835
    if (jj_3R_16()) return true;
1836
    Token xsp;
1837
    while (true) {
1838
      xsp = jj_scanpos;
1839
      if (jj_3R_17()) { jj_scanpos = xsp; break; }
1840
    }
1627
    return false;
1841
    return false;
1628
  }
1842
  }
1629
1843
1630
  final private boolean jj_3R_14() {
1844
  final private boolean jj_3R_44() {
1631
    if (jj_3R_15()) return true;
1845
    Token xsp;
1846
    xsp = jj_scanpos;
1847
    if (jj_scan_token(51)) {
1848
    jj_scanpos = xsp;
1849
    if (jj_scan_token(52)) return true;
1850
    }
1632
    return false;
1851
    return false;
1633
  }
1852
  }
1634
1853
1635
  final private boolean jj_3R_13() {
1854
  final private boolean jj_3R_13() {
1636
    if (jj_3R_14()) return true;
1855
    if (jj_3R_15()) return true;
1637
    return false;
1856
    return false;
1638
  }
1857
  }
1639
1858
1859
  final private boolean jj_3R_43() {
1860
    Token xsp;
1861
    xsp = jj_scanpos;
1862
    if (jj_scan_token(49)) {
1863
    jj_scanpos = xsp;
1864
    if (jj_scan_token(50)) return true;
1865
    }
1866
    return false;
1867
  }
1868
1869
  final private boolean jj_3R_35() {
1870
    Token xsp;
1871
    xsp = jj_scanpos;
1872
    if (jj_3R_42()) {
1873
    jj_scanpos = xsp;
1874
    if (jj_3R_43()) {
1875
    jj_scanpos = xsp;
1876
    if (jj_3R_44()) return true;
1877
    }
1878
    }
1879
    return false;
1880
  }
1881
1882
  final private boolean jj_3R_42() {
1883
    if (jj_scan_token(MULT)) return true;
1884
    return false;
1885
  }
1886
1640
  public ELParserTokenManager token_source;
1887
  public ELParserTokenManager token_source;
1641
  SimpleCharStream jj_input_stream;
1888
  SimpleCharStream jj_input_stream;
1642
  public Token token, jj_nt;
1889
  public Token token, jj_nt;
Lines 1646-1652 Link Here
1646
  public boolean lookingAhead = false;
1893
  public boolean lookingAhead = false;
1647
  private boolean jj_semLA;
1894
  private boolean jj_semLA;
1648
  private int jj_gen;
1895
  private int jj_gen;
1649
  final private int[] jj_la1 = new int[35];
1896
  final private int[] jj_la1 = new int[34];
1650
  static private int[] jj_la1_0;
1897
  static private int[] jj_la1_0;
1651
  static private int[] jj_la1_1;
1898
  static private int[] jj_la1_1;
1652
  static {
1899
  static {
Lines 1654-1663 Link Here
1654
      jj_la1_1();
1901
      jj_la1_1();
1655
   }
1902
   }
1656
   private static void jj_la1_0() {
1903
   private static void jj_la1_0() {
1657
      jj_la1_0 = new int[] {0xe,0xe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfe000000,0x18000000,0x6000000,0x80000000,0x60000000,0xfe000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x9d600,0x240000,0x9d600,0x240000,0x80000,0x0,0x0,0x1000000,0x9d600,0x1d600,0xc000,};
1904
      jj_la1_0 = new int[] {0xe,0xe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfe000000,0x18000000,0x6000000,0x80000000,0x60000000,0xfe000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x9d600,0x240000,0x9d600,0x240000,0x80000,0x0,0x1000000,0x9d600,0x1d600,0xc000,};
1658
   }
1905
   }
1659
   private static void jj_la1_1() {
1906
   private static void jj_la1_1() {
1660
      jj_la1_1 = new int[] {0x0,0x0,0x10000,0x600,0x600,0x180,0x180,0x1e,0x6,0x18,0x1e,0x1,0x0,0x0,0x1,0x0,0x1,0xc000,0xc000,0x1e2000,0x60000,0x180000,0x1e2000,0x60,0x608860,0x0,0x600000,0x0,0x0,0x200000,0x400000,0x0,0x608860,0x0,0x0,};
1907
      jj_la1_1 = new int[] {0x0,0x0,0x10000,0x600,0x600,0x180,0x180,0x1e,0x6,0x18,0x1e,0x1,0x0,0x0,0x1,0x0,0x1,0xc000,0xc000,0x1e2000,0x60000,0x180000,0x1e2000,0x60,0x1208860,0x0,0x1200000,0x0,0x0,0x200000,0x0,0x1208860,0x0,0x0,};
1661
   }
1908
   }
1662
  final private JJCalls[] jj_2_rtns = new JJCalls[1];
1909
  final private JJCalls[] jj_2_rtns = new JJCalls[1];
1663
  private boolean jj_rescan = false;
1910
  private boolean jj_rescan = false;
Lines 1672-1678 Link Here
1672
    token = new Token();
1919
    token = new Token();
1673
    jj_ntk = -1;
1920
    jj_ntk = -1;
1674
    jj_gen = 0;
1921
    jj_gen = 0;
1675
    for (int i = 0; i < 35; i++) jj_la1[i] = -1;
1922
    for (int i = 0; i < 34; i++) jj_la1[i] = -1;
1676
    for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
1923
    for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
1677
  }
1924
  }
1678
1925
Lines 1686-1692 Link Here
1686
    jj_ntk = -1;
1933
    jj_ntk = -1;
1687
    jjtree.reset();
1934
    jjtree.reset();
1688
    jj_gen = 0;
1935
    jj_gen = 0;
1689
    for (int i = 0; i < 35; i++) jj_la1[i] = -1;
1936
    for (int i = 0; i < 34; i++) jj_la1[i] = -1;
1690
    for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
1937
    for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
1691
  }
1938
  }
1692
1939
Lines 1696-1702 Link Here
1696
    token = new Token();
1943
    token = new Token();
1697
    jj_ntk = -1;
1944
    jj_ntk = -1;
1698
    jj_gen = 0;
1945
    jj_gen = 0;
1699
    for (int i = 0; i < 35; i++) jj_la1[i] = -1;
1946
    for (int i = 0; i < 34; i++) jj_la1[i] = -1;
1700
    for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
1947
    for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
1701
  }
1948
  }
1702
1949
Lines 1707-1713 Link Here
1707
    jj_ntk = -1;
1954
    jj_ntk = -1;
1708
    jjtree.reset();
1955
    jjtree.reset();
1709
    jj_gen = 0;
1956
    jj_gen = 0;
1710
    for (int i = 0; i < 35; i++) jj_la1[i] = -1;
1957
    for (int i = 0; i < 34; i++) jj_la1[i] = -1;
1711
    for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
1958
    for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
1712
  }
1959
  }
1713
1960
Lines 1716-1722 Link Here
1716
    token = new Token();
1963
    token = new Token();
1717
    jj_ntk = -1;
1964
    jj_ntk = -1;
1718
    jj_gen = 0;
1965
    jj_gen = 0;
1719
    for (int i = 0; i < 35; i++) jj_la1[i] = -1;
1966
    for (int i = 0; i < 34; i++) jj_la1[i] = -1;
1720
    for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
1967
    for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
1721
  }
1968
  }
1722
1969
Lines 1726-1732 Link Here
1726
    jj_ntk = -1;
1973
    jj_ntk = -1;
1727
    jjtree.reset();
1974
    jjtree.reset();
1728
    jj_gen = 0;
1975
    jj_gen = 0;
1729
    for (int i = 0; i < 35; i++) jj_la1[i] = -1;
1976
    for (int i = 0; i < 34; i++) jj_la1[i] = -1;
1730
    for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
1977
    for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
1731
  }
1978
  }
1732
1979
Lines 1837-1851 Link Here
1837
2084
1838
  public ParseException generateParseException() {
2085
  public ParseException generateParseException() {
1839
    jj_expentries.removeAllElements();
2086
    jj_expentries.removeAllElements();
1840
    boolean[] la1tokens = new boolean[60];
2087
    boolean[] la1tokens = new boolean[62];
1841
    for (int i = 0; i < 60; i++) {
2088
    for (int i = 0; i < 62; i++) {
1842
      la1tokens[i] = false;
2089
      la1tokens[i] = false;
1843
    }
2090
    }
1844
    if (jj_kind >= 0) {
2091
    if (jj_kind >= 0) {
1845
      la1tokens[jj_kind] = true;
2092
      la1tokens[jj_kind] = true;
1846
      jj_kind = -1;
2093
      jj_kind = -1;
1847
    }
2094
    }
1848
    for (int i = 0; i < 35; i++) {
2095
    for (int i = 0; i < 34; i++) {
1849
      if (jj_la1[i] == jj_gen) {
2096
      if (jj_la1[i] == jj_gen) {
1850
        for (int j = 0; j < 32; j++) {
2097
        for (int j = 0; j < 32; j++) {
1851
          if ((jj_la1_0[i] & (1<<j)) != 0) {
2098
          if ((jj_la1_0[i] & (1<<j)) != 0) {
Lines 1857-1863 Link Here
1857
        }
2104
        }
1858
      }
2105
      }
1859
    }
2106
    }
1860
    for (int i = 0; i < 60; i++) {
2107
    for (int i = 0; i < 62; i++) {
1861
      if (la1tokens[i]) {
2108
      if (la1tokens[i]) {
1862
        jj_expentry = new int[1];
2109
        jj_expentry = new int[1];
1863
        jj_expentry[0] = i;
2110
        jj_expentry[0] = i;
(-)ELParser.jjt (-204 / +205 lines)
Lines 5-13 Link Here
5
 * The ASF licenses this file to You under the Apache License, Version 2.0
5
 * The ASF licenses this file to You under the Apache License, Version 2.0
6
 * (the "License"); you may not use this file except in compliance with
6
 * (the "License"); you may not use this file except in compliance with
7
 * the License.  You may obtain a copy of the License at
7
 * the License.  You may obtain a copy of the License at
8
 * 
8
 *
9
 *      http://www.apache.org/licenses/LICENSE-2.0
9
 *      http://www.apache.org/licenses/LICENSE-2.0
10
 * 
10
 *
11
 * Unless required by applicable law or agreed to in writing, software
11
 * Unless required by applicable law or agreed to in writing, software
12
 * distributed under the License is distributed on an "AS IS" BASIS,
12
 * distributed under the License is distributed on an "AS IS" BASIS,
13
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
Lines 16-37 Link Here
16
 */
16
 */
17
17
18
/*
18
/*
19
	Author:	Jacob Hookom
19
       Author: Jacob Hookom
20
	Email:	jacob at hookom.net
20
       Email:  jacob at hookom.net
21
*/
21
*/
22
22
23
/* == Option Declaration == */
23
/* == Option Declaration == */
24
options
24
options
25
{
25
{
26
	STATIC=false;
26
       STATIC=false;
27
	NODE_PREFIX="Ast";
27
       NODE_PREFIX="Ast";
28
	VISITOR_EXCEPTION="javax.el.ELException";
28
       VISITOR_EXCEPTION="javax.el.ELException";
29
	VISITOR=false;
29
       VISITOR=false;
30
	MULTI=true;
30
       MULTI=true;
31
	NODE_DEFAULT_VOID=true;
31
       NODE_DEFAULT_VOID=true;
32
	JAVA_UNICODE_ESCAPE=false;
32
       JAVA_UNICODE_ESCAPE=false;
33
  	UNICODE_INPUT=true;
33
       UNICODE_INPUT=true;
34
	BUILD_NODE_FILES=true;
34
       BUILD_NODE_FILES=false;
35
}
35
}
36
36
37
/* == Parser Declaration == */
37
/* == Parser Declaration == */
Lines 41-54 Link Here
41
import javax.el.ELException;
41
import javax.el.ELException;
42
public class ELParser
42
public class ELParser
43
{
43
{
44
    public static Node parse(String ref) throws ELException
44
   public static Node parse(String ref) throws ELException
45
    {
45
   {
46
        try {
46
       try {
47
        	return (new ELParser(new StringReader(ref))).CompositeExpression();
47
               return (new ELParser(new StringReader(ref))).CompositeExpression();
48
        } catch (ParseException pe) {
48
       } catch (ParseException pe) {
49
           	throw new ELException(pe.getMessage());
49
               throw new ELException(pe.getMessage());
50
        }
50
       }
51
    }
51
   }
52
}
52
}
53
PARSER_END( ELParser )
53
PARSER_END( ELParser )
54
54
Lines 59-65 Link Here
59
 */
59
 */
60
AstCompositeExpression CompositeExpression() #CompositeExpression : {}
60
AstCompositeExpression CompositeExpression() #CompositeExpression : {}
61
{
61
{
62
	(DeferredExpression() | DynamicExpression() | LiteralExpression())* <EOF> { return jjtThis; }
62
       (DeferredExpression() | DynamicExpression() | LiteralExpression())* <EOF> { return jjtThis; }
63
}
63
}
64
64
65
/*
65
/*
Lines 68-74 Link Here
68
 */
68
 */
69
void LiteralExpression() #LiteralExpression : { Token t = null; }
69
void LiteralExpression() #LiteralExpression : { Token t = null; }
70
{
70
{
71
	t=<LITERAL_EXPRESSION> { jjtThis.setImage(t.image); }
71
       t=<LITERAL_EXPRESSION> { jjtThis.setImage(t.image); }
72
}
72
}
73
73
74
/*
74
/*
Lines 77-83 Link Here
77
 */
77
 */
78
void DeferredExpression() #DeferredExpression : {}
78
void DeferredExpression() #DeferredExpression : {}
79
{
79
{
80
	<START_DEFERRED_EXPRESSION> Expression() <END_EXPRESSION> 
80
       <START_DEFERRED_EXPRESSION> Expression() <END_EXPRESSION>
81
}
81
}
82
82
83
/*
83
/*
Lines 86-92 Link Here
86
 */
86
 */
87
void DynamicExpression() #DynamicExpression : {}
87
void DynamicExpression() #DynamicExpression : {}
88
{
88
{
89
	<START_DYNAMIC_EXPRESSION> Expression() <END_EXPRESSION> 
89
       <START_DYNAMIC_EXPRESSION> Expression() <END_EXPRESSION>
90
}
90
}
91
91
92
/*
92
/*
Lines 95-101 Link Here
95
 */
95
 */
96
void Expression() : {}
96
void Expression() : {}
97
{
97
{
98
	Choice()
98
       Choice()
99
}
99
}
100
100
101
/*
101
/*
Lines 104-110 Link Here
104
 */
104
 */
105
void Choice() : {}
105
void Choice() : {}
106
{
106
{
107
	Or() (<QUESTIONMARK> Or() <COLON> Choice() #Choice(3))*
107
       Or() (<QUESTIONMARK> Or() <COLON> Choice() #Choice(3))*
108
}
108
}
109
109
110
/*
110
/*
Lines 113-119 Link Here
113
 */
113
 */
114
void Or() : {}
114
void Or() : {}
115
{
115
{
116
	And() ((<OR0>|<OR1>) And() #Or(2))*
116
       And() ((<OR0>|<OR1>) And() #Or(2))*
117
}
117
}
118
118
119
/*
119
/*
Lines 122-128 Link Here
122
 */
122
 */
123
void And() : {}
123
void And() : {}
124
{
124
{
125
	Equality() ((<AND0>|<AND1>) Equality() #And(2))*
125
       Equality() ((<AND0>|<AND1>) Equality() #And(2))*
126
}
126
}
127
127
128
/*
128
/*
Lines 131-142 Link Here
131
 */
131
 */
132
void Equality() : {}
132
void Equality() : {}
133
{
133
{
134
	Compare()
134
       Compare()
135
	(
135
       (
136
		((<EQ0>|<EQ1>) Compare() #Equal(2))
136
               ((<EQ0>|<EQ1>) Compare() #Equal(2))
137
	|
137
       |
138
		((<NE0>|<NE1>) Compare() #NotEqual(2))
138
               ((<NE0>|<NE1>) Compare() #NotEqual(2))
139
	)*
139
       )*
140
}
140
}
141
141
142
/*
142
/*
Lines 145-160 Link Here
145
 */
145
 */
146
void Compare() : {}
146
void Compare() : {}
147
{
147
{
148
	Math()
148
       Math()
149
	(
149
       (
150
		((<LT0>|<LT1>) Math() #LessThan(2))
150
               ((<LT0>|<LT1>) Math() #LessThan(2))
151
	|
151
       |
152
		((<GT0>|<GT1>) Math() #GreaterThan(2))
152
               ((<GT0>|<GT1>) Math() #GreaterThan(2))
153
	|
153
       |
154
		((<LE0>|<LE1>) Math() #LessThanEqual(2))
154
               ((<LE0>|<LE1>) Math() #LessThanEqual(2))
155
	|
155
       |
156
		((<GE0>|<GE1>) Math() #GreaterThanEqual(2))
156
               ((<GE0>|<GE1>) Math() #GreaterThanEqual(2))
157
	)*
157
       )*
158
}
158
}
159
159
160
/*
160
/*
Lines 163-174 Link Here
163
 */
163
 */
164
void Math() : {}
164
void Math() : {}
165
{
165
{
166
	Multiplication()
166
       Multiplication()
167
	(
167
       (
168
		(<PLUS> Multiplication() #Plus(2))
168
               (<PLUS> Multiplication() #Plus(2))
169
	|
169
       |
170
		(<MINUS> Multiplication() #Minus(2))
170
               (<MINUS> Multiplication() #Minus(2))
171
	)*
171
       )*
172
}
172
}
173
173
174
/*
174
/*
Lines 177-190 Link Here
177
 */
177
 */
178
void Multiplication() : {}
178
void Multiplication() : {}
179
{
179
{
180
	Unary()
180
       Unary()
181
	(
181
       (
182
		(<MULT> Unary() #Mult(2))
182
               (<MULT> Unary() #Mult(2))
183
	|
183
       |
184
		((<DIV0>|<DIV1>) Unary() #Div(2))
184
               ((<DIV0>|<DIV1>) Unary() #Div(2))
185
	|
185
       |
186
		((<MOD0>|<MOD1>) Unary() #Mod(2))	
186
               ((<MOD0>|<MOD1>) Unary() #Mod(2))
187
	)*	
187
       )*
188
}
188
}
189
189
190
/*
190
/*
Lines 193-205 Link Here
193
 */
193
 */
194
void Unary() : {}
194
void Unary() : {}
195
{
195
{
196
		<MINUS> Unary() #Negative 
196
               <MINUS> Unary() #Negative
197
	|
197
       |
198
		(<NOT0>|<NOT1>) Unary() #Not 
198
               (<NOT0>|<NOT1>) Unary() #Not
199
	|
199
       |
200
		<EMPTY> Unary() #Empty
200
               <EMPTY> Unary() #Empty
201
	|	
201
       |
202
		Value()
202
               Value()
203
}
203
}
204
204
205
/*
205
/*
Lines 208-214 Link Here
208
 */
208
 */
209
void Value() : {}
209
void Value() : {}
210
{
210
{
211
	(ValuePrefix() (ValueSuffix())*) #Value(>1)
211
       (ValuePrefix() (ValueSuffix())*) #Value(>1)
212
}
212
}
213
213
214
/*
214
/*
Lines 217-224 Link Here
217
 */
217
 */
218
void ValuePrefix() : {}
218
void ValuePrefix() : {}
219
{
219
{
220
	Literal()
220
       Literal()
221
	| NonLiteral()
221
       | NonLiteral()
222
}
222
}
223
223
224
/*
224
/*
Lines 227-233 Link Here
227
 */
227
 */
228
void ValueSuffix() : {}
228
void ValueSuffix() : {}
229
{
229
{
230
	DotSuffix() | BracketSuffix()
230
       DotSuffix() | BracketSuffix()
231
}
231
}
232
232
233
/*
233
/*
Lines 236-242 Link Here
236
 */
236
 */
237
void DotSuffix() #DotSuffix : { Token t = null; }
237
void DotSuffix() #DotSuffix : { Token t = null; }
238
{
238
{
239
	<DOT> t=<IDENTIFIER> { jjtThis.setImage(t.image); }
239
       <DOT> t=<IDENTIFIER> { jjtThis.setImage(t.image); }
240
}
240
}
241
241
242
/*
242
/*
Lines 245-251 Link Here
245
 */
245
 */
246
void BracketSuffix() #BracketSuffix : {}
246
void BracketSuffix() #BracketSuffix : {}
247
{
247
{
248
	<LBRACK> Expression() <RBRACK>
248
       <LBRACK> Expression() <RBRACK>
249
}
249
}
250
250
251
/*
251
/*
Lines 254-262 Link Here
254
 */
254
 */
255
void NonLiteral() : {}
255
void NonLiteral() : {}
256
{
256
{
257
 	<LPAREN> Expression() <RPAREN>
257
       <LPAREN> Expression() <RPAREN>
258
 	| LOOKAHEAD(3) Function()
258
       | LOOKAHEAD(3) Function()
259
	| Identifier()
259
       | Identifier()
260
}
260
}
261
261
262
/*
262
/*
Lines 265-271 Link Here
265
 */
265
 */
266
void Identifier() #Identifier : { Token t = null; }
266
void Identifier() #Identifier : { Token t = null; }
267
{
267
{
268
	t=<IDENTIFIER> { jjtThis.setImage(t.image); }
268
       t=<IDENTIFIER> { jjtThis.setImage(t.image); }
269
}
269
}
270
270
271
/*
271
/*
Lines 274-293 Link Here
274
 */
274
 */
275
void Function() #Function :
275
void Function() #Function :
276
{
276
{
277
	Token t0 = null;
277
       Token tx = null;
278
	Token t1 = null;
279
}
278
}
280
{
279
{
281
	(t0=<NAMESPACE>)? t1=<IDENTIFIER>
280
       (tx=<FUNCTION_CALL> ) (Expression() (<COMMA> Expression())*)? <RPAREN>
282
	{
281
       {
283
		if (t0 != null) {
282
               if (tx.image.indexOf(":")!=-1) {
284
			jjtThis.setPrefix(t0.image.substring(0, t0.image.length() - 1));
283
                       jjtThis.setPrefix(tx.image.substring(0, tx.image.indexOf(":")));
285
			jjtThis.setLocalName(t1.image);
284
                       jjtThis.setLocalName(tx.image.substring(tx.image.indexOf(":") + 1, tx.image.length() - 1));
286
		} else {
285
               } else {
287
			jjtThis.setLocalName(t1.image);
286
                       jjtThis.setLocalName(tx.image.substring(0, tx.image.length() - 1));
288
		}
287
               }
289
	}
288
       }
290
	<LPAREN> (Expression() (<COMMA> Expression())*)? <RPAREN>
291
}
289
}
292
290
293
/*
291
/*
Lines 296-306 Link Here
296
 */
294
 */
297
void Literal() : {}
295
void Literal() : {}
298
{
296
{
299
	Boolean()
297
       Boolean()
300
	| FloatingPoint()
298
       | FloatingPoint()
301
	| Integer()
299
       | Integer()
302
	| String()
300
       | String()
303
	| Null()
301
       | Null()
304
}
302
}
305
303
306
/*
304
/*
Lines 309-316 Link Here
309
 */
307
 */
310
void Boolean() : {}
308
void Boolean() : {}
311
{
309
{
312
	<TRUE> #True
310
       <TRUE> #True
313
	| <FALSE> #False
311
       | <FALSE> #False
314
}
312
}
315
313
316
/*
314
/*
Lines 319-325 Link Here
319
 */
317
 */
320
void FloatingPoint() #FloatingPoint : { Token t = null; }
318
void FloatingPoint() #FloatingPoint : { Token t = null; }
321
{
319
{
322
	t=<FLOATING_POINT_LITERAL> { jjtThis.setImage(t.image); }
320
       t=<FLOATING_POINT_LITERAL> { jjtThis.setImage(t.image); }
323
}
321
}
324
322
325
/*
323
/*
Lines 328-334 Link Here
328
 */
326
 */
329
void Integer() #Integer : { Token t = null; }
327
void Integer() #Integer : { Token t = null; }
330
{
328
{
331
	t=<INTEGER_LITERAL> { jjtThis.setImage(t.image); }
329
       t=<INTEGER_LITERAL> { jjtThis.setImage(t.image); }
332
}
330
}
333
331
334
/*
332
/*
Lines 337-343 Link Here
337
 */
335
 */
338
void String() #String : { Token t = null; }
336
void String() #String : { Token t = null; }
339
{
337
{
340
	t=<STRING_LITERAL> { jjtThis.setImage(t.image); }
338
       t=<STRING_LITERAL> { jjtThis.setImage(t.image); }
341
}
339
}
342
340
343
/*
341
/*
Lines 346-371 Link Here
346
 */
344
 */
347
void Null() #Null : {}
345
void Null() #Null : {}
348
{
346
{
349
	<NULL>
347
       <NULL>
350
}
348
}
351
349
352
350
353
/* ==================================================================================== */
351
/* ==================================================================================== */
354
<DEFAULT> TOKEN :
352
<DEFAULT> TOKEN :
355
{
353
{
356
  < LITERAL_EXPRESSION:
354
 < LITERAL_EXPRESSION:
357
    ((~["\\", "$", "#"])
355
   ((~["\\", "$", "#"])
358
      | ("\\" ("\\" | "$" | "#"))
356
     | ("\\" ("\\" | "$" | "#"))
359
      | ("$" ~["{", "$"])
357
     | ("$" ~["{", "$"])
360
      | ("#" ~["{", "#"])
358
     | ("#" ~["{", "#"])
361
    )+
359
   )+
362
    | "$"
360
   | "$"
363
    | "#"
361
   | "#"
364
  >
362
 >
365
|
363
|
366
  < START_DYNAMIC_EXPRESSION: "${" > : IN_EXPRESSION
364
 < START_DYNAMIC_EXPRESSION: "${" > : IN_EXPRESSION
367
|
365
|
368
  < START_DEFERRED_EXPRESSION: "#{" > : IN_EXPRESSION
366
 < START_DEFERRED_EXPRESSION: "#{" > : IN_EXPRESSION
369
}
367
}
370
368
371
<DEFAULT> SKIP : { "\\" }
369
<DEFAULT> SKIP : { "\\" }
Lines 374-471 Link Here
374
372
375
<IN_EXPRESSION> TOKEN :
373
<IN_EXPRESSION> TOKEN :
376
{
374
{
377
	< INTEGER_LITERAL: ["0"-"9"] (["0"-"9"])* >
375
       < INTEGER_LITERAL: ["0"-"9"] (["0"-"9"])* >
378
|	< FLOATING_POINT_LITERAL: (["0"-"9"])+ "." (["0"-"9"])* (<EXPONENT>)? 
376
|       < FLOATING_POINT_LITERAL: (["0"-"9"])+ "." (["0"-"9"])* (<EXPONENT>)?
379
		| "." (["0"-"9"])+ (<EXPONENT>)?
377
               | "." (["0"-"9"])+ (<EXPONENT>)?
380
		| (["0"-"9"])+ <EXPONENT>
378
               | (["0"-"9"])+ <EXPONENT>
381
	>
379
       >
382
|	< #EXPONENT: ["e","E"] (["+","-"])? (["0"-"9"])+ >
380
|       < #EXPONENT: ["e","E"] (["+","-"])? (["0"-"9"])+ >
383
|	< STRING_LITERAL: ("\"" ((~["\"","\\"])
381
|       < STRING_LITERAL: ("\"" ((~["\"","\\"])
384
		| ("\\" ( ["\\","\""] )))* "\"")
382
               | ("\\" ( ["\\","\""] )))* "\"")
385
		| ("\'" ((~["\'","\\"])
383
               | ("\'" ((~["\'","\\"])
386
		| ("\\" ( ["\\","\'"] )))* "\'")
384
               | ("\\" ( ["\\","\'"] )))* "\'")
387
	>
385
       >
388
|	< BADLY_ESCAPED_STRING_LITERAL: ("\"" (~["\"","\\"])* ("\\" ( ~["\\","\""] )))
386
|       < BADLY_ESCAPED_STRING_LITERAL: ("\"" (~["\"","\\"])* ("\\" ( ~["\\","\""] )))
389
		| ("\'" (~["\'","\\"])* ("\\" ( ~["\\","\'"] )))
387
               | ("\'" (~["\'","\\"])* ("\\" ( ~["\\","\'"] )))
390
	>
388
       >
391
|	< TRUE : "true" >
389
|       < TRUE : "true" >
392
|	< FALSE : "false" >
390
|       < FALSE : "false" >
393
|	< NULL : "null" >
391
|       < NULL : "null" >
394
|	< END_EXPRESSION : "}" > : DEFAULT
392
|       < END_EXPRESSION : "}" > : DEFAULT
395
|	< DOT : "." >
393
|       < DOT : "." >
396
|	< LPAREN : "(" >
394
|       < LPAREN : "(" >
397
|	< RPAREN : ")" >
395
|       < RPAREN : ")" >
398
|	< LBRACK : "[" >
396
|       < LBRACK : "[" >
399
|	< RBRACK : "]" >
397
|       < RBRACK : "]" >
400
|	< COLON : ":" >
398
|       < COLON : ":" >
401
|	< COMMA : "," >
399
|       < COMMA : "," >
402
|	< GT0 : ">" >
400
|       < GT0 : ">" >
403
|	< GT1 : "gt" >
401
|       < GT1 : "gt" >
404
|	< LT0 : "<" >
402
|       < LT0 : "<" >
405
|	< LT1 : "lt" >
403
|       < LT1 : "lt" >
406
|	< GE0 : ">=" >
404
|       < GE0 : ">=" >
407
|	< GE1 : "ge" >
405
|       < GE1 : "ge" >
408
|	< LE0 : "<=" >
406
|       < LE0 : "<=" >
409
|	< LE1 : "le" >
407
|       < LE1 : "le" >
410
|	< EQ0 : "==" >
408
|       < EQ0 : "==" >
411
|	< EQ1 : "eq" >
409
|       < EQ1 : "eq" >
412
|	< NE0 : "!=" >
410
|       < NE0 : "!=" >
413
|	< NE1 : "ne" >
411
|       < NE1 : "ne" >
414
|	< NOT0 : "!" >
412
|       < NOT0 : "!" >
415
|	< NOT1 : "not" >
413
|       < NOT1 : "not" >
416
|	< AND0 : "&&" >
414
|       < AND0 : "&&" >
417
|	< AND1 : "and" >
415
|       < AND1 : "and" >
418
|	< OR0 : "||" >
416
|       < OR0 : "||" >
419
|	< OR1 : "or" >
417
|       < OR1 : "or" >
420
|	< EMPTY : "empty" >
418
|       < EMPTY : "empty" >
421
|	< INSTANCEOF : "instanceof" >
419
|       < INSTANCEOF : "instanceof" >
422
|	< MULT : "*" >
420
|       < MULT : "*" >
423
|	< PLUS : "+" >
421
|       < PLUS : "+" >
424
|	< MINUS : "-" >
422
|       < MINUS : "-" >
425
|	< QUESTIONMARK : "?" >
423
|       < QUESTIONMARK : "?" >
426
|	< DIV0 : "/" >
424
|       < DIV0 : "/" >
427
|	< DIV1 : "div" >
425
|       < DIV1 : "div" >
428
|	< MOD0 : "%" >
426
|       < MOD0 : "%" >
429
|	< MOD1 : "mod" >
427
|       < MOD1 : "mod" >
430
|	< IDENTIFIER : (<LETTER>|<IMPL_OBJ_START>) (<LETTER>|<DIGIT>)* >
428
|       < IDENTIFIER : (<LETTER>|<IMPL_OBJ_START>) (<LETTER>|<DIGIT>)* >
431
|   < NAMESPACE : (<IDENTIFIER> (<IDENTIFIER>|<MINUS>|<DOT>)* <COLON>) >
429
|   < #NAMESPACE : ( <NAMESPACE_NAME> <COLON>) >
432
|	< FUNCTIONSUFFIX : (<IDENTIFIER>) >
430
|   < #NAMESPACE_NAME: (<IDENTIFIER> (<LETTER>|<DIGIT>|<MINUS>|<DOT>)*) >
433
|	< #IMPL_OBJ_START: "#" >
431
|   < FUNCTION_CALL: (<NAMESPACE>)? <IDENTIFIER> <LPAREN> >
434
|	< #LETTER:
432
|       < FUNCTIONSUFFIX : (<IDENTIFIER>) >
435
		[
433
|       < #IMPL_OBJ_START: "#" >
436
		"\u0024",
434
|       < #LETTER:
437
		"\u0041"-"\u005a",
435
               [
438
		"\u005f",
436
               "\u0024",
439
		"\u0061"-"\u007a",
437
               "\u0041"-"\u005a",
440
		"\u00c0"-"\u00d6",
438
               "\u005f",
441
		"\u00d8"-"\u00f6",
439
               "\u0061"-"\u007a",
442
		"\u00f8"-"\u00ff",
440
               "\u00c0"-"\u00d6",
443
		"\u0100"-"\u1fff",
441
               "\u00d8"-"\u00f6",
444
		"\u3040"-"\u318f",
442
               "\u00f8"-"\u00ff",
445
		"\u3300"-"\u337f",
443
               "\u0100"-"\u1fff",
446
		"\u3400"-"\u3d2d",
444
               "\u3040"-"\u318f",
447
		"\u4e00"-"\u9fff",
445
               "\u3300"-"\u337f",
448
		"\uf900"-"\ufaff"
446
               "\u3400"-"\u3d2d",
449
		]
447
               "\u4e00"-"\u9fff",
450
	>
448
               "\uf900"-"\ufaff"
451
|	< #DIGIT:
449
               ]
452
		[
450
       >
453
		"\u0030"-"\u0039",
451
|       < #DIGIT:
454
		"\u0660"-"\u0669",
452
               [
455
		"\u06f0"-"\u06f9",
453
               "\u0030"-"\u0039",
456
		"\u0966"-"\u096f",
454
               "\u0660"-"\u0669",
457
		"\u09e6"-"\u09ef",
455
               "\u06f0"-"\u06f9",
458
		"\u0a66"-"\u0a6f",
456
               "\u0966"-"\u096f",
459
		"\u0ae6"-"\u0aef",
457
               "\u09e6"-"\u09ef",
460
		"\u0b66"-"\u0b6f",
458
               "\u0a66"-"\u0a6f",
461
		"\u0be7"-"\u0bef",
459
               "\u0ae6"-"\u0aef",
462
		"\u0c66"-"\u0c6f",
460
               "\u0b66"-"\u0b6f",
463
		"\u0ce6"-"\u0cef",
461
               "\u0be7"-"\u0bef",
464
		"\u0d66"-"\u0d6f",
462
               "\u0c66"-"\u0c6f",
465
		"\u0e50"-"\u0e59",
463
               "\u0ce6"-"\u0cef",
466
		"\u0ed0"-"\u0ed9",
464
               "\u0d66"-"\u0d6f",
467
		"\u1040"-"\u1049"
465
               "\u0e50"-"\u0e59",
468
		]
466
               "\u0ed0"-"\u0ed9",
469
	>
467
               "\u1040"-"\u1049"
470
|	< ILLEGAL_CHARACTER: (~[]) >
468
               ]
469
       >
470
|       < ILLEGAL_CHARACTER: (~[]) >
471
}
471
}
472
(-)ELParserTreeConstants.java (-1 / +1 lines)
Lines 1-4 Link Here
1
/* Generated By:JJTree: Do not edit this line. ./ELParserTreeConstants.java */
1
/* Generated By:JJTree: Do not edit this line. .\ELParserTreeConstants.java */
2
2
3
package org.apache.el.parser;
3
package org.apache.el.parser;
4
4

Return to bug 42565