| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950 |
- State 0:
- input ::= * processes
- (1) processes ::= *
- processes ::= * INCLUDE STRING processes
- processes ::= * INCLUDE_GUARD STRING processes
- processes ::= * process_or_template NAME CURLY_OPEN statements CURLY_CLOSE processes
- process_or_template ::= * PROCESS
- process_or_template ::= * TEMPLATE
- INCLUDE shift 34
- INCLUDE_GUARD shift 35
- PROCESS shift 75
- TEMPLATE shift 76
- processes shift 33
- process_or_template shift 36
- input accept
- {default} reduce 1
- State 1:
- statement ::= dotted_name ROUND_OPEN * statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
- dotted_name ::= * NAME
- dotted_name ::= * NAME DOT dotted_name
- (20) 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
- STRING shift 85
- NAME shift 41
- CURLY_OPEN shift 3
- BRACKET_OPEN shift 4
- dotted_name shift 86
- statement_args_maybe shift 39
- list_contents shift 80
- list shift 87
- map shift 88
- value shift 42
- {default} reduce 20
- 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
- (20) 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
- STRING shift 85
- NAME shift 41
- CURLY_OPEN shift 3
- BRACKET_OPEN shift 4
- dotted_name shift 86
- statement_args_maybe shift 48
- list_contents shift 80
- list shift 87
- map shift 88
- value shift 42
- {default} reduce 20
- 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
- STRING shift 85
- NAME shift 41
- CURLY_OPEN shift 3
- CURLY_CLOSE shift 82
- BRACKET_OPEN shift 4
- dotted_name shift 86
- list_contents shift 43
- list shift 87
- map shift 88
- value shift 42
- 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
- STRING shift 85
- NAME shift 41
- CURLY_OPEN shift 3
- BRACKET_OPEN shift 4
- BRACKET_CLOSE shift 89
- dotted_name shift 86
- list shift 87
- map_contents shift 46
- map shift 88
- value shift 44
- 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
- STRING shift 85
- NAME shift 41
- CURLY_OPEN shift 3
- BRACKET_OPEN shift 4
- dotted_name shift 86
- list_contents shift 81
- list shift 87
- map shift 88
- value shift 42
- 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
- STRING shift 85
- NAME shift 41
- CURLY_OPEN shift 3
- BRACKET_OPEN shift 4
- dotted_name shift 86
- list shift 87
- map_contents shift 84
- map shift 88
- value shift 44
- 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
- STRING shift 85
- NAME shift 41
- CURLY_OPEN shift 3
- BRACKET_OPEN shift 4
- dotted_name shift 86
- list shift 87
- map shift 88
- value shift 45
- 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
- STRING shift 85
- NAME shift 41
- CURLY_OPEN shift 3
- BRACKET_OPEN shift 4
- dotted_name shift 86
- list shift 87
- map shift 88
- value shift 51
- State 9:
- statement ::= FOREACH ROUND_OPEN * value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
- statement ::= FOREACH ROUND_OPEN * value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE 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
- STRING shift 85
- NAME shift 41
- CURLY_OPEN shift 3
- BRACKET_OPEN shift 4
- dotted_name shift 86
- list shift 87
- map shift 88
- value shift 57
- State 10:
- 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
- STRING shift 85
- NAME shift 41
- CURLY_OPEN shift 3
- BRACKET_OPEN shift 4
- dotted_name shift 86
- list shift 87
- map shift 88
- value shift 69
- State 11:
- 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
- statement ::= * FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
- statement ::= * FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
- statements ::= * statement
- statements ::= * statement statements
- dotted_name ::= * NAME
- dotted_name ::= * NAME DOT dotted_name
- NAME shift 41
- IF shift 50
- FOREACH shift 56
- statement shift 15
- statements shift 38
- dotted_name shift 31
- 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
- statement ::= IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN * statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
- statement ::= * FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
- statement ::= * FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
- statements ::= * statement
- statements ::= * statement statements
- dotted_name ::= * NAME
- dotted_name ::= * NAME DOT dotted_name
- NAME shift 41
- IF shift 50
- FOREACH shift 56
- statement shift 15
- statements shift 53
- dotted_name shift 31
- 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
- statement ::= * FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
- statement ::= * FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE 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 41
- IF shift 50
- FOREACH shift 56
- statement shift 15
- statements shift 67
- dotted_name shift 31
- 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
- statement ::= * FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
- statement ::= FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN * statements CURLY_CLOSE name_maybe SEMICOLON
- statement ::= * FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
- statements ::= * statement
- statements ::= * statement statements
- dotted_name ::= * NAME
- dotted_name ::= * NAME DOT dotted_name
- NAME shift 41
- IF shift 50
- FOREACH shift 56
- statement shift 15
- statements shift 60
- dotted_name shift 31
- State 15:
- 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 ::= * FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
- statement ::= * FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
- statements ::= * statement
- (16) statements ::= statement *
- statements ::= * statement statements
- statements ::= statement * statements
- dotted_name ::= * NAME
- dotted_name ::= * NAME DOT dotted_name
- NAME shift 41
- IF shift 50
- FOREACH shift 56
- statement shift 15
- statements shift 94
- dotted_name shift 31
- {default} reduce 16
- State 16:
- 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 ::= * FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
- statement ::= * FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
- statement ::= FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN * statements CURLY_CLOSE name_maybe SEMICOLON
- statements ::= * statement
- statements ::= * statement statements
- dotted_name ::= * NAME
- dotted_name ::= * NAME DOT dotted_name
- NAME shift 41
- IF shift 50
- FOREACH shift 56
- statement shift 15
- statements shift 65
- dotted_name shift 31
- State 17:
- 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 ::= * FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
- statement ::= * FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE 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 41
- IF shift 50
- FOREACH shift 56
- statement shift 15
- statements shift 71
- dotted_name shift 31
- State 18:
- (1) processes ::= *
- processes ::= * INCLUDE STRING processes
- processes ::= INCLUDE STRING * processes
- processes ::= * INCLUDE_GUARD STRING processes
- processes ::= * process_or_template NAME CURLY_OPEN statements CURLY_CLOSE processes
- process_or_template ::= * PROCESS
- process_or_template ::= * TEMPLATE
- INCLUDE shift 34
- INCLUDE_GUARD shift 35
- PROCESS shift 75
- TEMPLATE shift 76
- processes shift 72
- process_or_template shift 36
- {default} reduce 1
- State 19:
- (1) processes ::= *
- processes ::= * INCLUDE STRING processes
- processes ::= * INCLUDE_GUARD STRING processes
- processes ::= INCLUDE_GUARD STRING * processes
- processes ::= * process_or_template NAME CURLY_OPEN statements CURLY_CLOSE processes
- process_or_template ::= * PROCESS
- process_or_template ::= * TEMPLATE
- INCLUDE shift 34
- INCLUDE_GUARD shift 35
- PROCESS shift 75
- TEMPLATE shift 76
- processes shift 73
- process_or_template shift 36
- {default} reduce 1
- State 20:
- (1) processes ::= *
- processes ::= * INCLUDE STRING processes
- processes ::= * INCLUDE_GUARD STRING processes
- 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
- INCLUDE shift 34
- INCLUDE_GUARD shift 35
- PROCESS shift 75
- TEMPLATE shift 76
- processes shift 74
- process_or_template shift 36
- {default} reduce 1
- State 21:
- statement ::= IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE * elif_maybe else_maybe name_maybe SEMICOLON
- (10) 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 68
- elif_maybe shift 26
- elif shift 97
- {default} reduce 10
- State 22:
- statement ::= dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE * name_maybe SEMICOLON
- (34) name_maybe ::= *
- name_maybe ::= * NAME
- NAME shift 78
- name_maybe shift 40
- {default} reduce 34
- State 23:
- dotted_name ::= * NAME
- dotted_name ::= * NAME DOT dotted_name
- dotted_name ::= NAME DOT * dotted_name
- NAME shift 41
- dotted_name shift 79
- State 24:
- 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 41
- dotted_name shift 47
- State 25:
- statement ::= dotted_name ARROW dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE * name_maybe SEMICOLON
- (34) name_maybe ::= *
- name_maybe ::= * NAME
- NAME shift 78
- name_maybe shift 49
- {default} reduce 34
- State 26:
- statement ::= IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe * else_maybe name_maybe SEMICOLON
- (14) else_maybe ::= *
- else_maybe ::= * ELSE CURLY_OPEN statements CURLY_CLOSE
- ELSE shift 55
- else_maybe shift 27
- {default} reduce 14
- State 27:
- statement ::= IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe * name_maybe SEMICOLON
- (34) name_maybe ::= *
- name_maybe ::= * NAME
- NAME shift 78
- name_maybe shift 54
- {default} reduce 34
- State 28:
- statement ::= FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE * name_maybe SEMICOLON
- (34) name_maybe ::= *
- name_maybe ::= * NAME
- NAME shift 78
- name_maybe shift 61
- {default} reduce 34
- State 29:
- statement ::= FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE * name_maybe SEMICOLON
- (34) name_maybe ::= *
- name_maybe ::= * NAME
- NAME shift 78
- name_maybe shift 66
- {default} reduce 34
- State 30:
- elif ::= * ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE
- (12) 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 68
- elif shift 98
- {default} reduce 12
- State 31:
- 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 24
- State 32:
- statement ::= FOREACH ROUND_OPEN value AS NAME * ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
- statement ::= FOREACH ROUND_OPEN value AS NAME * COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
- ROUND_CLOSE shift 59
- COLON shift 62
- State 33:
- (0) input ::= processes *
- $ reduce 0
- State 34:
- processes ::= INCLUDE * STRING processes
- STRING shift 18
- State 35:
- processes ::= INCLUDE_GUARD * STRING processes
- STRING shift 19
- State 36:
- processes ::= process_or_template * NAME CURLY_OPEN statements CURLY_CLOSE processes
- NAME shift 37
- State 37:
- processes ::= process_or_template NAME * CURLY_OPEN statements CURLY_CLOSE processes
- CURLY_OPEN shift 11
- State 38:
- processes ::= process_or_template NAME CURLY_OPEN statements * CURLY_CLOSE processes
- CURLY_CLOSE shift 20
- State 39:
- statement ::= dotted_name ROUND_OPEN statement_args_maybe * ROUND_CLOSE name_maybe SEMICOLON
- ROUND_CLOSE shift 22
- State 40:
- statement ::= dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe * SEMICOLON
- SEMICOLON shift 77
- State 41:
- (18) dotted_name ::= NAME *
- dotted_name ::= NAME * DOT dotted_name
- DOT shift 23
- {default} reduce 18
- State 42:
- (22) list_contents ::= value *
- list_contents ::= value * COMMA list_contents
- COMMA shift 5
- {default} reduce 22
- State 43:
- list ::= CURLY_OPEN list_contents * CURLY_CLOSE
- CURLY_CLOSE shift 83
- State 44:
- map_contents ::= value * COLON value
- map_contents ::= value * COLON value COMMA map_contents
- COLON shift 7
- State 45:
- (26) map_contents ::= value COLON value *
- map_contents ::= value COLON value * COMMA map_contents
- COMMA shift 6
- {default} reduce 26
- State 46:
- map ::= BRACKET_OPEN map_contents * BRACKET_CLOSE
- BRACKET_CLOSE shift 90
- State 47:
- statement ::= dotted_name ARROW dotted_name * ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
- ROUND_OPEN shift 2
- State 48:
- statement ::= dotted_name ARROW dotted_name ROUND_OPEN statement_args_maybe * ROUND_CLOSE name_maybe SEMICOLON
- ROUND_CLOSE shift 25
- State 49:
- statement ::= dotted_name ARROW dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe * SEMICOLON
- SEMICOLON shift 91
- State 50:
- statement ::= IF * ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
- ROUND_OPEN shift 8
- State 51:
- statement ::= IF ROUND_OPEN value * ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
- ROUND_CLOSE shift 52
- State 52:
- statement ::= IF ROUND_OPEN value ROUND_CLOSE * CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
- CURLY_OPEN shift 12
- State 53:
- statement ::= IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements * CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
- CURLY_CLOSE shift 21
- State 54:
- statement ::= IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe * SEMICOLON
- SEMICOLON shift 92
- State 55:
- else_maybe ::= ELSE * CURLY_OPEN statements CURLY_CLOSE
- CURLY_OPEN shift 13
- State 56:
- statement ::= FOREACH * ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
- statement ::= FOREACH * ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
- ROUND_OPEN shift 9
- State 57:
- statement ::= FOREACH ROUND_OPEN value * AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
- statement ::= FOREACH ROUND_OPEN value * AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
- AS shift 58
- State 58:
- statement ::= FOREACH ROUND_OPEN value AS * NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
- statement ::= FOREACH ROUND_OPEN value AS * NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
- NAME shift 32
- State 59:
- statement ::= FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE * CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
- CURLY_OPEN shift 14
- State 60:
- statement ::= FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements * CURLY_CLOSE name_maybe SEMICOLON
- CURLY_CLOSE shift 28
- State 61:
- statement ::= FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe * SEMICOLON
- SEMICOLON shift 93
- State 62:
- statement ::= FOREACH ROUND_OPEN value AS NAME COLON * NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
- NAME shift 63
- State 63:
- statement ::= FOREACH ROUND_OPEN value AS NAME COLON NAME * ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
- ROUND_CLOSE shift 64
- State 64:
- statement ::= FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE * CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
- CURLY_OPEN shift 16
- State 65:
- statement ::= FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements * CURLY_CLOSE name_maybe SEMICOLON
- CURLY_CLOSE shift 29
- State 66:
- statement ::= FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe * SEMICOLON
- SEMICOLON shift 95
- State 67:
- else_maybe ::= ELSE CURLY_OPEN statements * CURLY_CLOSE
- CURLY_CLOSE shift 96
- State 68:
- 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 10
- State 69:
- 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 70
- State 70:
- 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 17
- State 71:
- 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 30
- State 72:
- (2) processes ::= INCLUDE STRING processes *
- {default} reduce 2
- State 73:
- (3) processes ::= INCLUDE_GUARD STRING processes *
- {default} reduce 3
- State 74:
- (4) processes ::= process_or_template NAME CURLY_OPEN statements CURLY_CLOSE processes *
- {default} reduce 4
- State 75:
- (36) process_or_template ::= PROCESS *
- {default} reduce 36
- State 76:
- (37) process_or_template ::= TEMPLATE *
- {default} reduce 37
- State 77:
- (5) statement ::= dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON *
- {default} reduce 5
- State 78:
- (35) name_maybe ::= NAME *
- {default} reduce 35
- State 79:
- (19) dotted_name ::= NAME DOT dotted_name *
- {default} reduce 19
- State 80:
- (21) statement_args_maybe ::= list_contents *
- {default} reduce 21
- State 81:
- (23) list_contents ::= value COMMA list_contents *
- {default} reduce 23
- State 82:
- (24) list ::= CURLY_OPEN CURLY_CLOSE *
- {default} reduce 24
- State 83:
- (25) list ::= CURLY_OPEN list_contents CURLY_CLOSE *
- {default} reduce 25
- State 84:
- (27) map_contents ::= value COLON value COMMA map_contents *
- {default} reduce 27
- State 85:
- (30) value ::= STRING *
- {default} reduce 30
- State 86:
- (31) value ::= dotted_name *
- {default} reduce 31
- State 87:
- (32) value ::= list *
- {default} reduce 32
- State 88:
- (33) value ::= map *
- {default} reduce 33
- State 89:
- (28) map ::= BRACKET_OPEN BRACKET_CLOSE *
- {default} reduce 28
- State 90:
- (29) map ::= BRACKET_OPEN map_contents BRACKET_CLOSE *
- {default} reduce 29
- State 91:
- (6) statement ::= dotted_name ARROW dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON *
- {default} reduce 6
- State 92:
- (7) statement ::= IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON *
- {default} reduce 7
- State 93:
- (8) statement ::= FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON *
- {default} reduce 8
- State 94:
- (17) statements ::= statement statements *
- {default} reduce 17
- State 95:
- (9) statement ::= FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON *
- {default} reduce 9
- State 96:
- (15) else_maybe ::= ELSE CURLY_OPEN statements CURLY_CLOSE *
- {default} reduce 15
- State 97:
- (11) elif_maybe ::= elif *
- {default} reduce 11
- State 98:
- (13) elif ::= ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif *
- {default} reduce 13
- ----------------------------------------------------
- Symbols:
- 0: $:
- 1: INCLUDE
- 2: STRING
- 3: INCLUDE_GUARD
- 4: NAME
- 5: CURLY_OPEN
- 6: CURLY_CLOSE
- 7: ROUND_OPEN
- 8: ROUND_CLOSE
- 9: SEMICOLON
- 10: ARROW
- 11: IF
- 12: FOREACH
- 13: AS
- 14: COLON
- 15: ELIF
- 16: ELSE
- 17: DOT
- 18: COMMA
- 19: BRACKET_OPEN
- 20: BRACKET_CLOSE
- 21: PROCESS
- 22: TEMPLATE
- 23: error:
- 24: processes: <lambda> INCLUDE INCLUDE_GUARD PROCESS TEMPLATE
- 25: statement: NAME IF FOREACH
- 26: elif_maybe: <lambda> ELIF
- 27: elif: ELIF
- 28: else_maybe: <lambda> ELSE
- 29: statements: NAME IF FOREACH
- 30: dotted_name: NAME
- 31: statement_args_maybe: <lambda> STRING NAME CURLY_OPEN BRACKET_OPEN
- 32: list_contents: STRING NAME CURLY_OPEN BRACKET_OPEN
- 33: list: CURLY_OPEN
- 34: map_contents: STRING NAME CURLY_OPEN BRACKET_OPEN
- 35: map: BRACKET_OPEN
- 36: value: STRING NAME CURLY_OPEN BRACKET_OPEN
- 37: name_maybe: <lambda> NAME
- 38: process_or_template: PROCESS TEMPLATE
- 39: input: INCLUDE INCLUDE_GUARD PROCESS TEMPLATE
|