View difference between Paste ID: b5qRMQD6 and 893MKQPm
SHOW: | | - or go back to the newest paste.
1
2
3
-*-=-*-=-*-=-*-=-*-      LALR PARSING TABLE      -*-=-*-=-*-=-*-=-*-
4
5
6
+-------------------------     STATE 0     -------------------------+
7
8
+ CONFLICTS:
9
10
11
+ RULES:
12
13
        $accept : ^Start $end 
14
15
+ ACTIONS AND GOTOS:
16
17-
      _DTP_LONG : shift & new state 9
17+
      _DTP_LONG : shift & new state 12
18-
     _DTP_MONTH : shift & new state 10
18+
       _DTP_SDF : shift & new state 11
19
     _DTP_MONTH : shift & new state 13
20
                : error
21
22
          Start : goto state 1
23
DateTimeShortExpr : goto state 2
24-
  DateShortExpr : goto state 4
24+
25-
   DateLongExpr : goto state 5
25+
SDFDateTimeExpr : goto state 4
26-
      MonthExpr : goto state 6
26+
  DateShortExpr : goto state 5
27-
         Number : goto state 7
27+
   DateLongExpr : goto state 6
28-
       AbsMonth : goto state 8
28+
      MonthExpr : goto state 7
29
         Number : goto state 9
30
       AbsMonth : goto state 10
31
      SDFNumber : goto state 8
32
33
+-------------------------     STATE 1     -------------------------+
34
35
+ CONFLICTS:
36
37
38
+ RULES:
39
40
        $accept :  Start^$end 
41
42
+ ACTIONS AND GOTOS:
43
44
           $end : accept
45
                : error
46
47
48
+-------------------------     STATE 2     -------------------------+
49
50
+ CONFLICTS:
51
52
53
+ RULES:
54
55
          Start :  DateTimeShortExpr^    (rule 1)
56
57
+ ACTIONS AND GOTOS:
58
59
                : reduce by rule 1
60
61
62
+-------------------------     STATE 3     -------------------------+
63
64
+ CONFLICTS:
65
66
67
+ RULES:
68
69
          Start :  DateTimeLongExpr^    (rule 2)
70
71
+ ACTIONS AND GOTOS:
72
73
                : reduce by rule 2
74
75
76
+-------------------------     STATE 4     -------------------------+
77
78
+ CONFLICTS:
79
80
81
+ RULES:
82
83
          Start :  SDFDateTimeExpr^EOS 
84
85
+ ACTIONS AND GOTOS:
86-
      _DTP_LONG : shift & new state 9
86+
87-
       _DTP_EOS : shift & new state 14
87+
       _DTP_EOS : shift & new state 15
88-
        _DTP_AM : shift & new state 16
88+
89-
        _DTP_PM : shift & new state 17
89+
90
            EOS : goto state 14
91
92-
            EOS : goto state 11
92+
93-
       TimeExpr : goto state 12
93+
94-
   AMPMTimeExpr : goto state 13
94+
95-
         Number : goto state 15
95+
96
97
+ RULES:
98
99
          Start :  DateShortExpr^EOS 
100
DateTimeShortExpr :  DateShortExpr^TimeExpr EOS 
101
DateTimeShortExpr :  DateShortExpr^AMPMTimeExpr EOS 
102
103
+ ACTIONS AND GOTOS:
104
105
      _DTP_LONG : shift & new state 12
106
       _DTP_EOS : shift & new state 15
107
        _DTP_AM : shift & new state 20
108
        _DTP_PM : shift & new state 21
109
                : error
110-
      _DTP_LONG : shift & new state 9
110+
111-
       _DTP_EOS : shift & new state 14
111+
            EOS : goto state 16
112-
        _DTP_AM : shift & new state 16
112+
       TimeExpr : goto state 17
113-
        _DTP_PM : shift & new state 17
113+
   AMPMTimeExpr : goto state 18
114
         Number : goto state 19
115
116-
            EOS : goto state 18
116+
117-
       TimeExpr : goto state 19
117+
118-
   AMPMTimeExpr : goto state 20
118+
119-
         Number : goto state 15
119+
120
121
+ RULES:
122
123
          Start :  DateLongExpr^EOS 
124
DateTimeLongExpr :  DateLongExpr^TimeExpr EOS 
125
DateTimeLongExpr :  DateLongExpr^AMPMTimeExpr EOS 
126
127
+ ACTIONS AND GOTOS:
128
129
      _DTP_LONG : shift & new state 12
