Mercurial > repo
diff ply-3.8/test/pkg_test2/parsing/parser.out @ 7267:343ff337a19b
<ais523> ` tar -xf ply-3.8.tar.gz
author | HackBot |
---|---|
date | Wed, 23 Mar 2016 02:40:16 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ply-3.8/test/pkg_test2/parsing/parser.out Wed Mar 23 02:40:16 2016 +0000 @@ -0,0 +1,395 @@ +Created by PLY version 3.8 (http://www.dabeaz.com/ply) + +Grammar + +Rule 0 S' -> statement +Rule 1 statement -> NAME EQUALS expression +Rule 2 statement -> expression +Rule 3 expression -> expression PLUS expression +Rule 4 expression -> expression MINUS expression +Rule 5 expression -> expression TIMES expression +Rule 6 expression -> expression DIVIDE expression +Rule 7 expression -> MINUS expression +Rule 8 expression -> LPAREN expression RPAREN +Rule 9 expression -> NUMBER +Rule 10 expression -> NAME + +Terminals, with rules where they appear + +DIVIDE : 6 +EQUALS : 1 +LPAREN : 8 +MINUS : 4 7 +NAME : 1 10 +NUMBER : 9 +PLUS : 3 +RPAREN : 8 +TIMES : 5 +error : + +Nonterminals, with rules where they appear + +expression : 1 2 3 3 4 4 5 5 6 6 7 8 +statement : 0 + +Parsing method: LALR + +state 0 + + (0) S' -> . statement + (1) statement -> . NAME EQUALS expression + (2) statement -> . expression + (3) expression -> . expression PLUS expression + (4) expression -> . expression MINUS expression + (5) expression -> . expression TIMES expression + (6) expression -> . expression DIVIDE expression + (7) expression -> . MINUS expression + (8) expression -> . LPAREN expression RPAREN + (9) expression -> . NUMBER + (10) expression -> . NAME + + NAME shift and go to state 1 + MINUS shift and go to state 6 + LPAREN shift and go to state 4 + NUMBER shift and go to state 2 + + expression shift and go to state 5 + statement shift and go to state 3 + +state 1 + + (1) statement -> NAME . EQUALS expression + (10) expression -> NAME . + + EQUALS shift and go to state 7 + PLUS reduce using rule 10 (expression -> NAME .) + MINUS reduce using rule 10 (expression -> NAME .) + TIMES reduce using rule 10 (expression -> NAME .) + DIVIDE reduce using rule 10 (expression -> NAME .) + $end reduce using rule 10 (expression -> NAME .) + + +state 2 + + (9) expression -> NUMBER . + + RPAREN reduce using rule 9 (expression -> NUMBER .) + PLUS reduce using rule 9 (expression -> NUMBER .) + MINUS reduce using rule 9 (expression -> NUMBER .) + TIMES reduce using rule 9 (expression -> NUMBER .) + DIVIDE reduce using rule 9 (expression -> NUMBER .) + $end reduce using rule 9 (expression -> NUMBER .) + + +state 3 + + (0) S' -> statement . + + + +state 4 + + (8) expression -> LPAREN . expression RPAREN + (3) expression -> . expression PLUS expression + (4) expression -> . expression MINUS expression + (5) expression -> . expression TIMES expression + (6) expression -> . expression DIVIDE expression + (7) expression -> . MINUS expression + (8) expression -> . LPAREN expression RPAREN + (9) expression -> . NUMBER + (10) expression -> . NAME + + MINUS shift and go to state 6 + LPAREN shift and go to state 4 + NUMBER shift and go to state 2 + NAME shift and go to state 9 + + expression shift and go to state 8 + +state 5 + + (2) statement -> expression . + (3) expression -> expression . PLUS expression + (4) expression -> expression . MINUS expression + (5) expression -> expression . TIMES expression + (6) expression -> expression . DIVIDE expression + + $end reduce using rule 2 (statement -> expression .) + PLUS shift and go to state 10 + MINUS shift and go to state 12 + TIMES shift and go to state 13 + DIVIDE shift and go to state 11 + + +state 6 + + (7) expression -> MINUS . expression + (3) expression -> . expression PLUS expression + (4) expression -> . expression MINUS expression + (5) expression -> . expression TIMES expression + (6) expression -> . expression DIVIDE expression + (7) expression -> . MINUS expression + (8) expression -> . LPAREN expression RPAREN + (9) expression -> . NUMBER + (10) expression -> . NAME + + MINUS shift and go to state 6 + LPAREN shift and go to state 4 + NUMBER shift and go to state 2 + NAME shift and go to state 9 + + expression shift and go to state 14 + +state 7 + + (1) statement -> NAME EQUALS . expression + (3) expression -> . expression PLUS expression + (4) expression -> . expression MINUS expression + (5) expression -> . expression TIMES expression + (6) expression -> . expression DIVIDE expression + (7) expression -> . MINUS expression + (8) expression -> . LPAREN expression RPAREN + (9) expression -> . NUMBER + (10) expression -> . NAME + + MINUS shift and go to state 6 + LPAREN shift and go to state 4 + NUMBER shift and go to state 2 + NAME shift and go to state 9 + + expression shift and go to state 15 + +state 8 + + (8) expression -> LPAREN expression . RPAREN + (3) expression -> expression . PLUS expression + (4) expression -> expression . MINUS expression + (5) expression -> expression . TIMES expression + (6) expression -> expression . DIVIDE expression + + RPAREN shift and go to state 16 + PLUS shift and go to state 10 + MINUS shift and go to state 12 + TIMES shift and go to state 13 + DIVIDE shift and go to state 11 + + +state 9 + + (10) expression -> NAME . + + RPAREN reduce using rule 10 (expression -> NAME .) + PLUS reduce using rule 10 (expression -> NAME .) + MINUS reduce using rule 10 (expression -> NAME .) + TIMES reduce using rule 10 (expression -> NAME .) + DIVIDE reduce using rule 10 (expression -> NAME .) + $end reduce using rule 10 (expression -> NAME .) + + +state 10 + + (3) expression -> expression PLUS . expression + (3) expression -> . expression PLUS expression + (4) expression -> . expression MINUS expression + (5) expression -> . expression TIMES expression + (6) expression -> . expression DIVIDE expression + (7) expression -> . MINUS expression + (8) expression -> . LPAREN expression RPAREN + (9) expression -> . NUMBER + (10) expression -> . NAME + + MINUS shift and go to state 6 + LPAREN shift and go to state 4 + NUMBER shift and go to state 2 + NAME shift and go to state 9 + + expression shift and go to state 17 + +state 11 + + (6) expression -> expression DIVIDE . expression + (3) expression -> . expression PLUS expression + (4) expression -> . expression MINUS expression + (5) expression -> . expression TIMES expression + (6) expression -> . expression DIVIDE expression + (7) expression -> . MINUS expression + (8) expression -> . LPAREN expression RPAREN + (9) expression -> . NUMBER + (10) expression -> . NAME + + MINUS shift and go to state 6 + LPAREN shift and go to state 4 + NUMBER shift and go to state 2 + NAME shift and go to state 9 + + expression shift and go to state 18 + +state 12 + + (4) expression -> expression MINUS . expression + (3) expression -> . expression PLUS expression + (4) expression -> . expression MINUS expression + (5) expression -> . expression TIMES expression + (6) expression -> . expression DIVIDE expression + (7) expression -> . MINUS expression + (8) expression -> . LPAREN expression RPAREN + (9) expression -> . NUMBER + (10) expression -> . NAME + + MINUS shift and go to state 6 + LPAREN shift and go to state 4 + NUMBER shift and go to state 2 + NAME shift and go to state 9 + + expression shift and go to state 19 + +state 13 + + (5) expression -> expression TIMES . expression + (3) expression -> . expression PLUS expression + (4) expression -> . expression MINUS expression + (5) expression -> . expression TIMES expression + (6) expression -> . expression DIVIDE expression + (7) expression -> . MINUS expression + (8) expression -> . LPAREN expression RPAREN + (9) expression -> . NUMBER + (10) expression -> . NAME + + MINUS shift and go to state 6 + LPAREN shift and go to state 4 + NUMBER shift and go to state 2 + NAME shift and go to state 9 + + expression shift and go to state 20 + +state 14 + + (7) expression -> MINUS expression . + (3) expression -> expression . PLUS expression + (4) expression -> expression . MINUS expression + (5) expression -> expression . TIMES expression + (6) expression -> expression . DIVIDE expression + + RPAREN reduce using rule 7 (expression -> MINUS expression .) + PLUS reduce using rule 7 (expression -> MINUS expression .) + MINUS reduce using rule 7 (expression -> MINUS expression .) + TIMES reduce using rule 7 (expression -> MINUS expression .) + DIVIDE reduce using rule 7 (expression -> MINUS expression .) + $end reduce using rule 7 (expression -> MINUS expression .) + + ! PLUS [ shift and go to state 10 ] + ! MINUS [ shift and go to state 12 ] + ! TIMES [ shift and go to state 13 ] + ! DIVIDE [ shift and go to state 11 ] + + +state 15 + + (1) statement -> NAME EQUALS expression . + (3) expression -> expression . PLUS expression + (4) expression -> expression . MINUS expression + (5) expression -> expression . TIMES expression + (6) expression -> expression . DIVIDE expression + + $end reduce using rule 1 (statement -> NAME EQUALS expression .) + PLUS shift and go to state 10 + MINUS shift and go to state 12 + TIMES shift and go to state 13 + DIVIDE shift and go to state 11 + + +state 16 + + (8) expression -> LPAREN expression RPAREN . + + RPAREN reduce using rule 8 (expression -> LPAREN expression RPAREN .) + PLUS reduce using rule 8 (expression -> LPAREN expression RPAREN .) + MINUS reduce using rule 8 (expression -> LPAREN expression RPAREN .) + TIMES reduce using rule 8 (expression -> LPAREN expression RPAREN .) + DIVIDE reduce using rule 8 (expression -> LPAREN expression RPAREN .) + $end reduce using rule 8 (expression -> LPAREN expression RPAREN .) + + +state 17 + + (3) expression -> expression PLUS expression . + (3) expression -> expression . PLUS expression + (4) expression -> expression . MINUS expression + (5) expression -> expression . TIMES expression + (6) expression -> expression . DIVIDE expression + + RPAREN reduce using rule 3 (expression -> expression PLUS expression .) + PLUS reduce using rule 3 (expression -> expression PLUS expression .) + MINUS reduce using rule 3 (expression -> expression PLUS expression .) + $end reduce using rule 3 (expression -> expression PLUS expression .) + TIMES shift and go to state 13 + DIVIDE shift and go to state 11 + + ! TIMES [ reduce using rule 3 (expression -> expression PLUS expression .) ] + ! DIVIDE [ reduce using rule 3 (expression -> expression PLUS expression .) ] + ! PLUS [ shift and go to state 10 ] + ! MINUS [ shift and go to state 12 ] + + +state 18 + + (6) expression -> expression DIVIDE expression . + (3) expression -> expression . PLUS expression + (4) expression -> expression . MINUS expression + (5) expression -> expression . TIMES expression + (6) expression -> expression . DIVIDE expression + + RPAREN reduce using rule 6 (expression -> expression DIVIDE expression .) + PLUS reduce using rule 6 (expression -> expression DIVIDE expression .) + MINUS reduce using rule 6 (expression -> expression DIVIDE expression .) + TIMES reduce using rule 6 (expression -> expression DIVIDE expression .) + DIVIDE reduce using rule 6 (expression -> expression DIVIDE expression .) + $end reduce using rule 6 (expression -> expression DIVIDE expression .) + + ! PLUS [ shift and go to state 10 ] + ! MINUS [ shift and go to state 12 ] + ! TIMES [ shift and go to state 13 ] + ! DIVIDE [ shift and go to state 11 ] + + +state 19 + + (4) expression -> expression MINUS expression . + (3) expression -> expression . PLUS expression + (4) expression -> expression . MINUS expression + (5) expression -> expression . TIMES expression + (6) expression -> expression . DIVIDE expression + + RPAREN reduce using rule 4 (expression -> expression MINUS expression .) + PLUS reduce using rule 4 (expression -> expression MINUS expression .) + MINUS reduce using rule 4 (expression -> expression MINUS expression .) + $end reduce using rule 4 (expression -> expression MINUS expression .) + TIMES shift and go to state 13 + DIVIDE shift and go to state 11 + + ! TIMES [ reduce using rule 4 (expression -> expression MINUS expression .) ] + ! DIVIDE [ reduce using rule 4 (expression -> expression MINUS expression .) ] + ! PLUS [ shift and go to state 10 ] + ! MINUS [ shift and go to state 12 ] + + +state 20 + + (5) expression -> expression TIMES expression . + (3) expression -> expression . PLUS expression + (4) expression -> expression . MINUS expression + (5) expression -> expression . TIMES expression + (6) expression -> expression . DIVIDE expression + + RPAREN reduce using rule 5 (expression -> expression TIMES expression .) + PLUS reduce using rule 5 (expression -> expression TIMES expression .) + MINUS reduce using rule 5 (expression -> expression TIMES expression .) + TIMES reduce using rule 5 (expression -> expression TIMES expression .) + DIVIDE reduce using rule 5 (expression -> expression TIMES expression .) + $end reduce using rule 5 (expression -> expression TIMES expression .) + + ! PLUS [ shift and go to state 10 ] + ! MINUS [ shift and go to state 12 ] + ! TIMES [ shift and go to state 13 ] + ! DIVIDE [ shift and go to state 11 ] +