Generated machine for ParserJACC

// Output created by jacc on Mon Jan 11 11:26:12 BRST 2016


state 0 (entry on s) $accept : _s $end ID shift 4 IF shift 5 READ shift 6 REPEAT shift 7 WRITE shift 8 . error s goto 1 cmds goto 2 cmd goto 3
state 1 (entry on s) $accept : s_$end $end accept . error
state 2 (entry on cmds) s : cmds_ (1) cmds : cmds_';' cmd (2) ';' shift 9 $end reduce 1 . error
state 3 (entry on cmd) cmds : cmd_ (3) END reduce 3 $end reduce 3 UNTIL reduce 3 ';' reduce 3 ELSE reduce 3 . error
state 4 (entry on ID) cmd : ID_ATTRIB exp (7) ATTRIB shift 10 . error
state 5 (entry on IF) cmd : IF_exp THEN cmds END (4) cmd : IF_exp THEN cmds ELSE cmds END (5) ID shift 12 NUM shift 13 '(' shift 14 . error exp goto 11
state 6 (entry on READ) cmd : READ_ID (9) ID shift 15 . error
state 7 (entry on REPEAT) cmd : REPEAT_cmds UNTIL exp (6) ID shift 4 IF shift 5 READ shift 6 REPEAT shift 7 WRITE shift 8 . error cmds goto 16 cmd goto 3
state 8 (entry on WRITE) cmd : WRITE_exp (8) ID shift 12 NUM shift 13 '(' shift 14 . error exp goto 17
state 9 (entry on ';') cmds : cmds ';'_cmd (2) ID shift 4 IF shift 5 READ shift 6 REPEAT shift 7 WRITE shift 8 . error cmd goto 18
state 10 (entry on ATTRIB) cmd : ID ATTRIB_exp (7) ID shift 12 NUM shift 13 '(' shift 14 . error exp goto 19
state 11 (entry on exp) exp : exp_'<' exp (10) exp : exp_'=' exp (11) exp : exp_'+' exp (12) exp : exp_'*' exp (13) exp : exp_'-' exp (14) exp : exp_'/' exp (15) cmd : IF exp_THEN cmds END (4) cmd : IF exp_THEN cmds ELSE cmds END (5) THEN shift 20 '*' shift 21 '+' shift 22 '-' shift 23 '/' shift 24 '<' shift 25 '=' shift 26 . error
state 12 (entry on ID) exp : ID_ (18) '(' error REPEAT error WRITE error READ error NUM error error error ATTRIB error IF error ID error . reduce 18
state 13 (entry on NUM) exp : NUM_ (17) '(' error REPEAT error WRITE error READ error NUM error error error ATTRIB error IF error ID error . reduce 17
state 14 (entry on '(') exp : '('_exp ')' (16) ID shift 12 NUM shift 13 '(' shift 14 . error exp goto 27
state 15 (entry on ID) cmd : READ ID_ (9) END reduce 9 $end reduce 9 UNTIL reduce 9 ';' reduce 9 ELSE reduce 9 . error
state 16 (entry on cmds) cmds : cmds_';' cmd (2) cmd : REPEAT cmds_UNTIL exp (6) ';' shift 9 UNTIL shift 28 . error
state 17 (entry on exp) exp : exp_'<' exp (10) exp : exp_'=' exp (11) exp : exp_'+' exp (12) exp : exp_'*' exp (13) exp : exp_'-' exp (14) exp : exp_'/' exp (15) cmd : WRITE exp_ (8) '*' shift 21 '+' shift 22 '-' shift 23 '/' shift 24 '<' shift 25 '=' shift 26 END reduce 8 $end reduce 8 UNTIL reduce 8 ';' reduce 8 ELSE reduce 8 . error
state 18 (entry on cmd) cmds : cmds ';' cmd_ (2) END reduce 2 $end reduce 2 UNTIL reduce 2 ';' reduce 2 ELSE reduce 2 . error
state 19 (entry on exp) exp : exp_'<' exp (10) exp : exp_'=' exp (11) exp : exp_'+' exp (12) exp : exp_'*' exp (13) exp : exp_'-' exp (14) exp : exp_'/' exp (15) cmd : ID ATTRIB exp_ (7) '*' shift 21 '+' shift 22 '-' shift 23 '/' shift 24 '<' shift 25 '=' shift 26 END reduce 7 $end reduce 7 UNTIL reduce 7 ';' reduce 7 ELSE reduce 7 . error
state 20 (entry on THEN) cmd : IF exp THEN_cmds END (4) cmd : IF exp THEN_cmds ELSE cmds END (5) ID shift 4 IF shift 5 READ shift 6 REPEAT shift 7 WRITE shift 8 . error cmds goto 29 cmd goto 3
state 21 (entry on '*') exp : exp '*'_exp (13) ID shift 12 NUM shift 13 '(' shift 14 . error exp goto 30
state 22 (entry on '+') exp : exp '+'_exp (12) ID shift 12 NUM shift 13 '(' shift 14 . error exp goto 31
state 23 (entry on '-') exp : exp '-'_exp (14) ID shift 12 NUM shift 13 '(' shift 14 . error exp goto 32
state 24 (entry on '/') exp : exp '/'_exp (15) ID shift 12 NUM shift 13 '(' shift 14 . error exp goto 33
state 25 (entry on '<') exp : exp '<'_exp (10) ID shift 12 NUM shift 13 '(' shift 14 . error exp goto 34
state 26 (entry on '=') exp : exp '='_exp (11) ID shift 12 NUM shift 13 '(' shift 14 . error exp goto 35
state 27 (entry on exp) exp : exp_'<' exp (10) exp : exp_'=' exp (11) exp : exp_'+' exp (12) exp : exp_'*' exp (13) exp : exp_'-' exp (14) exp : exp_'/' exp (15) exp : '(' exp_')' (16) '*' shift 21 '+' shift 22 '-' shift 23 '/' shift 24 '<' shift 25 '=' shift 26 ')' shift 36 . error
state 28 (entry on UNTIL) cmd : REPEAT cmds UNTIL_exp (6) ID shift 12 NUM shift 13 '(' shift 14 . error exp goto 37
state 29 (entry on cmds) cmds : cmds_';' cmd (2) cmd : IF exp THEN cmds_END (4) cmd : IF exp THEN cmds_ELSE cmds END (5) ';' shift 9 ELSE shift 38 END shift 39 . error
state 30 (entry on exp) exp : exp_'<' exp (10) exp : exp_'=' exp (11) exp : exp_'+' exp (12) exp : exp_'*' exp (13) exp : exp '*' exp_ (13) exp : exp_'-' exp (14) exp : exp_'/' exp (15) '(' error REPEAT error WRITE error READ error NUM error error error ATTRIB error IF error ID error . reduce 13
state 31 (entry on exp) exp : exp_'<' exp (10) exp : exp_'=' exp (11) exp : exp_'+' exp (12) exp : exp '+' exp_ (12) exp : exp_'*' exp (13) exp : exp_'-' exp (14) exp : exp_'/' exp (15) ID error '(' error error error REPEAT error NUM error READ error ATTRIB error WRITE error IF error '*' shift 21 '/' shift 24 . reduce 12
state 32 (entry on exp) exp : exp_'<' exp (10) exp : exp_'=' exp (11) exp : exp_'+' exp (12) exp : exp_'*' exp (13) exp : exp_'-' exp (14) exp : exp '-' exp_ (14) exp : exp_'/' exp (15) ID error '(' error error error REPEAT error NUM error READ error ATTRIB error WRITE error IF error '*' shift 21 '/' shift 24 . reduce 14
state 33 (entry on exp) exp : exp_'<' exp (10) exp : exp_'=' exp (11) exp : exp_'+' exp (12) exp : exp_'*' exp (13) exp : exp_'-' exp (14) exp : exp_'/' exp (15) exp : exp '/' exp_ (15) '(' error REPEAT error WRITE error READ error NUM error error error ATTRIB error IF error ID error . reduce 15
state 34 (entry on exp) exp : exp_'<' exp (10) exp : exp '<' exp_ (10) exp : exp_'=' exp (11) exp : exp_'+' exp (12) exp : exp_'*' exp (13) exp : exp_'-' exp (14) exp : exp_'/' exp (15) '*' shift 21 '+' shift 22 '-' shift 23 '/' shift 24 ')' reduce 10 END reduce 10 $end reduce 10 '<' reduce 10 UNTIL reduce 10 ';' reduce 10 '=' reduce 10 THEN reduce 10 ELSE reduce 10 . error
state 35 (entry on exp) exp : exp_'<' exp (10) exp : exp_'=' exp (11) exp : exp '=' exp_ (11) exp : exp_'+' exp (12) exp : exp_'*' exp (13) exp : exp_'-' exp (14) exp : exp_'/' exp (15) '*' shift 21 '+' shift 22 '-' shift 23 '/' shift 24 ')' reduce 11 END reduce 11 $end reduce 11 '<' reduce 11 UNTIL reduce 11 ';' reduce 11 '=' reduce 11 THEN reduce 11 ELSE reduce 11 . error
state 36 (entry on ')') exp : '(' exp ')'_ (16) '(' error REPEAT error WRITE error READ error NUM error error error ATTRIB error IF error ID error . reduce 16
state 37 (entry on exp) exp : exp_'<' exp (10) exp : exp_'=' exp (11) exp : exp_'+' exp (12) exp : exp_'*' exp (13) exp : exp_'-' exp (14) exp : exp_'/' exp (15) cmd : REPEAT cmds UNTIL exp_ (6) '*' shift 21 '+' shift 22 '-' shift 23 '/' shift 24 '<' shift 25 '=' shift 26 END reduce 6 $end reduce 6 UNTIL reduce 6 ';' reduce 6 ELSE reduce 6 . error
state 38 (entry on ELSE) cmd : IF exp THEN cmds ELSE_cmds END (5) ID shift 4 IF shift 5 READ shift 6 REPEAT shift 7 WRITE shift 8 . error cmds goto 40 cmd goto 3
state 39 (entry on END) cmd : IF exp THEN cmds END_ (4) END reduce 4 $end reduce 4 UNTIL reduce 4 ';' reduce 4 ELSE reduce 4 . error
state 40 (entry on cmds) cmds : cmds_';' cmd (2) cmd : IF exp THEN cmds ELSE cmds_END (5) ';' shift 9 END shift 41 . error
state 41 (entry on END) cmd : IF exp THEN cmds ELSE cmds END_ (5) END reduce 5 $end reduce 5 UNTIL reduce 5 ';' reduce 5 ELSE reduce 5 . error 22 terminals, 4 nonterminals; 18 grammar rules, 42 states; 0 shift/reduce and 0 reduce/reduce conflicts reported.