130
       _DTP_EOS : shift & new state 15
131
        _DTP_AM : shift & new state 20
132-
       _DTP_EOS : shift & new state 14
132+
        _DTP_PM : shift & new state 21
133
                : error
134
135-
            EOS : goto state 21
135+
            EOS : goto state 22
136
       TimeExpr : goto state 23
137
   AMPMTimeExpr : goto state 24
138
         Number : goto state 19
139
140
+-------------------------     STATE 7     -------------------------+
141-
? sft/red (shift & new state 9, rule 10) on _DTP_LONG
141+
142
+ CONFLICTS:
143
144
145-
  DateShortExpr :  Number^    (rule 10)
145+
146
147
          Start :  MonthExpr^EOS 
148
149
+ ACTIONS AND GOTOS:
150
151
       _DTP_EOS : shift & new state 15
152
                : error
153-
      _DTP_LONG : shift & new state 9
153+
154-
     _DTP_MONTH : shift & new state 10
154+
155
156
+-------------------------     STATE 8     -------------------------+
157-
         Number : goto state 22
157+
158-
       AbsMonth : goto state 23
158+
159
160
161
+ RULES:
162
163
SDFDateTimeExpr :  SDFNumber^    (rule 23)
164
165
+ ACTIONS AND GOTOS:
166
167-
      MonthExpr :  AbsMonth^    (rule 23)
167+
168
169
170
+-------------------------     STATE 9     -------------------------+
171
172-
      _DTP_LONG : shift & new state 9
172+
173
174
? sft/red (shift & new state 12, rule 11) on _DTP_LONG
175-
         Number : goto state 24
175+
176
+ RULES:
177
178
  DateShortExpr :  Number^    (rule 11)
179
  DateShortExpr :  Number^Number 
180
  DateShortExpr :  Number^Number Number 
181
   DateLongExpr :  Number^AbsMonth 
182
   DateLongExpr :  Number^AbsMonth Number 
183
184-
         Number :  _DTP_LONG^    (rule 25)
184+
185
186
      _DTP_LONG : shift & new state 12
187
     _DTP_MONTH : shift & new state 13
188
                : reduce by rule 11
189
190
         Number : goto state 26
191
       AbsMonth : goto state 27
192
193
+-------------------------     STATE 10     -------------------------+
194
195
+ CONFLICTS:
196
197
198-
       AbsMonth :  _DTP_MONTH^    (rule 28)
198+
199
200
      MonthExpr :  AbsMonth^    (rule 24)
201
      MonthExpr :  AbsMonth^Number 
202
203
+ ACTIONS AND GOTOS:
204
205
      _DTP_LONG : shift & new state 12
206
                : reduce by rule 24
207
208
         Number : goto state 28
209
210
+-------------------------     STATE 11     -------------------------+
211
212-
          Start :  DateShortExpr EOS^    (rule 3)
212+
213
214
215
+ RULES:
216
217
      SDFNumber :  _DTP_SDF^    (rule 27)
218
219
+ ACTIONS AND GOTOS:
220
221
                : reduce by rule 27
222
223
224
+-------------------------     STATE 12     -------------------------+
225
226
+ CONFLICTS:
227
228
229
+ RULES:
230
231
         Number :  _DTP_LONG^    (rule 26)
232-
       _DTP_EOS : shift & new state 14
232+
233-
        _DTP_AM : shift & new state 26
233+
234-
        _DTP_PM : shift & new state 27
234+
235
                : reduce by rule 26
236
237
238
+-------------------------     STATE 13     -------------------------+
239
240
+ CONFLICTS:
241
242
243
+ RULES:
244
245
       AbsMonth :  _DTP_MONTH^    (rule 29)
246
247
+ ACTIONS AND GOTOS:
248
249
                : reduce by rule 29
250-
       _DTP_EOS : shift & new state 14
250+
251
252
+-------------------------     STATE 14     -------------------------+
253-
            EOS : goto state 28
253+
254
+ CONFLICTS:
255
256
257
+ RULES:
258
259
          Start :  SDFDateTimeExpr EOS^    (rule 3)
260
261
+ ACTIONS AND GOTOS:
262-
            EOS :  _DTP_EOS^    (rule 27)
262+
263
                : reduce by rule 3
