comparison 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
comparison
equal deleted inserted replaced
7266:61a39a120dee 7267:343ff337a19b
1 Created by PLY version 3.8 (http://www.dabeaz.com/ply)
2
3 Grammar
4
5 Rule 0 S' -> statement
6 Rule 1 statement -> NAME EQUALS expression
7 Rule 2 statement -> expression
8 Rule 3 expression -> expression PLUS expression
9 Rule 4 expression -> expression MINUS expression
10 Rule 5 expression -> expression TIMES expression
11 Rule 6 expression -> expression DIVIDE expression
12 Rule 7 expression -> MINUS expression
13 Rule 8 expression -> LPAREN expression RPAREN
14 Rule 9 expression -> NUMBER
15 Rule 10 expression -> NAME
16
17 Terminals, with rules where they appear
18
19 DIVIDE : 6
20 EQUALS : 1
21 LPAREN : 8
22 MINUS : 4 7
23 NAME : 1 10
24 NUMBER : 9
25 PLUS : 3
26 RPAREN : 8
27 TIMES : 5
28 error :
29
30 Nonterminals, with rules where they appear
31
32 expression : 1 2 3 3 4 4 5 5 6 6 7 8
33 statement : 0
34
35 Parsing method: LALR
36
37 state 0
38
39 (0) S' -> . statement
40 (1) statement -> . NAME EQUALS expression
41 (2) statement -> . expression
42 (3) expression -> . expression PLUS expression
43 (4) expression -> . expression MINUS expression
44 (5) expression -> . expression TIMES expression
45 (6) expression -> . expression DIVIDE expression
46 (7) expression -> . MINUS expression
47 (8) expression -> . LPAREN expression RPAREN
48 (9) expression -> . NUMBER
49 (10) expression -> . NAME
50
51 NAME shift and go to state 1
52 MINUS shift and go to state 6
53 LPAREN shift and go to state 4
54 NUMBER shift and go to state 2
55
56 expression shift and go to state 5
57 statement shift and go to state 3
58
59 state 1
60
61 (1) statement -> NAME . EQUALS expression
62 (10) expression -> NAME .
63
64 EQUALS shift and go to state 7
65 PLUS reduce using rule 10 (expression -> NAME .)
66 MINUS reduce using rule 10 (expression -> NAME .)
67 TIMES reduce using rule 10 (expression -> NAME .)
68 DIVIDE reduce using rule 10 (expression -> NAME .)
69 $end reduce using rule 10 (expression -> NAME .)
70
71
72 state 2
73
74 (9) expression -> NUMBER .
75
76 RPAREN reduce using rule 9 (expression -> NUMBER .)
77 PLUS reduce using rule 9 (expression -> NUMBER .)
78 MINUS reduce using rule 9 (expression -> NUMBER .)
79 TIMES reduce using rule 9 (expression -> NUMBER .)
80 DIVIDE reduce using rule 9 (expression -> NUMBER .)
81 $end reduce using rule 9 (expression -> NUMBER .)
82
83
84 state 3
85
86 (0) S' -> statement .
87
88
89
90 state 4
91
92 (8) expression -> LPAREN . expression RPAREN
93 (3) expression -> . expression PLUS expression
94 (4) expression -> . expression MINUS expression
95 (5) expression -> . expression TIMES expression
96 (6) expression -> . expression DIVIDE expression
97 (7) expression -> . MINUS expression
98 (8) expression -> . LPAREN expression RPAREN
99 (9) expression -> . NUMBER
100 (10) expression -> . NAME
101
102 MINUS shift and go to state 6
103 LPAREN shift and go to state 4
104 NUMBER shift and go to state 2
105 NAME shift and go to state 9
106
107 expression shift and go to state 8
108
109 state 5
110
111 (2) statement -> expression .
112 (3) expression -> expression . PLUS expression
113 (4) expression -> expression . MINUS expression
114 (5) expression -> expression . TIMES expression
115 (6) expression -> expression . DIVIDE expression
116
117 $end reduce using rule 2 (statement -> expression .)
118 PLUS shift and go to state 10
119 MINUS shift and go to state 12
120 TIMES shift and go to state 13
121 DIVIDE shift and go to state 11
122
123
124 state 6
125
126 (7) expression -> MINUS . expression
127 (3) expression -> . expression PLUS expression
128 (4) expression -> . expression MINUS expression
129 (5) expression -> . expression TIMES expression
130 (6) expression -> . expression DIVIDE expression
131 (7) expression -> . MINUS expression
132 (8) expression -> . LPAREN expression RPAREN
133 (9) expression -> . NUMBER
134 (10) expression -> . NAME
135
136 MINUS shift and go to state 6
137 LPAREN shift and go to state 4
138 NUMBER shift and go to state 2
139 NAME shift and go to state 9
140
141 expression shift and go to state 14
142
143 state 7
144
145 (1) statement -> NAME EQUALS . expression
146 (3) expression -> . expression PLUS expression
147 (4) expression -> . expression MINUS expression
148 (5) expression -> . expression TIMES expression
149 (6) expression -> . expression DIVIDE expression
150 (7) expression -> . MINUS expression
151 (8) expression -> . LPAREN expression RPAREN
152 (9) expression -> . NUMBER
153 (10) expression -> . NAME
154
155 MINUS shift and go to state 6
156 LPAREN shift and go to state 4
157 NUMBER shift and go to state 2
158 NAME shift and go to state 9
159
160 expression shift and go to state 15
161
162 state 8
163
164 (8) expression -> LPAREN expression . RPAREN
165 (3) expression -> expression . PLUS expression
166 (4) expression -> expression . MINUS expression
167 (5) expression -> expression . TIMES expression
168 (6) expression -> expression . DIVIDE expression
169
170 RPAREN shift and go to state 16
171 PLUS shift and go to state 10
172 MINUS shift and go to state 12
173 TIMES shift and go to state 13
174 DIVIDE shift and go to state 11
175
176
177 state 9
178
179 (10) expression -> NAME .
180
181 RPAREN reduce using rule 10 (expression -> NAME .)
182 PLUS reduce using rule 10 (expression -> NAME .)
183 MINUS reduce using rule 10 (expression -> NAME .)
184 TIMES reduce using rule 10 (expression -> NAME .)
185 DIVIDE reduce using rule 10 (expression -> NAME .)
186 $end reduce using rule 10 (expression -> NAME .)
187
188
189 state 10
190
191 (3) expression -> expression PLUS . expression
192 (3) expression -> . expression PLUS expression
193 (4) expression -> . expression MINUS expression
194 (5) expression -> . expression TIMES expression
195 (6) expression -> . expression DIVIDE expression
196 (7) expression -> . MINUS expression
197 (8) expression -> . LPAREN expression RPAREN
198 (9) expression -> . NUMBER
199 (10) expression -> . NAME
200
201 MINUS shift and go to state 6
202 LPAREN shift and go to state 4
203 NUMBER shift and go to state 2
204 NAME shift and go to state 9
205
206 expression shift and go to state 17
207
208 state 11
209
210 (6) expression -> expression DIVIDE . expression
211 (3) expression -> . expression PLUS expression
212 (4) expression -> . expression MINUS expression
213 (5) expression -> . expression TIMES expression
214 (6) expression -> . expression DIVIDE expression
215 (7) expression -> . MINUS expression
216 (8) expression -> . LPAREN expression RPAREN
217 (9) expression -> . NUMBER
218 (10) expression -> . NAME
219
220 MINUS shift and go to state 6
221 LPAREN shift and go to state 4
222 NUMBER shift and go to state 2
223 NAME shift and go to state 9
224
225 expression shift and go to state 18
226
227 state 12
228
229 (4) expression -> expression MINUS . expression
230 (3) expression -> . expression PLUS expression
231 (4) expression -> . expression MINUS expression
232 (5) expression -> . expression TIMES expression
233 (6) expression -> . expression DIVIDE expression
234 (7) expression -> . MINUS expression
235 (8) expression -> . LPAREN expression RPAREN
236 (9) expression -> . NUMBER
237 (10) expression -> . NAME
238
239 MINUS shift and go to state 6
240 LPAREN shift and go to state 4
241 NUMBER shift and go to state 2
242 NAME shift and go to state 9
243
244 expression shift and go to state 19
245
246 state 13
247
248 (5) expression -> expression TIMES . expression
249 (3) expression -> . expression PLUS expression
250 (4) expression -> . expression MINUS expression
251 (5) expression -> . expression TIMES expression
252 (6) expression -> . expression DIVIDE expression
253 (7) expression -> . MINUS expression
254 (8) expression -> . LPAREN expression RPAREN
255 (9) expression -> . NUMBER
256 (10) expression -> . NAME
257
258 MINUS shift and go to state 6
259 LPAREN shift and go to state 4
260 NUMBER shift and go to state 2
261 NAME shift and go to state 9
262
263 expression shift and go to state 20
264
265 state 14
266
267 (7) expression -> MINUS expression .
268 (3) expression -> expression . PLUS expression
269 (4) expression -> expression . MINUS expression
270 (5) expression -> expression . TIMES expression
271 (6) expression -> expression . DIVIDE expression
272
273 RPAREN reduce using rule 7 (expression -> MINUS expression .)
274 PLUS reduce using rule 7 (expression -> MINUS expression .)
275 MINUS reduce using rule 7 (expression -> MINUS expression .)
276 TIMES reduce using rule 7 (expression -> MINUS expression .)
277 DIVIDE reduce using rule 7 (expression -> MINUS expression .)
278 $end reduce using rule 7 (expression -> MINUS expression .)
279
280 ! PLUS [ shift and go to state 10 ]
281 ! MINUS [ shift and go to state 12 ]
282 ! TIMES [ shift and go to state 13 ]
283 ! DIVIDE [ shift and go to state 11 ]
284
285
286 state 15
287
288 (1) statement -> NAME EQUALS expression .
289 (3) expression -> expression . PLUS expression
290 (4) expression -> expression . MINUS expression
291 (5) expression -> expression . TIMES expression
292 (6) expression -> expression . DIVIDE expression
293
294 $end reduce using rule 1 (statement -> NAME EQUALS expression .)
295 PLUS shift and go to state 10
296 MINUS shift and go to state 12
297 TIMES shift and go to state 13
298 DIVIDE shift and go to state 11
299
300
301 state 16
302
303 (8) expression -> LPAREN expression RPAREN .
304
305 RPAREN reduce using rule 8 (expression -> LPAREN expression RPAREN .)
306 PLUS reduce using rule 8 (expression -> LPAREN expression RPAREN .)
307 MINUS reduce using rule 8 (expression -> LPAREN expression RPAREN .)
308 TIMES reduce using rule 8 (expression -> LPAREN expression RPAREN .)
309 DIVIDE reduce using rule 8 (expression -> LPAREN expression RPAREN .)
310 $end reduce using rule 8 (expression -> LPAREN expression RPAREN .)
311
312
313 state 17
314
315 (3) expression -> expression PLUS expression .
316 (3) expression -> expression . PLUS expression
317 (4) expression -> expression . MINUS expression
318 (5) expression -> expression . TIMES expression
319 (6) expression -> expression . DIVIDE expression
320
321 RPAREN reduce using rule 3 (expression -> expression PLUS expression .)
322 PLUS reduce using rule 3 (expression -> expression PLUS expression .)
323 MINUS reduce using rule 3 (expression -> expression PLUS expression .)
324 $end reduce using rule 3 (expression -> expression PLUS expression .)
325 TIMES shift and go to state 13
326 DIVIDE shift and go to state 11
327
328 ! TIMES [ reduce using rule 3 (expression -> expression PLUS expression .) ]
329 ! DIVIDE [ reduce using rule 3 (expression -> expression PLUS expression .) ]
330 ! PLUS [ shift and go to state 10 ]
331 ! MINUS [ shift and go to state 12 ]
332
333
334 state 18
335
336 (6) expression -> expression DIVIDE expression .
337 (3) expression -> expression . PLUS expression
338 (4) expression -> expression . MINUS expression
339 (5) expression -> expression . TIMES expression
340 (6) expression -> expression . DIVIDE expression
341
342 RPAREN reduce using rule 6 (expression -> expression DIVIDE expression .)
343 PLUS reduce using rule 6 (expression -> expression DIVIDE expression .)
344 MINUS reduce using rule 6 (expression -> expression DIVIDE expression .)
345 TIMES reduce using rule 6 (expression -> expression DIVIDE expression .)
346 DIVIDE reduce using rule 6 (expression -> expression DIVIDE expression .)
347 $end reduce using rule 6 (expression -> expression DIVIDE expression .)
348
349 ! PLUS [ shift and go to state 10 ]
350 ! MINUS [ shift and go to state 12 ]
351 ! TIMES [ shift and go to state 13 ]
352 ! DIVIDE [ shift and go to state 11 ]
353
354
355 state 19
356
357 (4) expression -> expression MINUS expression .
358 (3) expression -> expression . PLUS expression
359 (4) expression -> expression . MINUS expression
360 (5) expression -> expression . TIMES expression
361 (6) expression -> expression . DIVIDE expression
362
363 RPAREN reduce using rule 4 (expression -> expression MINUS expression .)
364 PLUS reduce using rule 4 (expression -> expression MINUS expression .)
365 MINUS reduce using rule 4 (expression -> expression MINUS expression .)
366 $end reduce using rule 4 (expression -> expression MINUS expression .)
367 TIMES shift and go to state 13
368 DIVIDE shift and go to state 11
369
370 ! TIMES [ reduce using rule 4 (expression -> expression MINUS expression .) ]
371 ! DIVIDE [ reduce using rule 4 (expression -> expression MINUS expression .) ]
372 ! PLUS [ shift and go to state 10 ]
373 ! MINUS [ shift and go to state 12 ]
374
375
376 state 20
377
378 (5) expression -> expression TIMES expression .
379 (3) expression -> expression . PLUS expression
380 (4) expression -> expression . MINUS expression
381 (5) expression -> expression . TIMES expression
382 (6) expression -> expression . DIVIDE expression
383
384 RPAREN reduce using rule 5 (expression -> expression TIMES expression .)
385 PLUS reduce using rule 5 (expression -> expression TIMES expression .)
386 MINUS reduce using rule 5 (expression -> expression TIMES expression .)
387 TIMES reduce using rule 5 (expression -> expression TIMES expression .)
388 DIVIDE reduce using rule 5 (expression -> expression TIMES expression .)
389 $end reduce using rule 5 (expression -> expression TIMES expression .)
390
391 ! PLUS [ shift and go to state 10 ]
392 ! MINUS [ shift and go to state 12 ]
393 ! TIMES [ shift and go to state 13 ]
394 ! DIVIDE [ shift and go to state 11 ]
395