BadVPN – Blame information for rev 1

Subversion Repositories:
Rev:
Rev Author Line No. Line
1 office 1 State 0:
2 input ::= * processes
3 (1) processes ::= *
4 processes ::= * INCLUDE STRING processes
5 processes ::= * INCLUDE_GUARD STRING processes
6 processes ::= * process_or_template NAME CURLY_OPEN statements CURLY_CLOSE processes
7 process_or_template ::= * PROCESS
8 process_or_template ::= * TEMPLATE
9  
10 INCLUDE shift 52
11 INCLUDE_GUARD shift 53
12 PROCESS shift 97
13 TEMPLATE shift 98
14 processes shift 51
15 process_or_template shift 54
16 input accept
17 {default} reduce 1
18  
19 State 1:
20 statement ::= dotted_name ROUND_OPEN * list_contents_maybe ROUND_CLOSE name_maybe SEMICOLON
21 dotted_name ::= * NAME
22 dotted_name ::= * NAME DOT dotted_name
23 (26) list_contents_maybe ::= *
24 list_contents_maybe ::= * list_contents
25 list_contents ::= * value
26 list_contents ::= * value COMMA list_contents
27 list ::= * CURLY_OPEN CURLY_CLOSE
28 list ::= * CURLY_OPEN list_contents CURLY_CLOSE
29 map ::= * BRACKET_OPEN BRACKET_CLOSE
30 map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
31 invoc ::= * value ROUND_OPEN list_contents_maybe ROUND_CLOSE
32 value ::= * STRING
33 value ::= * AT_SIGN dotted_name
34 value ::= * CARET name_list
35 value ::= * dotted_name
36 value ::= * list
37 value ::= * map
38 value ::= * ROUND_OPEN value ROUND_CLOSE
39 value ::= * invoc
40  
41 STRING shift 107
42 NAME shift 59
43 CURLY_OPEN shift 4
44 ROUND_OPEN shift 9
45 BRACKET_OPEN shift 5
46 AT_SIGN shift 29
47 CARET shift 30
48 dotted_name shift 111
49 list_contents_maybe shift 57
50 list_contents shift 102
51 list shift 112
52 map shift 113
53 invoc shift 115
54 value shift 43
55 {default} reduce 26
56  
57 State 2:
58 dotted_name ::= * NAME
59 dotted_name ::= * NAME DOT dotted_name
60 (26) list_contents_maybe ::= *
61 list_contents_maybe ::= * list_contents
62 list_contents ::= * value
63 list_contents ::= * value COMMA list_contents
64 list ::= * CURLY_OPEN CURLY_CLOSE
65 list ::= * CURLY_OPEN list_contents CURLY_CLOSE
66 map ::= * BRACKET_OPEN BRACKET_CLOSE
67 map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
68 invoc ::= * value ROUND_OPEN list_contents_maybe ROUND_CLOSE
69 invoc ::= value ROUND_OPEN * list_contents_maybe ROUND_CLOSE
70 value ::= * STRING
71 value ::= * AT_SIGN dotted_name
72 value ::= * CARET name_list
73 value ::= * dotted_name
74 value ::= * list
75 value ::= * map
76 value ::= * ROUND_OPEN value ROUND_CLOSE
77 value ::= * invoc
78  
79 STRING shift 107
80 NAME shift 59
81 CURLY_OPEN shift 4
82 ROUND_OPEN shift 9
83 BRACKET_OPEN shift 5
84 AT_SIGN shift 29
85 CARET shift 30
86 dotted_name shift 111
87 list_contents_maybe shift 62
88 list_contents shift 102
89 list shift 112
90 map shift 113
91 invoc shift 115
92 value shift 43
93 {default} reduce 26
94  
95 State 3:
96 statement ::= dotted_name ARROW dotted_name ROUND_OPEN * list_contents_maybe ROUND_CLOSE name_maybe SEMICOLON
97 dotted_name ::= * NAME
98 dotted_name ::= * NAME DOT dotted_name
99 (26) list_contents_maybe ::= *
100 list_contents_maybe ::= * list_contents
101 list_contents ::= * value
102 list_contents ::= * value COMMA list_contents
103 list ::= * CURLY_OPEN CURLY_CLOSE
104 list ::= * CURLY_OPEN list_contents CURLY_CLOSE
105 map ::= * BRACKET_OPEN BRACKET_CLOSE
106 map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
107 invoc ::= * value ROUND_OPEN list_contents_maybe ROUND_CLOSE
108 value ::= * STRING
109 value ::= * AT_SIGN dotted_name
110 value ::= * CARET name_list
111 value ::= * dotted_name
112 value ::= * list
113 value ::= * map
114 value ::= * ROUND_OPEN value ROUND_CLOSE
115 value ::= * invoc
116  
117 STRING shift 107
118 NAME shift 59
119 CURLY_OPEN shift 4
120 ROUND_OPEN shift 9
121 BRACKET_OPEN shift 5
122 AT_SIGN shift 29
123 CARET shift 30
124 dotted_name shift 111
125 list_contents_maybe shift 65
126 list_contents shift 102
127 list shift 112
128 map shift 113
129 invoc shift 115
130 value shift 43
131 {default} reduce 26
132  
133 State 4:
134 dotted_name ::= * NAME
135 dotted_name ::= * NAME DOT dotted_name
136 list_contents ::= * value
137 list_contents ::= * value COMMA list_contents
138 list ::= * CURLY_OPEN CURLY_CLOSE
139 list ::= CURLY_OPEN * CURLY_CLOSE
140 list ::= * CURLY_OPEN list_contents CURLY_CLOSE
141 list ::= CURLY_OPEN * list_contents CURLY_CLOSE
142 map ::= * BRACKET_OPEN BRACKET_CLOSE
143 map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
144 invoc ::= * value ROUND_OPEN list_contents_maybe ROUND_CLOSE
145 value ::= * STRING
146 value ::= * AT_SIGN dotted_name
147 value ::= * CARET name_list
148 value ::= * dotted_name
149 value ::= * list
150 value ::= * map
151 value ::= * ROUND_OPEN value ROUND_CLOSE
152 value ::= * invoc
153  
154 STRING shift 107
155 NAME shift 59
156 CURLY_OPEN shift 4
157 CURLY_CLOSE shift 104
158 ROUND_OPEN shift 9
159 BRACKET_OPEN shift 5
160 AT_SIGN shift 29
161 CARET shift 30
162 dotted_name shift 111
163 list_contents shift 60
164 list shift 112
165 map shift 113
166 invoc shift 115
167 value shift 43
168  
169 State 5:
170 dotted_name ::= * NAME
171 dotted_name ::= * NAME DOT dotted_name
172 list ::= * CURLY_OPEN CURLY_CLOSE
173 list ::= * CURLY_OPEN list_contents CURLY_CLOSE
174 map_contents ::= * value COLON value
175 map_contents ::= * value COLON value COMMA map_contents
176 map ::= * BRACKET_OPEN BRACKET_CLOSE
177 map ::= BRACKET_OPEN * BRACKET_CLOSE
178 map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
179 map ::= BRACKET_OPEN * map_contents BRACKET_CLOSE
180 invoc ::= * value ROUND_OPEN list_contents_maybe ROUND_CLOSE
181 value ::= * STRING
182 value ::= * AT_SIGN dotted_name
183 value ::= * CARET name_list
184 value ::= * dotted_name
185 value ::= * list
186 value ::= * map
187 value ::= * ROUND_OPEN value ROUND_CLOSE
188 value ::= * invoc
189  
190 STRING shift 107
191 NAME shift 59
192 CURLY_OPEN shift 4
193 ROUND_OPEN shift 9
194 BRACKET_OPEN shift 5
195 BRACKET_CLOSE shift 117
196 AT_SIGN shift 29
197 CARET shift 30
198 dotted_name shift 111
199 list shift 112
200 map_contents shift 63
201 map shift 113
202 invoc shift 115
203 value shift 44
204  
205 State 6:
206 dotted_name ::= * NAME
207 dotted_name ::= * NAME DOT dotted_name
208 list_contents ::= * value
209 list_contents ::= * value COMMA list_contents
210 list_contents ::= value COMMA * list_contents
211 list ::= * CURLY_OPEN CURLY_CLOSE
212 list ::= * CURLY_OPEN list_contents CURLY_CLOSE
213 map ::= * BRACKET_OPEN BRACKET_CLOSE
214 map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
215 invoc ::= * value ROUND_OPEN list_contents_maybe ROUND_CLOSE
216 value ::= * STRING
217 value ::= * AT_SIGN dotted_name
218 value ::= * CARET name_list
219 value ::= * dotted_name
220 value ::= * list
221 value ::= * map
222 value ::= * ROUND_OPEN value ROUND_CLOSE
223 value ::= * invoc
224  
225 STRING shift 107
226 NAME shift 59
227 CURLY_OPEN shift 4
228 ROUND_OPEN shift 9
229 BRACKET_OPEN shift 5
230 AT_SIGN shift 29
231 CARET shift 30
232 dotted_name shift 111
233 list_contents shift 103
234 list shift 112
235 map shift 113
236 invoc shift 115
237 value shift 43
238  
239 State 7:
240 dotted_name ::= * NAME
241 dotted_name ::= * NAME DOT dotted_name
242 list ::= * CURLY_OPEN CURLY_CLOSE
243 list ::= * CURLY_OPEN list_contents CURLY_CLOSE
244 map_contents ::= * value COLON value
245 map_contents ::= * value COLON value COMMA map_contents
246 map_contents ::= value COLON value COMMA * map_contents
247 map ::= * BRACKET_OPEN BRACKET_CLOSE
248 map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
249 invoc ::= * value ROUND_OPEN list_contents_maybe ROUND_CLOSE
250 value ::= * STRING
251 value ::= * AT_SIGN dotted_name
252 value ::= * CARET name_list
253 value ::= * dotted_name
254 value ::= * list
255 value ::= * map
256 value ::= * ROUND_OPEN value ROUND_CLOSE
257 value ::= * invoc
258  
259 STRING shift 107
260 NAME shift 59
261 CURLY_OPEN shift 4
262 ROUND_OPEN shift 9
263 BRACKET_OPEN shift 5
264 AT_SIGN shift 29
265 CARET shift 30
266 dotted_name shift 111
267 list shift 112
268 map_contents shift 106
269 map shift 113
270 invoc shift 115
271 value shift 44
272  
273 State 8:
274 dotted_name ::= * NAME
275 dotted_name ::= * NAME DOT dotted_name
276 list ::= * CURLY_OPEN CURLY_CLOSE
277 list ::= * CURLY_OPEN list_contents CURLY_CLOSE
278 map_contents ::= value COLON * value
279 map_contents ::= value COLON * value COMMA map_contents
280 map ::= * BRACKET_OPEN BRACKET_CLOSE
281 map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
282 invoc ::= * value ROUND_OPEN list_contents_maybe ROUND_CLOSE
283 value ::= * STRING
284 value ::= * AT_SIGN dotted_name
285 value ::= * CARET name_list
286 value ::= * dotted_name
287 value ::= * list
288 value ::= * map
289 value ::= * ROUND_OPEN value ROUND_CLOSE
290 value ::= * invoc
291  
292 STRING shift 107
293 NAME shift 59
294 CURLY_OPEN shift 4
295 ROUND_OPEN shift 9
296 BRACKET_OPEN shift 5
297 AT_SIGN shift 29
298 CARET shift 30
299 dotted_name shift 111
300 list shift 112
301 map shift 113
302 invoc shift 115
303 value shift 45
304  
305 State 9:
306 dotted_name ::= * NAME
307 dotted_name ::= * NAME DOT dotted_name
308 list ::= * CURLY_OPEN CURLY_CLOSE
309 list ::= * CURLY_OPEN list_contents CURLY_CLOSE
310 map ::= * BRACKET_OPEN BRACKET_CLOSE
311 map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
312 invoc ::= * value ROUND_OPEN list_contents_maybe ROUND_CLOSE
313 value ::= * STRING
314 value ::= * AT_SIGN dotted_name
315 value ::= * CARET name_list
316 value ::= * dotted_name
317 value ::= * list
318 value ::= * map
319 value ::= * ROUND_OPEN value ROUND_CLOSE
320 value ::= ROUND_OPEN * value ROUND_CLOSE
321 value ::= * invoc
322  
323 STRING shift 107
324 NAME shift 59
325 CURLY_OPEN shift 4
326 ROUND_OPEN shift 9
327 BRACKET_OPEN shift 5
328 AT_SIGN shift 29
329 CARET shift 30
330 dotted_name shift 111
331 list shift 112
332 map shift 113
333 invoc shift 115
334 value shift 46
335  
336 State 10:
337 statement ::= IF ROUND_OPEN * value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
338 dotted_name ::= * NAME
339 dotted_name ::= * NAME DOT dotted_name
340 list ::= * CURLY_OPEN CURLY_CLOSE
341 list ::= * CURLY_OPEN list_contents CURLY_CLOSE
342 map ::= * BRACKET_OPEN BRACKET_CLOSE
343 map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
344 invoc ::= * value ROUND_OPEN list_contents_maybe ROUND_CLOSE
345 value ::= * STRING
346 value ::= * AT_SIGN dotted_name
347 value ::= * CARET name_list
348 value ::= * dotted_name
349 value ::= * list
350 value ::= * map
351 value ::= * ROUND_OPEN value ROUND_CLOSE
352 value ::= * invoc
353  
354 STRING shift 107
355 NAME shift 59
356 CURLY_OPEN shift 4
357 ROUND_OPEN shift 9
358 BRACKET_OPEN shift 5
359 AT_SIGN shift 29
360 CARET shift 30
361 dotted_name shift 111
362 list shift 112
363 map shift 113
364 invoc shift 115
365 value shift 47
366  
367 State 11:
368 statement ::= FOREACH ROUND_OPEN * value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
369 statement ::= FOREACH ROUND_OPEN * value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
370 dotted_name ::= * NAME
371 dotted_name ::= * NAME DOT dotted_name
372 list ::= * CURLY_OPEN CURLY_CLOSE
373 list ::= * CURLY_OPEN list_contents CURLY_CLOSE
374 map ::= * BRACKET_OPEN BRACKET_CLOSE
375 map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
376 invoc ::= * value ROUND_OPEN list_contents_maybe ROUND_CLOSE
377 value ::= * STRING
378 value ::= * AT_SIGN dotted_name
379 value ::= * CARET name_list
380 value ::= * dotted_name
381 value ::= * list
382 value ::= * map
383 value ::= * ROUND_OPEN value ROUND_CLOSE
384 value ::= * invoc
385  
386 STRING shift 107
387 NAME shift 59
388 CURLY_OPEN shift 4
389 ROUND_OPEN shift 9
390 BRACKET_OPEN shift 5
391 AT_SIGN shift 29
392 CARET shift 30
393 dotted_name shift 111
394 list shift 112
395 map shift 113
396 invoc shift 115
397 value shift 48
398  
399 State 12:
400 elif ::= ELIF ROUND_OPEN * value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE
401 elif ::= ELIF ROUND_OPEN * value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif
402 dotted_name ::= * NAME
403 dotted_name ::= * NAME DOT dotted_name
404 list ::= * CURLY_OPEN CURLY_CLOSE
405 list ::= * CURLY_OPEN list_contents CURLY_CLOSE
406 map ::= * BRACKET_OPEN BRACKET_CLOSE
407 map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
408 invoc ::= * value ROUND_OPEN list_contents_maybe ROUND_CLOSE
409 value ::= * STRING
410 value ::= * AT_SIGN dotted_name
411 value ::= * CARET name_list
412 value ::= * dotted_name
413 value ::= * list
414 value ::= * map
415 value ::= * ROUND_OPEN value ROUND_CLOSE
416 value ::= * invoc
417  
418 STRING shift 107
419 NAME shift 59
420 CURLY_OPEN shift 4
421 ROUND_OPEN shift 9
422 BRACKET_OPEN shift 5
423 AT_SIGN shift 29
424 CARET shift 30
425 dotted_name shift 111
426 list shift 112
427 map shift 113
428 invoc shift 115
429 value shift 50
430  
431 State 13:
432 processes ::= process_or_template NAME CURLY_OPEN * statements CURLY_CLOSE processes
433 statement ::= * dotted_name ROUND_OPEN list_contents_maybe ROUND_CLOSE name_maybe SEMICOLON
434 statement ::= * dotted_name ARROW dotted_name ROUND_OPEN list_contents_maybe ROUND_CLOSE name_maybe SEMICOLON
435 statement ::= * IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
436 statement ::= * FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
437 statement ::= * FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
438 statement ::= * BLOCK CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
439 statement ::= * TOKEN_DO CURLY_OPEN statements CURLY_CLOSE interrupt_maybe name_maybe SEMICOLON
440 statements ::= * statement
441 statements ::= * statement statements
442 dotted_name ::= * NAME
443 dotted_name ::= * NAME DOT dotted_name
444  
445 NAME shift 59
446 IF shift 67
447 FOREACH shift 72
448 BLOCK shift 77
449 TOKEN_DO shift 80
450 statement shift 20
451 statements shift 56
452 dotted_name shift 42
453  
454 State 14:
455 statement ::= * dotted_name ROUND_OPEN list_contents_maybe ROUND_CLOSE name_maybe SEMICOLON
456 statement ::= * dotted_name ARROW dotted_name ROUND_OPEN list_contents_maybe ROUND_CLOSE name_maybe SEMICOLON
457 statement ::= * IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
458 statement ::= IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN * statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
459 statement ::= * FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
460 statement ::= * FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
461 statement ::= * BLOCK CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
462 statement ::= * TOKEN_DO CURLY_OPEN statements CURLY_CLOSE interrupt_maybe name_maybe SEMICOLON
463 statements ::= * statement
464 statements ::= * statement statements
465 dotted_name ::= * NAME
466 dotted_name ::= * NAME DOT dotted_name
467  
468 NAME shift 59
469 IF shift 67
470 FOREACH shift 72
471 BLOCK shift 77
472 TOKEN_DO shift 80
473 statement shift 20
474 statements shift 69
475 dotted_name shift 42
476  
477 State 15:
478 statement ::= * dotted_name ROUND_OPEN list_contents_maybe ROUND_CLOSE name_maybe SEMICOLON
479 statement ::= * dotted_name ARROW dotted_name ROUND_OPEN list_contents_maybe ROUND_CLOSE name_maybe SEMICOLON
480 statement ::= * IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
481 statement ::= * FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
482 statement ::= * FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
483 else_maybe ::= ELSE CURLY_OPEN * statements CURLY_CLOSE
484 statement ::= * BLOCK CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
485 statement ::= * TOKEN_DO CURLY_OPEN statements CURLY_CLOSE interrupt_maybe name_maybe SEMICOLON
486 statements ::= * statement
487 statements ::= * statement statements
488 dotted_name ::= * NAME
489 dotted_name ::= * NAME DOT dotted_name
490  
491 NAME shift 59
492 IF shift 67
493 FOREACH shift 72
494 BLOCK shift 77
495 TOKEN_DO shift 80
496 statement shift 20
497 statements shift 90
498 dotted_name shift 42
499  
500 State 16:
501 statement ::= * dotted_name ROUND_OPEN list_contents_maybe ROUND_CLOSE name_maybe SEMICOLON
502 statement ::= * dotted_name ARROW dotted_name ROUND_OPEN list_contents_maybe ROUND_CLOSE name_maybe SEMICOLON
503 statement ::= * IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
504 statement ::= * FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
505 statement ::= FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN * statements CURLY_CLOSE name_maybe SEMICOLON
506 statement ::= * FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
507 statement ::= * BLOCK CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
508 statement ::= * TOKEN_DO CURLY_OPEN statements CURLY_CLOSE interrupt_maybe name_maybe SEMICOLON
509 statements ::= * statement
510 statements ::= * statement statements
511 dotted_name ::= * NAME
512 dotted_name ::= * NAME DOT dotted_name
513  
514 NAME shift 59
515 IF shift 67
516 FOREACH shift 72
517 BLOCK shift 77
518 TOKEN_DO shift 80
519 statement shift 20
520 statements shift 75
521 dotted_name shift 42
522  
523 State 17:
524 statement ::= * dotted_name ROUND_OPEN list_contents_maybe ROUND_CLOSE name_maybe SEMICOLON
525 statement ::= * dotted_name ARROW dotted_name ROUND_OPEN list_contents_maybe ROUND_CLOSE name_maybe SEMICOLON
526 statement ::= * IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
527 statement ::= * FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
528 statement ::= * FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
529 statement ::= * BLOCK CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
530 statement ::= BLOCK CURLY_OPEN * statements CURLY_CLOSE name_maybe SEMICOLON
531 statement ::= * TOKEN_DO CURLY_OPEN statements CURLY_CLOSE interrupt_maybe name_maybe SEMICOLON
532 statements ::= * statement
533 statements ::= * statement statements
534 dotted_name ::= * NAME
535 dotted_name ::= * NAME DOT dotted_name
536  
537 NAME shift 59
538 IF shift 67
539 FOREACH shift 72
540 BLOCK shift 77
541 TOKEN_DO shift 80
542 statement shift 20
543 statements shift 78
544 dotted_name shift 42
545  
546 State 18:
547 statement ::= * dotted_name ROUND_OPEN list_contents_maybe ROUND_CLOSE name_maybe SEMICOLON
548 statement ::= * dotted_name ARROW dotted_name ROUND_OPEN list_contents_maybe ROUND_CLOSE name_maybe SEMICOLON
549 statement ::= * IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
550 statement ::= * FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
551 statement ::= * FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
552 statement ::= * BLOCK CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
553 statement ::= * TOKEN_DO CURLY_OPEN statements CURLY_CLOSE interrupt_maybe name_maybe SEMICOLON
554 statement ::= TOKEN_DO CURLY_OPEN * statements CURLY_CLOSE interrupt_maybe name_maybe SEMICOLON
555 statements ::= * statement
556 statements ::= * statement statements
557 dotted_name ::= * NAME
558 dotted_name ::= * NAME DOT dotted_name
559  
560 NAME shift 59
561 IF shift 67
562 FOREACH shift 72
563 BLOCK shift 77
564 TOKEN_DO shift 80
565 statement shift 20
566 statements shift 81
567 dotted_name shift 42
568  
569 State 19:
570 statement ::= * dotted_name ROUND_OPEN list_contents_maybe ROUND_CLOSE name_maybe SEMICOLON
571 statement ::= * dotted_name ARROW dotted_name ROUND_OPEN list_contents_maybe ROUND_CLOSE name_maybe SEMICOLON
572 statement ::= * IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
573 statement ::= * FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
574 statement ::= * FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
575 statement ::= * BLOCK CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
576 interrupt_maybe ::= TOKEN_INTERRUPT CURLY_OPEN * statements CURLY_CLOSE
577 statement ::= * TOKEN_DO CURLY_OPEN statements CURLY_CLOSE interrupt_maybe name_maybe SEMICOLON
578 statements ::= * statement
579 statements ::= * statement statements
580 dotted_name ::= * NAME
581 dotted_name ::= * NAME DOT dotted_name
582  
583 NAME shift 59
584 IF shift 67
585 FOREACH shift 72
586 BLOCK shift 77
587 TOKEN_DO shift 80
588 statement shift 20
589 statements shift 83
590 dotted_name shift 42
591  
592 State 20:
593 statement ::= * dotted_name ROUND_OPEN list_contents_maybe ROUND_CLOSE name_maybe SEMICOLON
594 statement ::= * dotted_name ARROW dotted_name ROUND_OPEN list_contents_maybe ROUND_CLOSE name_maybe SEMICOLON
595 statement ::= * IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
596 statement ::= * FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
597 statement ::= * FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
598 statement ::= * BLOCK CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
599 statement ::= * TOKEN_DO CURLY_OPEN statements CURLY_CLOSE interrupt_maybe name_maybe SEMICOLON
600 statements ::= * statement
601 (20) statements ::= statement *
602 statements ::= * statement statements
603 statements ::= statement * statements
604 dotted_name ::= * NAME
605 dotted_name ::= * NAME DOT dotted_name
606  
607 NAME shift 59
608 IF shift 67
609 FOREACH shift 72
610 BLOCK shift 77
611 TOKEN_DO shift 80
612 statement shift 20
613 statements shift 124
614 dotted_name shift 42
615 {default} reduce 20
616  
617 State 21:
618 statement ::= * dotted_name ROUND_OPEN list_contents_maybe ROUND_CLOSE name_maybe SEMICOLON
619 statement ::= * dotted_name ARROW dotted_name ROUND_OPEN list_contents_maybe ROUND_CLOSE name_maybe SEMICOLON
620 statement ::= * IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
621 statement ::= * FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
622 statement ::= * FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
623 statement ::= FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN * statements CURLY_CLOSE name_maybe SEMICOLON
624 statement ::= * BLOCK CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
625 statement ::= * TOKEN_DO CURLY_OPEN statements CURLY_CLOSE interrupt_maybe name_maybe SEMICOLON
626 statements ::= * statement
627 statements ::= * statement statements
628 dotted_name ::= * NAME
629 dotted_name ::= * NAME DOT dotted_name
630  
631 NAME shift 59
632 IF shift 67
633 FOREACH shift 72
634 BLOCK shift 77
635 TOKEN_DO shift 80
636 statement shift 20
637 statements shift 88
638 dotted_name shift 42
639  
640 State 22:
641 statement ::= * dotted_name ROUND_OPEN list_contents_maybe ROUND_CLOSE name_maybe SEMICOLON
642 statement ::= * dotted_name ARROW dotted_name ROUND_OPEN list_contents_maybe ROUND_CLOSE name_maybe SEMICOLON
643 statement ::= * IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
644 statement ::= * FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
645 statement ::= * FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
646 elif ::= ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN * statements CURLY_CLOSE
647 elif ::= ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN * statements CURLY_CLOSE elif
648 statement ::= * BLOCK CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
649 statement ::= * TOKEN_DO CURLY_OPEN statements CURLY_CLOSE interrupt_maybe name_maybe SEMICOLON
650 statements ::= * statement
651 statements ::= * statement statements
652 dotted_name ::= * NAME
653 dotted_name ::= * NAME DOT dotted_name
654  
655 NAME shift 59
656 IF shift 67
657 FOREACH shift 72
658 BLOCK shift 77
659 TOKEN_DO shift 80
660 statement shift 20
661 statements shift 93
662 dotted_name shift 42
663  
664 State 23:
665 (1) processes ::= *
666 processes ::= * INCLUDE STRING processes
667 processes ::= INCLUDE STRING * processes
668 processes ::= * INCLUDE_GUARD STRING processes
669 processes ::= * process_or_template NAME CURLY_OPEN statements CURLY_CLOSE processes
670 process_or_template ::= * PROCESS
671 process_or_template ::= * TEMPLATE
672  
673 INCLUDE shift 52
674 INCLUDE_GUARD shift 53
675 PROCESS shift 97
676 TEMPLATE shift 98
677 processes shift 94
678 process_or_template shift 54
679 {default} reduce 1
680  
681 State 24:
682 (1) processes ::= *
683 processes ::= * INCLUDE STRING processes
684 processes ::= * INCLUDE_GUARD STRING processes
685 processes ::= INCLUDE_GUARD STRING * processes
686 processes ::= * process_or_template NAME CURLY_OPEN statements CURLY_CLOSE processes
687 process_or_template ::= * PROCESS
688 process_or_template ::= * TEMPLATE
689  
690 INCLUDE shift 52
691 INCLUDE_GUARD shift 53
692 PROCESS shift 97
693 TEMPLATE shift 98
694 processes shift 95
695 process_or_template shift 54
696 {default} reduce 1
697  
698 State 25:
699 (1) processes ::= *
700 processes ::= * INCLUDE STRING processes
701 processes ::= * INCLUDE_GUARD STRING processes
702 processes ::= * process_or_template NAME CURLY_OPEN statements CURLY_CLOSE processes
703 processes ::= process_or_template NAME CURLY_OPEN statements CURLY_CLOSE * processes
704 process_or_template ::= * PROCESS
705 process_or_template ::= * TEMPLATE
706  
707 INCLUDE shift 52
708 INCLUDE_GUARD shift 53
709 PROCESS shift 97
710 TEMPLATE shift 98
711 processes shift 96
712 process_or_template shift 54
713 {default} reduce 1
714  
715 State 26:
716 statement ::= IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE * elif_maybe else_maybe name_maybe SEMICOLON
717 (10) elif_maybe ::= *
718 elif_maybe ::= * elif
719 elif ::= * ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE
720 elif ::= * ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif
721  
722 ELIF shift 91
723 elif_maybe shift 34
724 elif shift 128
725 {default} reduce 10
726  
727 State 27:
728 statement ::= dotted_name ROUND_OPEN list_contents_maybe ROUND_CLOSE * name_maybe SEMICOLON
729 (45) name_maybe ::= *
730 name_maybe ::= * NAME
731  
732 NAME shift 100
733 name_maybe shift 58
734 {default} reduce 45
735  
736 State 28:
737 dotted_name ::= * NAME
738 dotted_name ::= * NAME DOT dotted_name
739 dotted_name ::= NAME DOT * dotted_name
740  
741 NAME shift 59
742 dotted_name shift 101
743  
744 State 29:
745 dotted_name ::= * NAME
746 dotted_name ::= * NAME DOT dotted_name
747 value ::= AT_SIGN * dotted_name
748  
749 NAME shift 59
750 dotted_name shift 108
751  
752 State 30:
753 name_list ::= * NAME
754 name_list ::= * NAME DOT name_list
755 value ::= CARET * name_list
756  
757 NAME shift 61
758 name_list shift 110
759  
760 State 31:
761 name_list ::= * NAME
762 name_list ::= * NAME DOT name_list
763 name_list ::= NAME DOT * name_list
764  
765 NAME shift 61
766 name_list shift 109
767  
768 State 32:
769 statement ::= dotted_name ARROW * dotted_name ROUND_OPEN list_contents_maybe ROUND_CLOSE name_maybe SEMICOLON
770 dotted_name ::= * NAME
771 dotted_name ::= * NAME DOT dotted_name
772  
773 NAME shift 59
774 dotted_name shift 64
775  
776 State 33:
777 statement ::= dotted_name ARROW dotted_name ROUND_OPEN list_contents_maybe ROUND_CLOSE * name_maybe SEMICOLON
778 (45) name_maybe ::= *
779 name_maybe ::= * NAME
780  
781 NAME shift 100
782 name_maybe shift 66
783 {default} reduce 45
784  
785 State 34:
786 statement ::= IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe * else_maybe name_maybe SEMICOLON
787 (14) else_maybe ::= *
788 else_maybe ::= * ELSE CURLY_OPEN statements CURLY_CLOSE
789  
790 ELSE shift 71
791 else_maybe shift 35
792 {default} reduce 14
793  
794 State 35:
795 statement ::= IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe * name_maybe SEMICOLON
796 (45) name_maybe ::= *
797 name_maybe ::= * NAME
798  
799 NAME shift 100
800 name_maybe shift 70
801 {default} reduce 45
802  
803 State 36:
804 statement ::= FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE * name_maybe SEMICOLON
805 (45) name_maybe ::= *
806 name_maybe ::= * NAME
807  
808 NAME shift 100
809 name_maybe shift 76
810 {default} reduce 45
811  
812 State 37:
813 statement ::= BLOCK CURLY_OPEN statements CURLY_CLOSE * name_maybe SEMICOLON
814 (45) name_maybe ::= *
815 name_maybe ::= * NAME
816  
817 NAME shift 100
818 name_maybe shift 79
819 {default} reduce 45
820  
821 State 38:
822 (17) interrupt_maybe ::= *
823 interrupt_maybe ::= * TOKEN_INTERRUPT CURLY_OPEN statements CURLY_CLOSE
824 statement ::= TOKEN_DO CURLY_OPEN statements CURLY_CLOSE * interrupt_maybe name_maybe SEMICOLON
825  
826 TOKEN_INTERRUPT shift 82
827 interrupt_maybe shift 39
828 {default} reduce 17
829  
830 State 39:
831 statement ::= TOKEN_DO CURLY_OPEN statements CURLY_CLOSE interrupt_maybe * name_maybe SEMICOLON
832 (45) name_maybe ::= *
833 name_maybe ::= * NAME
834  
835 NAME shift 100
836 name_maybe shift 84
837 {default} reduce 45
838  
839 State 40:
840 statement ::= FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE * name_maybe SEMICOLON
841 (45) name_maybe ::= *
842 name_maybe ::= * NAME
843  
844 NAME shift 100
845 name_maybe shift 89
846 {default} reduce 45
847  
848 State 41:
849 elif ::= * ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE
850 (12) elif ::= ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE *
851 elif ::= * ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif
852 elif ::= ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE * elif
853  
854 ELIF shift 91
855 elif shift 129
856 {default} reduce 12
857  
858 State 42:
859 statement ::= dotted_name * ROUND_OPEN list_contents_maybe ROUND_CLOSE name_maybe SEMICOLON
860 statement ::= dotted_name * ARROW dotted_name ROUND_OPEN list_contents_maybe ROUND_CLOSE name_maybe SEMICOLON
861  
862 ROUND_OPEN shift 1
863 ARROW shift 32
864  
865 State 43:
866 (28) list_contents ::= value *
867 list_contents ::= value * COMMA list_contents
868 invoc ::= value * ROUND_OPEN list_contents_maybe ROUND_CLOSE
869  
870 ROUND_OPEN shift 2
871 COMMA shift 6
872 {default} reduce 28
873  
874 State 44:
875 map_contents ::= value * COLON value
876 map_contents ::= value * COLON value COMMA map_contents
877 invoc ::= value * ROUND_OPEN list_contents_maybe ROUND_CLOSE
878  
879 ROUND_OPEN shift 2
880 COLON shift 8
881  
882 State 45:
883 (32) map_contents ::= value COLON value *
884 map_contents ::= value COLON value * COMMA map_contents
885 invoc ::= value * ROUND_OPEN list_contents_maybe ROUND_CLOSE
886  
887 ROUND_OPEN shift 2
888 COMMA shift 7
889 {default} reduce 32
890  
891 State 46:
892 invoc ::= value * ROUND_OPEN list_contents_maybe ROUND_CLOSE
893 value ::= ROUND_OPEN value * ROUND_CLOSE
894  
895 ROUND_OPEN shift 2
896 ROUND_CLOSE shift 116
897  
898 State 47:
899 statement ::= IF ROUND_OPEN value * ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
900 invoc ::= value * ROUND_OPEN list_contents_maybe ROUND_CLOSE
901  
902 ROUND_OPEN shift 2
903 ROUND_CLOSE shift 68
904  
905 State 48:
906 statement ::= FOREACH ROUND_OPEN value * AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
907 statement ::= FOREACH ROUND_OPEN value * AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
908 invoc ::= value * ROUND_OPEN list_contents_maybe ROUND_CLOSE
909  
910 ROUND_OPEN shift 2
911 AS shift 73
912  
913 State 49:
914 statement ::= FOREACH ROUND_OPEN value AS NAME * ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
915 statement ::= FOREACH ROUND_OPEN value AS NAME * COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
916  
917 ROUND_CLOSE shift 74
918 COLON shift 85
919  
920 State 50:
921 elif ::= ELIF ROUND_OPEN value * ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE
922 elif ::= ELIF ROUND_OPEN value * ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif
923 invoc ::= value * ROUND_OPEN list_contents_maybe ROUND_CLOSE
924  
925 ROUND_OPEN shift 2
926 ROUND_CLOSE shift 92
927  
928 State 51:
929 (0) input ::= processes *
930  
931 $ reduce 0
932  
933 State 52:
934 processes ::= INCLUDE * STRING processes
935  
936 STRING shift 23
937  
938 State 53:
939 processes ::= INCLUDE_GUARD * STRING processes
940  
941 STRING shift 24
942  
943 State 54:
944 processes ::= process_or_template * NAME CURLY_OPEN statements CURLY_CLOSE processes
945  
946 NAME shift 55
947  
948 State 55:
949 processes ::= process_or_template NAME * CURLY_OPEN statements CURLY_CLOSE processes
950  
951 CURLY_OPEN shift 13
952  
953 State 56:
954 processes ::= process_or_template NAME CURLY_OPEN statements * CURLY_CLOSE processes
955  
956 CURLY_CLOSE shift 25
957  
958 State 57:
959 statement ::= dotted_name ROUND_OPEN list_contents_maybe * ROUND_CLOSE name_maybe SEMICOLON
960  
961 ROUND_CLOSE shift 27
962  
963 State 58:
964 statement ::= dotted_name ROUND_OPEN list_contents_maybe ROUND_CLOSE name_maybe * SEMICOLON
965  
966 SEMICOLON shift 99
967  
968 State 59:
969 (22) dotted_name ::= NAME *
970 dotted_name ::= NAME * DOT dotted_name
971  
972 DOT shift 28
973 {default} reduce 22
974  
975 State 60:
976 list ::= CURLY_OPEN list_contents * CURLY_CLOSE
977  
978 CURLY_CLOSE shift 105
979  
980 State 61:
981 (24) name_list ::= NAME *
982 name_list ::= NAME * DOT name_list
983  
984 DOT shift 31
985 {default} reduce 24
986  
987 State 62:
988 invoc ::= value ROUND_OPEN list_contents_maybe * ROUND_CLOSE
989  
990 ROUND_CLOSE shift 114
991  
992 State 63:
993 map ::= BRACKET_OPEN map_contents * BRACKET_CLOSE
994  
995 BRACKET_CLOSE shift 118
996  
997 State 64:
998 statement ::= dotted_name ARROW dotted_name * ROUND_OPEN list_contents_maybe ROUND_CLOSE name_maybe SEMICOLON
999  
1000 ROUND_OPEN shift 3
1001  
1002 State 65:
1003 statement ::= dotted_name ARROW dotted_name ROUND_OPEN list_contents_maybe * ROUND_CLOSE name_maybe SEMICOLON
1004  
1005 ROUND_CLOSE shift 33
1006  
1007 State 66:
1008 statement ::= dotted_name ARROW dotted_name ROUND_OPEN list_contents_maybe ROUND_CLOSE name_maybe * SEMICOLON
1009  
1010 SEMICOLON shift 119
1011  
1012 State 67:
1013 statement ::= IF * ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
1014  
1015 ROUND_OPEN shift 10
1016  
1017 State 68:
1018 statement ::= IF ROUND_OPEN value ROUND_CLOSE * CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
1019  
1020 CURLY_OPEN shift 14
1021  
1022 State 69:
1023 statement ::= IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements * CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
1024  
1025 CURLY_CLOSE shift 26
1026  
1027 State 70:
1028 statement ::= IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe * SEMICOLON
1029  
1030 SEMICOLON shift 120
1031  
1032 State 71:
1033 else_maybe ::= ELSE * CURLY_OPEN statements CURLY_CLOSE
1034  
1035 CURLY_OPEN shift 15
1036  
1037 State 72:
1038 statement ::= FOREACH * ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
1039 statement ::= FOREACH * ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
1040  
1041 ROUND_OPEN shift 11
1042  
1043 State 73:
1044 statement ::= FOREACH ROUND_OPEN value AS * NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
1045 statement ::= FOREACH ROUND_OPEN value AS * NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
1046  
1047 NAME shift 49
1048  
1049 State 74:
1050 statement ::= FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE * CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
1051  
1052 CURLY_OPEN shift 16
1053  
1054 State 75:
1055 statement ::= FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements * CURLY_CLOSE name_maybe SEMICOLON
1056  
1057 CURLY_CLOSE shift 36
1058  
1059 State 76:
1060 statement ::= FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe * SEMICOLON
1061  
1062 SEMICOLON shift 121
1063  
1064 State 77:
1065 statement ::= BLOCK * CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
1066  
1067 CURLY_OPEN shift 17
1068  
1069 State 78:
1070 statement ::= BLOCK CURLY_OPEN statements * CURLY_CLOSE name_maybe SEMICOLON
1071  
1072 CURLY_CLOSE shift 37
1073  
1074 State 79:
1075 statement ::= BLOCK CURLY_OPEN statements CURLY_CLOSE name_maybe * SEMICOLON
1076  
1077 SEMICOLON shift 122
1078  
1079 State 80:
1080 statement ::= TOKEN_DO * CURLY_OPEN statements CURLY_CLOSE interrupt_maybe name_maybe SEMICOLON
1081  
1082 CURLY_OPEN shift 18
1083  
1084 State 81:
1085 statement ::= TOKEN_DO CURLY_OPEN statements * CURLY_CLOSE interrupt_maybe name_maybe SEMICOLON
1086  
1087 CURLY_CLOSE shift 38
1088  
1089 State 82:
1090 interrupt_maybe ::= TOKEN_INTERRUPT * CURLY_OPEN statements CURLY_CLOSE
1091  
1092 CURLY_OPEN shift 19
1093  
1094 State 83:
1095 interrupt_maybe ::= TOKEN_INTERRUPT CURLY_OPEN statements * CURLY_CLOSE
1096  
1097 CURLY_CLOSE shift 123
1098  
1099 State 84:
1100 statement ::= TOKEN_DO CURLY_OPEN statements CURLY_CLOSE interrupt_maybe name_maybe * SEMICOLON
1101  
1102 SEMICOLON shift 125
1103  
1104 State 85:
1105 statement ::= FOREACH ROUND_OPEN value AS NAME COLON * NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
1106  
1107 NAME shift 86
1108  
1109 State 86:
1110 statement ::= FOREACH ROUND_OPEN value AS NAME COLON NAME * ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
1111  
1112 ROUND_CLOSE shift 87
1113  
1114 State 87:
1115 statement ::= FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE * CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
1116  
1117 CURLY_OPEN shift 21
1118  
1119 State 88:
1120 statement ::= FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements * CURLY_CLOSE name_maybe SEMICOLON
1121  
1122 CURLY_CLOSE shift 40
1123  
1124 State 89:
1125 statement ::= FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe * SEMICOLON
1126  
1127 SEMICOLON shift 126
1128  
1129 State 90:
1130 else_maybe ::= ELSE CURLY_OPEN statements * CURLY_CLOSE
1131  
1132 CURLY_CLOSE shift 127
1133  
1134 State 91:
1135 elif ::= ELIF * ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE
1136 elif ::= ELIF * ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif
1137  
1138 ROUND_OPEN shift 12
1139  
1140 State 92:
1141 elif ::= ELIF ROUND_OPEN value ROUND_CLOSE * CURLY_OPEN statements CURLY_CLOSE
1142 elif ::= ELIF ROUND_OPEN value ROUND_CLOSE * CURLY_OPEN statements CURLY_CLOSE elif
1143  
1144 CURLY_OPEN shift 22
1145  
1146 State 93:
1147 elif ::= ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements * CURLY_CLOSE
1148 elif ::= ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements * CURLY_CLOSE elif
1149  
1150 CURLY_CLOSE shift 41
1151  
1152 State 94:
1153 (2) processes ::= INCLUDE STRING processes *
1154  
1155 {default} reduce 2
1156  
1157 State 95:
1158 (3) processes ::= INCLUDE_GUARD STRING processes *
1159  
1160 {default} reduce 3
1161  
1162 State 96:
1163 (4) processes ::= process_or_template NAME CURLY_OPEN statements CURLY_CLOSE processes *
1164  
1165 {default} reduce 4
1166  
1167 State 97:
1168 (47) process_or_template ::= PROCESS *
1169  
1170 {default} reduce 47
1171  
1172 State 98:
1173 (48) process_or_template ::= TEMPLATE *
1174  
1175 {default} reduce 48
1176  
1177 State 99:
1178 (5) statement ::= dotted_name ROUND_OPEN list_contents_maybe ROUND_CLOSE name_maybe SEMICOLON *
1179  
1180 {default} reduce 5
1181  
1182 State 100:
1183 (46) name_maybe ::= NAME *
1184  
1185 {default} reduce 46
1186  
1187 State 101:
1188 (23) dotted_name ::= NAME DOT dotted_name *
1189  
1190 {default} reduce 23
1191  
1192 State 102:
1193 (27) list_contents_maybe ::= list_contents *
1194  
1195 {default} reduce 27
1196  
1197 State 103:
1198 (29) list_contents ::= value COMMA list_contents *
1199  
1200 {default} reduce 29
1201  
1202 State 104:
1203 (30) list ::= CURLY_OPEN CURLY_CLOSE *
1204  
1205 {default} reduce 30
1206  
1207 State 105:
1208 (31) list ::= CURLY_OPEN list_contents CURLY_CLOSE *
1209  
1210 {default} reduce 31
1211  
1212 State 106:
1213 (33) map_contents ::= value COLON value COMMA map_contents *
1214  
1215 {default} reduce 33
1216  
1217 State 107:
1218 (37) value ::= STRING *
1219  
1220 {default} reduce 37
1221  
1222 State 108:
1223 (38) value ::= AT_SIGN dotted_name *
1224  
1225 {default} reduce 38
1226  
1227 State 109:
1228 (25) name_list ::= NAME DOT name_list *
1229  
1230 {default} reduce 25
1231  
1232 State 110:
1233 (39) value ::= CARET name_list *
1234  
1235 {default} reduce 39
1236  
1237 State 111:
1238 (40) value ::= dotted_name *
1239  
1240 {default} reduce 40
1241  
1242 State 112:
1243 (41) value ::= list *
1244  
1245 {default} reduce 41
1246  
1247 State 113:
1248 (42) value ::= map *
1249  
1250 {default} reduce 42
1251  
1252 State 114:
1253 (36) invoc ::= value ROUND_OPEN list_contents_maybe ROUND_CLOSE *
1254  
1255 {default} reduce 36
1256  
1257 State 115:
1258 (44) value ::= invoc *
1259  
1260 {default} reduce 44
1261  
1262 State 116:
1263 (43) value ::= ROUND_OPEN value ROUND_CLOSE *
1264  
1265 {default} reduce 43
1266  
1267 State 117:
1268 (34) map ::= BRACKET_OPEN BRACKET_CLOSE *
1269  
1270 {default} reduce 34
1271  
1272 State 118:
1273 (35) map ::= BRACKET_OPEN map_contents BRACKET_CLOSE *
1274  
1275 {default} reduce 35
1276  
1277 State 119:
1278 (6) statement ::= dotted_name ARROW dotted_name ROUND_OPEN list_contents_maybe ROUND_CLOSE name_maybe SEMICOLON *
1279  
1280 {default} reduce 6
1281  
1282 State 120:
1283 (7) statement ::= IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON *
1284  
1285 {default} reduce 7
1286  
1287 State 121:
1288 (8) statement ::= FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON *
1289  
1290 {default} reduce 8
1291  
1292 State 122:
1293 (16) statement ::= BLOCK CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON *
1294  
1295 {default} reduce 16
1296  
1297 State 123:
1298 (18) interrupt_maybe ::= TOKEN_INTERRUPT CURLY_OPEN statements CURLY_CLOSE *
1299  
1300 {default} reduce 18
1301  
1302 State 124:
1303 (21) statements ::= statement statements *
1304  
1305 {default} reduce 21
1306  
1307 State 125:
1308 (19) statement ::= TOKEN_DO CURLY_OPEN statements CURLY_CLOSE interrupt_maybe name_maybe SEMICOLON *
1309  
1310 {default} reduce 19
1311  
1312 State 126:
1313 (9) statement ::= FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON *
1314  
1315 {default} reduce 9
1316  
1317 State 127:
1318 (15) else_maybe ::= ELSE CURLY_OPEN statements CURLY_CLOSE *
1319  
1320 {default} reduce 15
1321  
1322 State 128:
1323 (11) elif_maybe ::= elif *
1324  
1325 {default} reduce 11
1326  
1327 State 129:
1328 (13) elif ::= ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif *
1329  
1330 {default} reduce 13
1331  
1332 ----------------------------------------------------
1333 Symbols:
1334 0: $:
1335 1: INCLUDE
1336 2: STRING
1337 3: INCLUDE_GUARD
1338 4: NAME
1339 5: CURLY_OPEN
1340 6: CURLY_CLOSE
1341 7: ROUND_OPEN
1342 8: ROUND_CLOSE
1343 9: SEMICOLON
1344 10: ARROW
1345 11: IF
1346 12: FOREACH
1347 13: AS
1348 14: COLON
1349 15: ELIF
1350 16: ELSE
1351 17: BLOCK
1352 18: TOKEN_INTERRUPT
1353 19: TOKEN_DO
1354 20: DOT
1355 21: COMMA
1356 22: BRACKET_OPEN
1357 23: BRACKET_CLOSE
1358 24: AT_SIGN
1359 25: CARET
1360 26: PROCESS
1361 27: TEMPLATE
1362 28: error:
1363 29: processes: <lambda> INCLUDE INCLUDE_GUARD PROCESS TEMPLATE
1364 30: statement: NAME IF FOREACH BLOCK TOKEN_DO
1365 31: elif_maybe: <lambda> ELIF
1366 32: elif: ELIF
1367 33: else_maybe: <lambda> ELSE
1368 34: statements: NAME IF FOREACH BLOCK TOKEN_DO
1369 35: dotted_name: NAME
1370 36: list_contents_maybe: <lambda> STRING NAME CURLY_OPEN ROUND_OPEN BRACKET_OPEN AT_SIGN CARET
1371 37: list_contents: STRING NAME CURLY_OPEN ROUND_OPEN BRACKET_OPEN AT_SIGN CARET
1372 38: list: CURLY_OPEN
1373 39: map_contents: STRING NAME CURLY_OPEN ROUND_OPEN BRACKET_OPEN AT_SIGN CARET
1374 40: map: BRACKET_OPEN
1375 41: invoc: STRING NAME CURLY_OPEN ROUND_OPEN BRACKET_OPEN AT_SIGN CARET
1376 42: value: STRING NAME CURLY_OPEN ROUND_OPEN BRACKET_OPEN AT_SIGN CARET
1377 43: name_maybe: <lambda> NAME
1378 44: process_or_template: PROCESS TEMPLATE
1379 45: name_list: NAME
1380 46: interrupt_maybe: <lambda> TOKEN_INTERRUPT
1381 47: input: INCLUDE INCLUDE_GUARD PROCESS TEMPLATE