264
265
266
+-------------------------     STATE 15     -------------------------+
267
268
+ CONFLICTS:
269
270
271
+ RULES:
272
273
            EOS :  _DTP_EOS^    (rule 28)
274
275
+ ACTIONS AND GOTOS:
276-
       TimeExpr :  Number^    (rule 15)
276+
277
                : reduce by rule 28
278
279
280
+-------------------------     STATE 16     -------------------------+
281
282-
      _DTP_LONG : shift & new state 9
282+
283
284
285-
         Number : goto state 29
285+
286
287
          Start :  DateShortExpr EOS^    (rule 4)
288
289
+ ACTIONS AND GOTOS:
290
291
                : reduce by rule 4
292
293
294
+-------------------------     STATE 17     -------------------------+
295
296
+ CONFLICTS:
297
298-
      _DTP_LONG : shift & new state 9
298+
299
+ RULES:
300
301-
       TimeExpr : goto state 30
301+
302-
         Number : goto state 15
302+
303
   AMPMTimeExpr :  TimeExpr^_DTP_PM 
304
305
+ ACTIONS AND GOTOS:
306
307
       _DTP_EOS : shift & new state 15
308
        _DTP_AM : shift & new state 30
309
        _DTP_PM : shift & new state 31
310
                : error
311
312
            EOS : goto state 29
313
314
+-------------------------     STATE 18     -------------------------+
315-
      _DTP_LONG : shift & new state 9
315+
316
+ CONFLICTS:
317
318-
       TimeExpr : goto state 31
318+
319-
         Number : goto state 15
319+
320
321
DateTimeShortExpr :  DateShortExpr AMPMTimeExpr^EOS 
322
323
+ ACTIONS AND GOTOS:
324
325
       _DTP_EOS : shift & new state 15
326
                : error
327
328-
          Start :  DateLongExpr EOS^    (rule 4)
328+
329
330
+-------------------------     STATE 19     -------------------------+
331
332
+ CONFLICTS:
333
334
335
+ RULES:
336
337
       TimeExpr :  Number^    (rule 16)
338
       TimeExpr :  Number^Number 
339
       TimeExpr :  Number^Number Number 
340
341
+ ACTIONS AND GOTOS:
342
343
      _DTP_LONG : shift & new state 12
344
                : reduce by rule 16
345
346
         Number : goto state 33
347
348-
       _DTP_EOS : shift & new state 14
348+
349-
        _DTP_AM : shift & new state 26
349+
350-
        _DTP_PM : shift & new state 27
350+
351
352
353
+ RULES:
354
355
   AMPMTimeExpr :  _DTP_AM^TimeExpr 
356
357
+ ACTIONS AND GOTOS:
358
359
      _DTP_LONG : shift & new state 12
360
                : error
361
362
       TimeExpr : goto state 34
363
         Number : goto state 19
364
365
+-------------------------     STATE 21     -------------------------+
366-
       _DTP_EOS : shift & new state 14
366+
367
+ CONFLICTS:
368
369-
            EOS : goto state 33
369+
370
+ RULES:
371
372
   AMPMTimeExpr :  _DTP_PM^TimeExpr 
373
374
+ ACTIONS AND GOTOS:
375
376
      _DTP_LONG : shift & new state 12
377
                : error
378-
          Start :  MonthExpr EOS^    (rule 5)
378+
379
       TimeExpr : goto state 35
380
         Number : goto state 19
381
382
+-------------------------     STATE 22     -------------------------+
383
384
+ CONFLICTS:
385
386
387
+ RULES:
388
389-
? sft/red (shift & new state 9, rule 11) on _DTP_LONG
389+
          Start :  DateLongExpr EOS^    (rule 5)
390
391
+ ACTIONS AND GOTOS:
392
393-
  DateShortExpr :  Number Number^    (rule 11)
393+
394
395
396
+-------------------------     STATE 23     -------------------------+
397
398-
      _DTP_LONG : shift & new state 9
398+
399
400
401-
         Number : goto state 34
401+
402
403
DateTimeLongExpr :  DateLongExpr TimeExpr^EOS 
404
   AMPMTimeExpr :  TimeExpr^_DTP_AM 
405
   AMPMTimeExpr :  TimeExpr^_DTP_PM 
406
407-
? sft/red (shift & new state 9, rule 13) on _DTP_LONG
407+
408
409
       _DTP_EOS : shift & new state 15
410
        _DTP_AM : shift & new state 30
411-
   DateLongExpr :  Number AbsMonth^    (rule 13)
