| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719 |
- State 0:
- input ::= * processes
- processes ::= * process_or_template NAME CURLY_OPEN statements CURLY_CLOSE
- processes ::= * process_or_template NAME CURLY_OPEN statements CURLY_CLOSE processes
- process_or_template ::= * PROCESS
- process_or_template ::= * TEMPLATE
- PROCESS shift 52
- TEMPLATE shift 53
- processes shift 25
- process_or_template shift 26
- input accept
- State 1:
- statement ::= dotted_name ROUND_OPEN * statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
- dotted_name ::= * NAME
- dotted_name ::= * NAME DOT dotted_name
- (16) statement_args_maybe ::= *
- statement_args_maybe ::= * list_contents
- list_contents ::= * value
- list_contents ::= * value COMMA list_contents
- list ::= * CURLY_OPEN CURLY_CLOSE
- list ::= * CURLY_OPEN list_contents CURLY_CLOSE
- map ::= * BRACKET_OPEN BRACKET_CLOSE
- map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
- value ::= * STRING
- value ::= * dotted_name
- value ::= * list
- value ::= * map
- NAME shift 31
- CURLY_OPEN shift 3
- BRACKET_OPEN shift 4
- STRING shift 62
- dotted_name shift 63
- statement_args_maybe shift 29
- list_contents shift 57
- list shift 64
- map shift 65
- value shift 32
- {default} reduce 16
- State 2:
- statement ::= dotted_name ARROW dotted_name ROUND_OPEN * statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
- dotted_name ::= * NAME
- dotted_name ::= * NAME DOT dotted_name
- (16) statement_args_maybe ::= *
- statement_args_maybe ::= * list_contents
- list_contents ::= * value
- list_contents ::= * value COMMA list_contents
- list ::= * CURLY_OPEN CURLY_CLOSE
- list ::= * CURLY_OPEN list_contents CURLY_CLOSE
- map ::= * BRACKET_OPEN BRACKET_CLOSE
- map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
- value ::= * STRING
- value ::= * dotted_name
- value ::= * list
- value ::= * map
- NAME shift 31
- CURLY_OPEN shift 3
- BRACKET_OPEN shift 4
- STRING shift 62
- dotted_name shift 63
- statement_args_maybe shift 38
- list_contents shift 57
- list shift 64
- map shift 65
- value shift 32
- {default} reduce 16
- State 3:
- dotted_name ::= * NAME
- dotted_name ::= * NAME DOT dotted_name
- list_contents ::= * value
- list_contents ::= * value COMMA list_contents
- list ::= * CURLY_OPEN CURLY_CLOSE
- list ::= CURLY_OPEN * CURLY_CLOSE
- list ::= * CURLY_OPEN list_contents CURLY_CLOSE
- list ::= CURLY_OPEN * list_contents CURLY_CLOSE
- map ::= * BRACKET_OPEN BRACKET_CLOSE
- map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
- value ::= * STRING
- value ::= * dotted_name
- value ::= * list
- value ::= * map
- NAME shift 31
- CURLY_OPEN shift 3
- CURLY_CLOSE shift 59
- BRACKET_OPEN shift 4
- STRING shift 62
- dotted_name shift 63
- list_contents shift 33
- list shift 64
- map shift 65
- value shift 32
- State 4:
- dotted_name ::= * NAME
- dotted_name ::= * NAME DOT dotted_name
- list ::= * CURLY_OPEN CURLY_CLOSE
- list ::= * CURLY_OPEN list_contents CURLY_CLOSE
- map_contents ::= * value COLON value
- map_contents ::= * value COLON value COMMA map_contents
- map ::= * BRACKET_OPEN BRACKET_CLOSE
- map ::= BRACKET_OPEN * BRACKET_CLOSE
- map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
- map ::= BRACKET_OPEN * map_contents BRACKET_CLOSE
- value ::= * STRING
- value ::= * dotted_name
- value ::= * list
- value ::= * map
- NAME shift 31
- CURLY_OPEN shift 3
- BRACKET_OPEN shift 4
- BRACKET_CLOSE shift 66
- STRING shift 62
- dotted_name shift 63
- list shift 64
- map_contents shift 36
- map shift 65
- value shift 34
- State 5:
- dotted_name ::= * NAME
- dotted_name ::= * NAME DOT dotted_name
- list_contents ::= * value
- list_contents ::= * value COMMA list_contents
- list_contents ::= value COMMA * list_contents
- list ::= * CURLY_OPEN CURLY_CLOSE
- list ::= * CURLY_OPEN list_contents CURLY_CLOSE
- map ::= * BRACKET_OPEN BRACKET_CLOSE
- map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
- value ::= * STRING
- value ::= * dotted_name
- value ::= * list
- value ::= * map
- NAME shift 31
- CURLY_OPEN shift 3
- BRACKET_OPEN shift 4
- STRING shift 62
- dotted_name shift 63
- list_contents shift 58
- list shift 64
- map shift 65
- value shift 32
- State 6:
- dotted_name ::= * NAME
- dotted_name ::= * NAME DOT dotted_name
- list ::= * CURLY_OPEN CURLY_CLOSE
- list ::= * CURLY_OPEN list_contents CURLY_CLOSE
- map_contents ::= * value COLON value
- map_contents ::= * value COLON value COMMA map_contents
- map_contents ::= value COLON value COMMA * map_contents
- map ::= * BRACKET_OPEN BRACKET_CLOSE
- map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
- value ::= * STRING
- value ::= * dotted_name
- value ::= * list
- value ::= * map
- NAME shift 31
- CURLY_OPEN shift 3
- BRACKET_OPEN shift 4
- STRING shift 62
- dotted_name shift 63
- list shift 64
- map_contents shift 61
- map shift 65
- value shift 34
- State 7:
- dotted_name ::= * NAME
- dotted_name ::= * NAME DOT dotted_name
- list ::= * CURLY_OPEN CURLY_CLOSE
- list ::= * CURLY_OPEN list_contents CURLY_CLOSE
- map_contents ::= value COLON * value
- map_contents ::= value COLON * value COMMA map_contents
- map ::= * BRACKET_OPEN BRACKET_CLOSE
- map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
- value ::= * STRING
- value ::= * dotted_name
- value ::= * list
- value ::= * map
- NAME shift 31
- CURLY_OPEN shift 3
- BRACKET_OPEN shift 4
- STRING shift 62
- dotted_name shift 63
- list shift 64
- map shift 65
- value shift 35
- State 8:
- statement ::= IF ROUND_OPEN * value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
- dotted_name ::= * NAME
- dotted_name ::= * NAME DOT dotted_name
- list ::= * CURLY_OPEN CURLY_CLOSE
- list ::= * CURLY_OPEN list_contents CURLY_CLOSE
- map ::= * BRACKET_OPEN BRACKET_CLOSE
- map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
- value ::= * STRING
- value ::= * dotted_name
- value ::= * list
- value ::= * map
- NAME shift 31
- CURLY_OPEN shift 3
- BRACKET_OPEN shift 4
- STRING shift 62
- dotted_name shift 63
- list shift 64
- map shift 65
- value shift 41
- State 9:
- elif ::= ELIF ROUND_OPEN * value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE
- elif ::= ELIF ROUND_OPEN * value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif
- dotted_name ::= * NAME
- dotted_name ::= * NAME DOT dotted_name
- list ::= * CURLY_OPEN CURLY_CLOSE
- list ::= * CURLY_OPEN list_contents CURLY_CLOSE
- map ::= * BRACKET_OPEN BRACKET_CLOSE
- map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
- value ::= * STRING
- value ::= * dotted_name
- value ::= * list
- value ::= * map
- NAME shift 31
- CURLY_OPEN shift 3
- BRACKET_OPEN shift 4
- STRING shift 62
- dotted_name shift 63
- list shift 64
- map shift 65
- value shift 48
- State 10:
- processes ::= process_or_template NAME CURLY_OPEN * statements CURLY_CLOSE
- processes ::= process_or_template NAME CURLY_OPEN * statements CURLY_CLOSE processes
- statement ::= * dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
- statement ::= * dotted_name ARROW dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
- statement ::= * IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
- statements ::= * statement
- statements ::= * statement statements
- dotted_name ::= * NAME
- dotted_name ::= * NAME DOT dotted_name
- NAME shift 31
- IF shift 40
- statement shift 13
- statements shift 28
- dotted_name shift 24
- State 11:
- statement ::= * dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
- statement ::= * dotted_name ARROW dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
- statement ::= * IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
- statement ::= IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN * statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
- statements ::= * statement
- statements ::= * statement statements
- dotted_name ::= * NAME
- dotted_name ::= * NAME DOT dotted_name
- NAME shift 31
- IF shift 40
- statement shift 13
- statements shift 43
- dotted_name shift 24
- State 12:
- statement ::= * dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
- statement ::= * dotted_name ARROW dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
- statement ::= * IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
- else_maybe ::= ELSE CURLY_OPEN * statements CURLY_CLOSE
- statements ::= * statement
- statements ::= * statement statements
- dotted_name ::= * NAME
- dotted_name ::= * NAME DOT dotted_name
- NAME shift 31
- IF shift 40
- statement shift 13
- statements shift 46
- dotted_name shift 24
- State 13:
- statement ::= * dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
- statement ::= * dotted_name ARROW dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
- statement ::= * IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
- statements ::= * statement
- (12) statements ::= statement *
- statements ::= * statement statements
- statements ::= statement * statements
- dotted_name ::= * NAME
- dotted_name ::= * NAME DOT dotted_name
- NAME shift 31
- IF shift 40
- statement shift 13
- statements shift 71
- dotted_name shift 24
- {default} reduce 12
- State 14:
- statement ::= * dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
- statement ::= * dotted_name ARROW dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
- statement ::= * IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
- elif ::= ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN * statements CURLY_CLOSE
- elif ::= ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN * statements CURLY_CLOSE elif
- statements ::= * statement
- statements ::= * statement statements
- dotted_name ::= * NAME
- dotted_name ::= * NAME DOT dotted_name
- NAME shift 31
- IF shift 40
- statement shift 13
- statements shift 50
- dotted_name shift 24
- State 15:
- processes ::= * process_or_template NAME CURLY_OPEN statements CURLY_CLOSE
- (1) processes ::= process_or_template NAME CURLY_OPEN statements CURLY_CLOSE *
- processes ::= * process_or_template NAME CURLY_OPEN statements CURLY_CLOSE processes
- processes ::= process_or_template NAME CURLY_OPEN statements CURLY_CLOSE * processes
- process_or_template ::= * PROCESS
- process_or_template ::= * TEMPLATE
- PROCESS shift 52
- TEMPLATE shift 53
- processes shift 51
- process_or_template shift 26
- {default} reduce 1
- State 16:
- statement ::= IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE * elif_maybe else_maybe name_maybe SEMICOLON
- (6) elif_maybe ::= *
- elif_maybe ::= * elif
- elif ::= * ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE
- elif ::= * ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif
- ELIF shift 47
- elif_maybe shift 21
- elif shift 72
- {default} reduce 6
- State 17:
- statement ::= dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE * name_maybe SEMICOLON
- (30) name_maybe ::= *
- name_maybe ::= * NAME
- NAME shift 55
- name_maybe shift 30
- {default} reduce 30
- State 18:
- dotted_name ::= * NAME
- dotted_name ::= * NAME DOT dotted_name
- dotted_name ::= NAME DOT * dotted_name
- NAME shift 31
- dotted_name shift 56
- State 19:
- statement ::= dotted_name ARROW * dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
- dotted_name ::= * NAME
- dotted_name ::= * NAME DOT dotted_name
- NAME shift 31
- dotted_name shift 37
- State 20:
- statement ::= dotted_name ARROW dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE * name_maybe SEMICOLON
- (30) name_maybe ::= *
- name_maybe ::= * NAME
- NAME shift 55
- name_maybe shift 39
- {default} reduce 30
- State 21:
- statement ::= IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe * else_maybe name_maybe SEMICOLON
- (10) else_maybe ::= *
- else_maybe ::= * ELSE CURLY_OPEN statements CURLY_CLOSE
- ELSE shift 45
- else_maybe shift 22
- {default} reduce 10
- State 22:
- statement ::= IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe * name_maybe SEMICOLON
- (30) name_maybe ::= *
- name_maybe ::= * NAME
- NAME shift 55
- name_maybe shift 44
- {default} reduce 30
- State 23:
- elif ::= * ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE
- (8) elif ::= ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE *
- elif ::= * ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif
- elif ::= ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE * elif
- ELIF shift 47
- elif shift 73
- {default} reduce 8
- State 24:
- statement ::= dotted_name * ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
- statement ::= dotted_name * ARROW dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
- ROUND_OPEN shift 1
- ARROW shift 19
- State 25:
- (0) input ::= processes *
- $ reduce 0
- State 26:
- processes ::= process_or_template * NAME CURLY_OPEN statements CURLY_CLOSE
- processes ::= process_or_template * NAME CURLY_OPEN statements CURLY_CLOSE processes
- NAME shift 27
- State 27:
- processes ::= process_or_template NAME * CURLY_OPEN statements CURLY_CLOSE
- processes ::= process_or_template NAME * CURLY_OPEN statements CURLY_CLOSE processes
- CURLY_OPEN shift 10
- State 28:
- processes ::= process_or_template NAME CURLY_OPEN statements * CURLY_CLOSE
- processes ::= process_or_template NAME CURLY_OPEN statements * CURLY_CLOSE processes
- CURLY_CLOSE shift 15
- State 29:
- statement ::= dotted_name ROUND_OPEN statement_args_maybe * ROUND_CLOSE name_maybe SEMICOLON
- ROUND_CLOSE shift 17
- State 30:
- statement ::= dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe * SEMICOLON
- SEMICOLON shift 54
- State 31:
- (14) dotted_name ::= NAME *
- dotted_name ::= NAME * DOT dotted_name
- DOT shift 18
- {default} reduce 14
- State 32:
- (18) list_contents ::= value *
- list_contents ::= value * COMMA list_contents
- COMMA shift 5
- {default} reduce 18
- State 33:
- list ::= CURLY_OPEN list_contents * CURLY_CLOSE
- CURLY_CLOSE shift 60
- State 34:
- map_contents ::= value * COLON value
- map_contents ::= value * COLON value COMMA map_contents
- COLON shift 7
- State 35:
- (22) map_contents ::= value COLON value *
- map_contents ::= value COLON value * COMMA map_contents
- COMMA shift 6
- {default} reduce 22
- State 36:
- map ::= BRACKET_OPEN map_contents * BRACKET_CLOSE
- BRACKET_CLOSE shift 67
- State 37:
- statement ::= dotted_name ARROW dotted_name * ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
- ROUND_OPEN shift 2
- State 38:
- statement ::= dotted_name ARROW dotted_name ROUND_OPEN statement_args_maybe * ROUND_CLOSE name_maybe SEMICOLON
- ROUND_CLOSE shift 20
- State 39:
- statement ::= dotted_name ARROW dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe * SEMICOLON
- SEMICOLON shift 68
- State 40:
- statement ::= IF * ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
- ROUND_OPEN shift 8
- State 41:
- statement ::= IF ROUND_OPEN value * ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
- ROUND_CLOSE shift 42
- State 42:
- statement ::= IF ROUND_OPEN value ROUND_CLOSE * CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
- CURLY_OPEN shift 11
- State 43:
- statement ::= IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements * CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
- CURLY_CLOSE shift 16
- State 44:
- statement ::= IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe * SEMICOLON
- SEMICOLON shift 69
- State 45:
- else_maybe ::= ELSE * CURLY_OPEN statements CURLY_CLOSE
- CURLY_OPEN shift 12
- State 46:
- else_maybe ::= ELSE CURLY_OPEN statements * CURLY_CLOSE
- CURLY_CLOSE shift 70
- State 47:
- elif ::= ELIF * ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE
- elif ::= ELIF * ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif
- ROUND_OPEN shift 9
- State 48:
- elif ::= ELIF ROUND_OPEN value * ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE
- elif ::= ELIF ROUND_OPEN value * ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif
- ROUND_CLOSE shift 49
- State 49:
- elif ::= ELIF ROUND_OPEN value ROUND_CLOSE * CURLY_OPEN statements CURLY_CLOSE
- elif ::= ELIF ROUND_OPEN value ROUND_CLOSE * CURLY_OPEN statements CURLY_CLOSE elif
- CURLY_OPEN shift 14
- State 50:
- elif ::= ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements * CURLY_CLOSE
- elif ::= ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements * CURLY_CLOSE elif
- CURLY_CLOSE shift 23
- State 51:
- (2) processes ::= process_or_template NAME CURLY_OPEN statements CURLY_CLOSE processes *
- {default} reduce 2
- State 52:
- (32) process_or_template ::= PROCESS *
- {default} reduce 32
- State 53:
- (33) process_or_template ::= TEMPLATE *
- {default} reduce 33
- State 54:
- (3) statement ::= dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON *
- {default} reduce 3
- State 55:
- (31) name_maybe ::= NAME *
- {default} reduce 31
- State 56:
- (15) dotted_name ::= NAME DOT dotted_name *
- {default} reduce 15
- State 57:
- (17) statement_args_maybe ::= list_contents *
- {default} reduce 17
- State 58:
- (19) list_contents ::= value COMMA list_contents *
- {default} reduce 19
- State 59:
- (20) list ::= CURLY_OPEN CURLY_CLOSE *
- {default} reduce 20
- State 60:
- (21) list ::= CURLY_OPEN list_contents CURLY_CLOSE *
- {default} reduce 21
- State 61:
- (23) map_contents ::= value COLON value COMMA map_contents *
- {default} reduce 23
- State 62:
- (26) value ::= STRING *
- {default} reduce 26
- State 63:
- (27) value ::= dotted_name *
- {default} reduce 27
- State 64:
- (28) value ::= list *
- {default} reduce 28
- State 65:
- (29) value ::= map *
- {default} reduce 29
- State 66:
- (24) map ::= BRACKET_OPEN BRACKET_CLOSE *
- {default} reduce 24
- State 67:
- (25) map ::= BRACKET_OPEN map_contents BRACKET_CLOSE *
- {default} reduce 25
- State 68:
- (4) statement ::= dotted_name ARROW dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON *
- {default} reduce 4
- State 69:
- (5) statement ::= IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON *
- {default} reduce 5
- State 70:
- (11) else_maybe ::= ELSE CURLY_OPEN statements CURLY_CLOSE *
- {default} reduce 11
- State 71:
- (13) statements ::= statement statements *
- {default} reduce 13
- State 72:
- (7) elif_maybe ::= elif *
- {default} reduce 7
- State 73:
- (9) elif ::= ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif *
- {default} reduce 9
- ----------------------------------------------------
- Symbols:
- 0: $:
- 1: NAME
- 2: CURLY_OPEN
- 3: CURLY_CLOSE
- 4: ROUND_OPEN
- 5: ROUND_CLOSE
- 6: SEMICOLON
- 7: ARROW
- 8: IF
- 9: ELIF
- 10: ELSE
- 11: DOT
- 12: COMMA
- 13: COLON
- 14: BRACKET_OPEN
- 15: BRACKET_CLOSE
- 16: STRING
- 17: PROCESS
- 18: TEMPLATE
- 19: error:
- 20: processes: PROCESS TEMPLATE
- 21: statement: NAME IF
- 22: elif_maybe: <lambda> ELIF
- 23: elif: ELIF
- 24: else_maybe: <lambda> ELSE
- 25: statements: NAME IF
- 26: dotted_name: NAME
- 27: statement_args_maybe: <lambda> NAME CURLY_OPEN BRACKET_OPEN STRING
- 28: list_contents: NAME CURLY_OPEN BRACKET_OPEN STRING
- 29: list: CURLY_OPEN
- 30: map_contents: NAME CURLY_OPEN BRACKET_OPEN STRING
- 31: map: BRACKET_OPEN
- 32: value: NAME CURLY_OPEN BRACKET_OPEN STRING
- 33: name_maybe: <lambda> NAME
- 34: process_or_template: PROCESS TEMPLATE
- 35: input: PROCESS TEMPLATE
|