-*-=-*-=-*-=-*-=-*- LALR PARSING TABLE -*-=-*-=-*-=-*-=-*- +------------------------- STATE 0 -------------------------+ + CONFLICTS: + RULES: $accept : ^Start $end + ACTIONS AND GOTOS: _DTP_LONG : shift & new state 12 _DTP_SDF : shift & new state 11 _DTP_MONTH : shift & new state 13 : error Start : goto state 1 DateTimeShortExpr : goto state 2 DateTimeLongExpr : goto state 3 SDFDateTimeExpr : goto state 4 DateShortExpr : goto state 5 DateLongExpr : goto state 6 MonthExpr : goto state 7 Number : goto state 9 AbsMonth : goto state 10 SDFNumber : goto state 8 +------------------------- STATE 1 -------------------------+ + CONFLICTS: + RULES: $accept : Start^$end + ACTIONS AND GOTOS: $end : accept : error +------------------------- STATE 2 -------------------------+ + CONFLICTS: + RULES: Start : DateTimeShortExpr^ (rule 1) + ACTIONS AND GOTOS: : reduce by rule 1 +------------------------- STATE 3 -------------------------+ + CONFLICTS: + RULES: Start : DateTimeLongExpr^ (rule 2) + ACTIONS AND GOTOS: : reduce by rule 2 +------------------------- STATE 4 -------------------------+ + CONFLICTS: + RULES: Start : SDFDateTimeExpr^EOS + ACTIONS AND GOTOS: _DTP_EOS : shift & new state 15 : error EOS : goto state 14 +------------------------- STATE 5 -------------------------+ + CONFLICTS: + RULES: Start : DateShortExpr^EOS DateTimeShortExpr : DateShortExpr^TimeExpr EOS DateTimeShortExpr : DateShortExpr^AMPMTimeExpr EOS + ACTIONS AND GOTOS: _DTP_LONG : shift & new state 12 _DTP_EOS : shift & new state 15 _DTP_AM : shift & new state 20 _DTP_PM : shift & new state 21 : error EOS : goto state 16 TimeExpr : goto state 17 AMPMTimeExpr : goto state 18 Number : goto state 19 +------------------------- STATE 6 -------------------------+ + CONFLICTS: + RULES: Start : DateLongExpr^EOS DateTimeLongExpr : DateLongExpr^TimeExpr EOS DateTimeLongExpr : DateLongExpr^AMPMTimeExpr EOS + ACTIONS AND GOTOS: _DTP_LONG : shift & new state 12 _DTP_EOS : shift & new state 15 _DTP_AM : shift & new state 20 _DTP_PM : shift & new state 21 : error EOS : goto state 22 TimeExpr : goto state 23 AMPMTimeExpr : goto state 24 Number : goto state 19 +------------------------- STATE 7 -------------------------+ + CONFLICTS: + RULES: Start : MonthExpr^EOS + ACTIONS AND GOTOS: _DTP_EOS : shift & new state 15 : error EOS : goto state 25 +------------------------- STATE 8 -------------------------+ + CONFLICTS: + RULES: SDFDateTimeExpr : SDFNumber^ (rule 23) + ACTIONS AND GOTOS: : reduce by rule 23 +------------------------- STATE 9 -------------------------+ + CONFLICTS: ? sft/red (shift & new state 12, rule 11) on _DTP_LONG + RULES: DateShortExpr : Number^ (rule 11) DateShortExpr : Number^Number DateShortExpr : Number^Number Number DateLongExpr : Number^AbsMonth DateLongExpr : Number^AbsMonth Number + ACTIONS AND GOTOS: _DTP_LONG : shift & new state 12 _DTP_MONTH : shift & new state 13 : reduce by rule 11 Number : goto state 26 AbsMonth : goto state 27 +------------------------- STATE 10 -------------------------+ + CONFLICTS: + RULES: MonthExpr : AbsMonth^ (rule 24) MonthExpr : AbsMonth^Number + ACTIONS AND GOTOS: _DTP_LONG : shift & new state 12 : reduce by rule 24 Number : goto state 28 +------------------------- STATE 11 -------------------------+ + CONFLICTS: + RULES: SDFNumber : _DTP_SDF^ (rule 27) + ACTIONS AND GOTOS: : reduce by rule 27 +------------------------- STATE 12 -------------------------+ + CONFLICTS: + RULES: Number : _DTP_LONG^ (rule 26) + ACTIONS AND GOTOS: : reduce by rule 26 +------------------------- STATE 13 -------------------------+ + CONFLICTS: + RULES: AbsMonth : _DTP_MONTH^ (rule 29) + ACTIONS AND GOTOS: : reduce by rule 29 +------------------------- STATE 14 -------------------------+ + CONFLICTS: + RULES: Start : SDFDateTimeExpr EOS^ (rule 3) + ACTIONS AND GOTOS: : reduce by rule 3 +------------------------- STATE 15 -------------------------+ + CONFLICTS: + RULES: EOS : _DTP_EOS^ (rule 28) + ACTIONS AND GOTOS: : reduce by rule 28 +------------------------- STATE 16 -------------------------+ + CONFLICTS: + RULES: Start : DateShortExpr EOS^ (rule 4) + ACTIONS AND GOTOS: : reduce by rule 4 +------------------------- STATE 17 -------------------------+ + CONFLICTS: + RULES: DateTimeShortExpr : DateShortExpr TimeExpr^EOS AMPMTimeExpr : TimeExpr^_DTP_AM AMPMTimeExpr : TimeExpr^_DTP_PM + ACTIONS AND GOTOS: _DTP_EOS : shift & new state 15 _DTP_AM : shift & new state 30 _DTP_PM : shift & new state 31 : error EOS : goto state 29 +------------------------- STATE 18 -------------------------+ + CONFLICTS: + RULES: DateTimeShortExpr : DateShortExpr AMPMTimeExpr^EOS + ACTIONS AND GOTOS: _DTP_EOS : shift & new state 15 : error EOS : goto state 32 +------------------------- STATE 19 -------------------------+ + CONFLICTS: + RULES: TimeExpr : Number^ (rule 16) TimeExpr : Number^Number TimeExpr : Number^Number Number + ACTIONS AND GOTOS: _DTP_LONG : shift & new state 12 : reduce by rule 16 Number : goto state 33 +------------------------- STATE 20 -------------------------+ + CONFLICTS: + RULES: AMPMTimeExpr : _DTP_AM^TimeExpr + ACTIONS AND GOTOS: _DTP_LONG : shift & new state 12 : error TimeExpr : goto state 34 Number : goto state 19 +------------------------- STATE 21 -------------------------+ + CONFLICTS: + RULES: AMPMTimeExpr : _DTP_PM^TimeExpr + ACTIONS AND GOTOS: _DTP_LONG : shift & new state 12 : error TimeExpr : goto state 35 Number : goto state 19 +------------------------- STATE 22 -------------------------+ + CONFLICTS: + RULES: Start : DateLongExpr EOS^ (rule 5) + ACTIONS AND GOTOS: : reduce by rule 5 +------------------------- STATE 23 -------------------------+ + CONFLICTS: + RULES: DateTimeLongExpr : DateLongExpr TimeExpr^EOS AMPMTimeExpr : TimeExpr^_DTP_AM AMPMTimeExpr : TimeExpr^_DTP_PM + ACTIONS AND GOTOS: _DTP_EOS : shift & new state 15 _DTP_AM : shift & new state 30 _DTP_PM : shift & new state 31 : error EOS : goto state 36 +------------------------- STATE 24 -------------------------+ + CONFLICTS: + RULES: DateTimeLongExpr : DateLongExpr AMPMTimeExpr^EOS + ACTIONS AND GOTOS: _DTP_EOS : shift & new state 15 : error EOS : goto state 37 +------------------------- STATE 25 -------------------------+ + CONFLICTS: + RULES: Start : MonthExpr EOS^ (rule 6) + ACTIONS AND GOTOS: : reduce by rule 6 +------------------------- STATE 26 -------------------------+ + CONFLICTS: ? sft/red (shift & new state 12, rule 12) on _DTP_LONG + RULES: DateShortExpr : Number Number^ (rule 12) DateShortExpr : Number Number^Number + ACTIONS AND GOTOS: _DTP_LONG : shift & new state 12 : reduce by rule 12 Number : goto state 38 +------------------------- STATE 27 -------------------------+ + CONFLICTS: ? sft/red (shift & new state 12, rule 14) on _DTP_LONG + RULES: DateLongExpr : Number AbsMonth^ (rule 14) DateLongExpr : Number AbsMonth^Number + ACTIONS AND GOTOS: _DTP_LONG : shift & new state 12 : reduce by rule 14 Number : goto state 39 +------------------------- STATE 28 -------------------------+ + CONFLICTS: + RULES: MonthExpr : AbsMonth Number^ (rule 25) + ACTIONS AND GOTOS: : reduce by rule 25 +------------------------- STATE 29 -------------------------+ + CONFLICTS: + RULES: DateTimeShortExpr : DateShortExpr TimeExpr EOS^ (rule 7) + ACTIONS AND GOTOS: : reduce by rule 7 +------------------------- STATE 30 -------------------------+ + CONFLICTS: + RULES: AMPMTimeExpr : TimeExpr _DTP_AM^ (rule 19) + ACTIONS AND GOTOS: : reduce by rule 19 +------------------------- STATE 31 -------------------------+ + CONFLICTS: + RULES: AMPMTimeExpr : TimeExpr _DTP_PM^ (rule 20) + ACTIONS AND GOTOS: : reduce by rule 20 +------------------------- STATE 32 -------------------------+ + CONFLICTS: + RULES: DateTimeShortExpr : DateShortExpr AMPMTimeExpr EOS^ (rule 8) + ACTIONS AND GOTOS: : reduce by rule 8 +------------------------- STATE 33 -------------------------+ + CONFLICTS: + RULES: TimeExpr : Number Number^ (rule 17) TimeExpr : Number Number^Number + ACTIONS AND GOTOS: _DTP_LONG : shift & new state 12 : reduce by rule 17 Number : goto state 40 +------------------------- STATE 34 -------------------------+ + CONFLICTS: + RULES: AMPMTimeExpr : _DTP_AM TimeExpr^ (rule 21) + ACTIONS AND GOTOS: : reduce by rule 21 +------------------------- STATE 35 -------------------------+ + CONFLICTS: + RULES: AMPMTimeExpr : _DTP_PM TimeExpr^ (rule 22) + ACTIONS AND GOTOS: : reduce by rule 22 +------------------------- STATE 36 -------------------------+ + CONFLICTS: + RULES: DateTimeLongExpr : DateLongExpr TimeExpr EOS^ (rule 9) + ACTIONS AND GOTOS: : reduce by rule 9 +------------------------- STATE 37 -------------------------+ + CONFLICTS: + RULES: DateTimeLongExpr : DateLongExpr AMPMTimeExpr EOS^ (rule 10) + ACTIONS AND GOTOS: : reduce by rule 10 +------------------------- STATE 38 -------------------------+ + CONFLICTS: + RULES: DateShortExpr : Number Number Number^ (rule 13) + ACTIONS AND GOTOS: : reduce by rule 13 +------------------------- STATE 39 -------------------------+ + CONFLICTS: + RULES: DateLongExpr : Number AbsMonth Number^ (rule 15) + ACTIONS AND GOTOS: : reduce by rule 15 +------------------------- STATE 40 -------------------------+ + CONFLICTS: + RULES: TimeExpr : Number Number Number^ (rule 18) + ACTIONS AND GOTOS: : reduce by rule 18 ==================== SUMMARY ==================== grammar description file = datetimeparser.y number of terminals used = 12; limit = 4096 number of nonterminals = 13; limit = 3072 number of grammar rules = 30; limit = 4096 number of states = 41; limit = 8192 number of s/r errors = 3 number of r/r errors = 0 number of working set = 22; limit = 4096 memory for rules & stats = 235; limit = 1024000 memory for actions = 34; limit = 512000 number of lookahead sets = 12; limit = 8192 number of extra closures = 0 number of shift entries = 30 number of exception ents = 1 number of goto entries = 32 number of goto defaults = 3 optimization input = 113; limit = 1024000 optimization output = 51; limit = 512000 number of table entries = 51; zeros = 5 maximum spread = 262; offst = 259 -*-=-*-=-*-=-*-=-*- END OF TABLE -*-=-*-=-*-=-*-=-*-