411+
        _DTP_PM : shift & new state 31
412
                : error
413
414
            EOS : goto state 36
415
416-
      _DTP_LONG : shift & new state 9
416+
417
418
+ CONFLICTS:
419-
         Number : goto state 35
419+
420
421
+ RULES:
422
423
DateTimeLongExpr :  DateLongExpr AMPMTimeExpr^EOS 
424
425
+ ACTIONS AND GOTOS:
426
427
       _DTP_EOS : shift & new state 15
428-
      MonthExpr :  AbsMonth Number^    (rule 24)
428+
429
430
            EOS : goto state 37
431
432
+-------------------------     STATE 25     -------------------------+
433
434
+ CONFLICTS:
435
436
437
+ RULES:
438
439
          Start :  MonthExpr EOS^    (rule 6)
440
441
+ ACTIONS AND GOTOS:
442-
DateTimeShortExpr :  DateShortExpr TimeExpr EOS^    (rule 6)
442+
443
                : reduce by rule 6
444
445
446
+-------------------------     STATE 26     -------------------------+
447
448
+ CONFLICTS:
449
450
? sft/red (shift & new state 12, rule 12) on _DTP_LONG
451
452
+ RULES:
453
454
  DateShortExpr :  Number Number^    (rule 12)
455
  DateShortExpr :  Number Number^Number 
456-
   AMPMTimeExpr :  TimeExpr _DTP_AM^    (rule 18)
456+
457
+ ACTIONS AND GOTOS:
458
459
      _DTP_LONG : shift & new state 12
460
                : reduce by rule 12
461
462
         Number : goto state 38
463
464
+-------------------------     STATE 27     -------------------------+
465
466
+ CONFLICTS:
467
468
? sft/red (shift & new state 12, rule 14) on _DTP_LONG
469
470-
   AMPMTimeExpr :  TimeExpr _DTP_PM^    (rule 19)
470+
471
472
   DateLongExpr :  Number AbsMonth^    (rule 14)
473
   DateLongExpr :  Number AbsMonth^Number 
474
475
+ ACTIONS AND GOTOS:
476
477
      _DTP_LONG : shift & new state 12
478
                : reduce by rule 14
479
480
         Number : goto state 39
481
482
+-------------------------     STATE 28     -------------------------+
483
484-
DateTimeShortExpr :  DateShortExpr AMPMTimeExpr EOS^    (rule 7)
484+
485
486
487
+ RULES:
488
489
      MonthExpr :  AbsMonth Number^    (rule 25)
490
491
+ ACTIONS AND GOTOS:
492
493
                : reduce by rule 25
494
495
496
+-------------------------     STATE 29     -------------------------+
497
498-
       TimeExpr :  Number Number^    (rule 16)
498+
499
500
501
+ RULES:
502
503-
      _DTP_LONG : shift & new state 9
503+
DateTimeShortExpr :  DateShortExpr TimeExpr EOS^    (rule 7)
504
505
+ ACTIONS AND GOTOS:
506-
         Number : goto state 36
506+
507
                : reduce by rule 7
508
509
510
+-------------------------     STATE 30     -------------------------+
511
512
+ CONFLICTS:
513
514
515-
   AMPMTimeExpr :  _DTP_AM TimeExpr^    (rule 20)
515+
516
517
   AMPMTimeExpr :  TimeExpr _DTP_AM^    (rule 19)
518
519
+ ACTIONS AND GOTOS:
520
521
                : reduce by rule 19
522
523
524
+-------------------------     STATE 31     -------------------------+
525
526
+ CONFLICTS:
527
528
529-
   AMPMTimeExpr :  _DTP_PM TimeExpr^    (rule 21)
529+
530
531
   AMPMTimeExpr :  TimeExpr _DTP_PM^    (rule 20)
532
533
+ ACTIONS AND GOTOS:
534
535
                : reduce by rule 20
536
537
538
+-------------------------     STATE 32     -------------------------+
539
540
+ CONFLICTS:
541
542
543-
DateTimeLongExpr :  DateLongExpr TimeExpr EOS^    (rule 8)
543+
544
545
DateTimeShortExpr :  DateShortExpr AMPMTimeExpr EOS^    (rule 8)
546
547
+ ACTIONS AND GOTOS:
548
549
                : reduce by rule 8
550
551
552
+-------------------------     STATE 33     -------------------------+
553
554
+ CONFLICTS:
555
556
557-
DateTimeLongExpr :  DateLongExpr AMPMTimeExpr EOS^    (rule 9)
557+
558
559
       TimeExpr :  Number Number^    (rule 17)
560
       TimeExpr :  Number Number^Number 
561
562
+ ACTIONS AND GOTOS:
563
564
      _DTP_LONG : shift & new state 12
565
                : reduce by rule 17
566
567
         Number : goto state 40
568
569
+-------------------------     STATE 34     -------------------------+
570
571-
  DateShortExpr :  Number Number Number^    (rule 12)
571+
572
573
574
+ RULES:
575
576
   AMPMTimeExpr :  _DTP_AM TimeExpr^    (rule 21)
577
578
+ ACTIONS AND GOTOS:
579
580
                : reduce by rule 21
581
582
583
+-------------------------     STATE 35     -------------------------+
584
585-
   DateLongExpr :  Number AbsMonth Number^    (rule 14)
585+
586
587
588
+ RULES:
589
590
   AMPMTimeExpr :  _DTP_PM TimeExpr^    (rule 22)
591
592
+ ACTIONS AND GOTOS:
593
594
                : reduce by rule 22
595
596
597
+-------------------------     STATE 36     -------------------------+
598
599-
       TimeExpr :  Number Number Number^    (rule 17)
599+
600
601
602
+ RULES:
603
604
DateTimeLongExpr :  DateLongExpr TimeExpr EOS^    (rule 9)
605-
never reduced rule:   SDFDateTimeExpr :  SDFNumber 
605+
606-
never reduced rule:         SDFNumber :  _DTP_SDF 
606+
607
608
                : reduce by rule 9
609
610
611
+-------------------------     STATE 37     -------------------------+
612
613-
number of grammar rules  =     29; limit =   4096
613+
614-
number of states         =     37; limit =   8192
614+
615
616
+ RULES:
617-
number of working set    =     19; limit =   4096
617+
618-
memory for rules & stats =    223; limit = 1024000
618+
DateTimeLongExpr :  DateLongExpr AMPMTimeExpr EOS^    (rule 10)
619-
memory for actions       =     31; limit = 512000
619+
620
+ ACTIONS AND GOTOS:
621
622-
number of shift entries  =     28
622+
623
624-
number of goto entries   =     31
624+
625-
number of goto defaults  =      1
625+
+-------------------------     STATE 38     -------------------------+
626-
optimization input       =    107; limit = 1024000
626+
627-
optimization output      =     42; limit = 512000
627+
628-
number of table entries  =     42; zeros =      0
628+
629
630
+ RULES:
631
632
  DateShortExpr :  Number Number Number^    (rule 13)
633
634
+ ACTIONS AND GOTOS:
635
636
                : reduce by rule 13
637
638
639
+-------------------------     STATE 39     -------------------------+
640
641
+ CONFLICTS:
642
643
644
+ RULES:
645
646
   DateLongExpr :  Number AbsMonth Number^    (rule 15)
647
648
+ ACTIONS AND GOTOS:
649
650
                : reduce by rule 15
651
652
653
+-------------------------     STATE 40     -------------------------+
654
655
+ CONFLICTS:
656
657
658
+ RULES:
659
660
       TimeExpr :  Number Number Number^    (rule 18)
661
662
+ ACTIONS AND GOTOS:
663
664
                : reduce by rule 18
665
666
667
====================      SUMMARY      ====================
668
669
grammar description file = datetimeparser.y
670
number of terminals used =     12; limit =   4096
671
number of nonterminals   =     13; limit =   3072
672
number of grammar rules  =     30; limit =   4096
673
number of states         =     41; limit =   8192
674
number of s/r errors     =      3
675
number of r/r errors     =      0
676
number of working set    =     22; limit =   4096
677
memory for rules & stats =    235; limit = 1024000
678
memory for actions       =     34; limit = 512000
679
number of lookahead sets =     12; limit =   8192
680
number of extra closures =      0
681
number of shift entries  =     30
682
number of exception ents =      1
683
number of goto entries   =     32
684
number of goto defaults  =      3
685
optimization input       =    113; limit = 1024000
686
optimization output      =     51; limit = 512000
687
number of table entries  =     51; zeros =      5
688
maximum spread           =    262; offst =    259
689
690
691
-*-=-*-=-*-=-*-=-*-         END OF TABLE         -*-=-*-=-*-=-*-=-*-