NCDConfigParser_parse.out 47 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259
  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. INCLUDE shift 48
  10. INCLUDE_GUARD shift 49
  11. PROCESS shift 88
  12. TEMPLATE shift 89
  13. processes shift 47
  14. process_or_template shift 50
  15. input accept
  16. {default} reduce 1
  17. State 1:
  18. statement ::= dotted_name ROUND_OPEN * statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
  19. dotted_name ::= * NAME
  20. dotted_name ::= * NAME DOT dotted_name
  21. (23) statement_args_maybe ::= *
  22. statement_args_maybe ::= * list_contents
  23. list_contents ::= * value
  24. list_contents ::= * value COMMA list_contents
  25. list ::= * CURLY_OPEN CURLY_CLOSE
  26. list ::= * CURLY_OPEN list_contents CURLY_CLOSE
  27. map ::= * BRACKET_OPEN BRACKET_CLOSE
  28. map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
  29. invoc ::= * value ROUND_OPEN list_contents ROUND_CLOSE
  30. value ::= * STRING
  31. value ::= * AT_SIGN dotted_name
  32. value ::= * CARET name_list
  33. value ::= * dotted_name
  34. value ::= * list
  35. value ::= * map
  36. value ::= * ROUND_OPEN value ROUND_CLOSE
  37. value ::= * invoc
  38. STRING shift 98
  39. NAME shift 55
  40. CURLY_OPEN shift 3
  41. ROUND_OPEN shift 9
  42. BRACKET_OPEN shift 4
  43. AT_SIGN shift 27
  44. CARET shift 28
  45. dotted_name shift 102
  46. statement_args_maybe shift 53
  47. list_contents shift 93
  48. list shift 103
  49. map shift 104
  50. invoc shift 106
  51. value shift 39
  52. {default} reduce 23
  53. State 2:
  54. statement ::= dotted_name ARROW dotted_name ROUND_OPEN * statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
  55. dotted_name ::= * NAME
  56. dotted_name ::= * NAME DOT dotted_name
  57. (23) statement_args_maybe ::= *
  58. statement_args_maybe ::= * list_contents
  59. list_contents ::= * value
  60. list_contents ::= * value COMMA list_contents
  61. list ::= * CURLY_OPEN CURLY_CLOSE
  62. list ::= * CURLY_OPEN list_contents CURLY_CLOSE
  63. map ::= * BRACKET_OPEN BRACKET_CLOSE
  64. map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
  65. invoc ::= * value ROUND_OPEN list_contents ROUND_CLOSE
  66. value ::= * STRING
  67. value ::= * AT_SIGN dotted_name
  68. value ::= * CARET name_list
  69. value ::= * dotted_name
  70. value ::= * list
  71. value ::= * map
  72. value ::= * ROUND_OPEN value ROUND_CLOSE
  73. value ::= * invoc
  74. STRING shift 98
  75. NAME shift 55
  76. CURLY_OPEN shift 3
  77. ROUND_OPEN shift 9
  78. BRACKET_OPEN shift 4
  79. AT_SIGN shift 27
  80. CARET shift 28
  81. dotted_name shift 102
  82. statement_args_maybe shift 61
  83. list_contents shift 93
  84. list shift 103
  85. map shift 104
  86. invoc shift 106
  87. value shift 39
  88. {default} reduce 23
  89. State 3:
  90. dotted_name ::= * NAME
  91. dotted_name ::= * NAME DOT dotted_name
  92. list_contents ::= * value
  93. list_contents ::= * value COMMA list_contents
  94. list ::= * CURLY_OPEN CURLY_CLOSE
  95. list ::= CURLY_OPEN * CURLY_CLOSE
  96. list ::= * CURLY_OPEN list_contents CURLY_CLOSE
  97. list ::= CURLY_OPEN * list_contents CURLY_CLOSE
  98. map ::= * BRACKET_OPEN BRACKET_CLOSE
  99. map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
  100. invoc ::= * value ROUND_OPEN list_contents ROUND_CLOSE
  101. value ::= * STRING
  102. value ::= * AT_SIGN dotted_name
  103. value ::= * CARET name_list
  104. value ::= * dotted_name
  105. value ::= * list
  106. value ::= * map
  107. value ::= * ROUND_OPEN value ROUND_CLOSE
  108. value ::= * invoc
  109. STRING shift 98
  110. NAME shift 55
  111. CURLY_OPEN shift 3
  112. CURLY_CLOSE shift 95
  113. ROUND_OPEN shift 9
  114. BRACKET_OPEN shift 4
  115. AT_SIGN shift 27
  116. CARET shift 28
  117. dotted_name shift 102
  118. list_contents shift 56
  119. list shift 103
  120. map shift 104
  121. invoc shift 106
  122. value shift 39
  123. State 4:
  124. dotted_name ::= * NAME
  125. dotted_name ::= * NAME DOT dotted_name
  126. list ::= * CURLY_OPEN CURLY_CLOSE
  127. list ::= * CURLY_OPEN list_contents CURLY_CLOSE
  128. map_contents ::= * value COLON value
  129. map_contents ::= * value COLON value COMMA map_contents
  130. map ::= * BRACKET_OPEN BRACKET_CLOSE
  131. map ::= BRACKET_OPEN * BRACKET_CLOSE
  132. map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
  133. map ::= BRACKET_OPEN * map_contents BRACKET_CLOSE
  134. invoc ::= * value ROUND_OPEN list_contents ROUND_CLOSE
  135. value ::= * STRING
  136. value ::= * AT_SIGN dotted_name
  137. value ::= * CARET name_list
  138. value ::= * dotted_name
  139. value ::= * list
  140. value ::= * map
  141. value ::= * ROUND_OPEN value ROUND_CLOSE
  142. value ::= * invoc
  143. STRING shift 98
  144. NAME shift 55
  145. CURLY_OPEN shift 3
  146. ROUND_OPEN shift 9
  147. BRACKET_OPEN shift 4
  148. BRACKET_CLOSE shift 108
  149. AT_SIGN shift 27
  150. CARET shift 28
  151. dotted_name shift 102
  152. list shift 103
  153. map_contents shift 59
  154. map shift 104
  155. invoc shift 106
  156. value shift 40
  157. State 5:
  158. dotted_name ::= * NAME
  159. dotted_name ::= * NAME DOT dotted_name
  160. list_contents ::= * value
  161. list_contents ::= * value COMMA list_contents
  162. list_contents ::= value COMMA * list_contents
  163. list ::= * CURLY_OPEN CURLY_CLOSE
  164. list ::= * CURLY_OPEN list_contents CURLY_CLOSE
  165. map ::= * BRACKET_OPEN BRACKET_CLOSE
  166. map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
  167. invoc ::= * value ROUND_OPEN list_contents ROUND_CLOSE
  168. value ::= * STRING
  169. value ::= * AT_SIGN dotted_name
  170. value ::= * CARET name_list
  171. value ::= * dotted_name
  172. value ::= * list
  173. value ::= * map
  174. value ::= * ROUND_OPEN value ROUND_CLOSE
  175. value ::= * invoc
  176. STRING shift 98
  177. NAME shift 55
  178. CURLY_OPEN shift 3
  179. ROUND_OPEN shift 9
  180. BRACKET_OPEN shift 4
  181. AT_SIGN shift 27
  182. CARET shift 28
  183. dotted_name shift 102
  184. list_contents shift 94
  185. list shift 103
  186. map shift 104
  187. invoc shift 106
  188. value shift 39
  189. State 6:
  190. dotted_name ::= * NAME
  191. dotted_name ::= * NAME DOT dotted_name
  192. list ::= * CURLY_OPEN CURLY_CLOSE
  193. list ::= * CURLY_OPEN list_contents CURLY_CLOSE
  194. map_contents ::= * value COLON value
  195. map_contents ::= * value COLON value COMMA map_contents
  196. map_contents ::= value COLON value COMMA * map_contents
  197. map ::= * BRACKET_OPEN BRACKET_CLOSE
  198. map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
  199. invoc ::= * value ROUND_OPEN list_contents ROUND_CLOSE
  200. value ::= * STRING
  201. value ::= * AT_SIGN dotted_name
  202. value ::= * CARET name_list
  203. value ::= * dotted_name
  204. value ::= * list
  205. value ::= * map
  206. value ::= * ROUND_OPEN value ROUND_CLOSE
  207. value ::= * invoc
  208. STRING shift 98
  209. NAME shift 55
  210. CURLY_OPEN shift 3
  211. ROUND_OPEN shift 9
  212. BRACKET_OPEN shift 4
  213. AT_SIGN shift 27
  214. CARET shift 28
  215. dotted_name shift 102
  216. list shift 103
  217. map_contents shift 97
  218. map shift 104
  219. invoc shift 106
  220. value shift 40
  221. State 7:
  222. dotted_name ::= * NAME
  223. dotted_name ::= * NAME DOT dotted_name
  224. list_contents ::= * value
  225. list_contents ::= * value COMMA list_contents
  226. list ::= * CURLY_OPEN CURLY_CLOSE
  227. list ::= * CURLY_OPEN list_contents CURLY_CLOSE
  228. map ::= * BRACKET_OPEN BRACKET_CLOSE
  229. map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
  230. invoc ::= * value ROUND_OPEN list_contents ROUND_CLOSE
  231. invoc ::= value ROUND_OPEN * list_contents ROUND_CLOSE
  232. value ::= * STRING
  233. value ::= * AT_SIGN dotted_name
  234. value ::= * CARET name_list
  235. value ::= * dotted_name
  236. value ::= * list
  237. value ::= * map
  238. value ::= * ROUND_OPEN value ROUND_CLOSE
  239. value ::= * invoc
  240. STRING shift 98
  241. NAME shift 55
  242. CURLY_OPEN shift 3
  243. ROUND_OPEN shift 9
  244. BRACKET_OPEN shift 4
  245. AT_SIGN shift 27
  246. CARET shift 28
  247. dotted_name shift 102
  248. list_contents shift 58
  249. list shift 103
  250. map shift 104
  251. invoc shift 106
  252. value shift 39
  253. State 8:
  254. dotted_name ::= * NAME
  255. dotted_name ::= * NAME DOT dotted_name
  256. list ::= * CURLY_OPEN CURLY_CLOSE
  257. list ::= * CURLY_OPEN list_contents CURLY_CLOSE
  258. map_contents ::= value COLON * value
  259. map_contents ::= value COLON * value COMMA map_contents
  260. map ::= * BRACKET_OPEN BRACKET_CLOSE
  261. map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
  262. invoc ::= * value ROUND_OPEN list_contents ROUND_CLOSE
  263. value ::= * STRING
  264. value ::= * AT_SIGN dotted_name
  265. value ::= * CARET name_list
  266. value ::= * dotted_name
  267. value ::= * list
  268. value ::= * map
  269. value ::= * ROUND_OPEN value ROUND_CLOSE
  270. value ::= * invoc
  271. STRING shift 98
  272. NAME shift 55
  273. CURLY_OPEN shift 3
  274. ROUND_OPEN shift 9
  275. BRACKET_OPEN shift 4
  276. AT_SIGN shift 27
  277. CARET shift 28
  278. dotted_name shift 102
  279. list shift 103
  280. map shift 104
  281. invoc shift 106
  282. value shift 41
  283. State 9:
  284. dotted_name ::= * NAME
  285. dotted_name ::= * NAME DOT dotted_name
  286. list ::= * CURLY_OPEN CURLY_CLOSE
  287. list ::= * CURLY_OPEN list_contents CURLY_CLOSE
  288. map ::= * BRACKET_OPEN BRACKET_CLOSE
  289. map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
  290. invoc ::= * value ROUND_OPEN list_contents ROUND_CLOSE
  291. value ::= * STRING
  292. value ::= * AT_SIGN dotted_name
  293. value ::= * CARET name_list
  294. value ::= * dotted_name
  295. value ::= * list
  296. value ::= * map
  297. value ::= * ROUND_OPEN value ROUND_CLOSE
  298. value ::= ROUND_OPEN * value ROUND_CLOSE
  299. value ::= * invoc
  300. STRING shift 98
  301. NAME shift 55
  302. CURLY_OPEN shift 3
  303. ROUND_OPEN shift 9
  304. BRACKET_OPEN shift 4
  305. AT_SIGN shift 27
  306. CARET shift 28
  307. dotted_name shift 102
  308. list shift 103
  309. map shift 104
  310. invoc shift 106
  311. value shift 42
  312. State 10:
  313. statement ::= IF ROUND_OPEN * value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
  314. dotted_name ::= * NAME
  315. dotted_name ::= * NAME DOT dotted_name
  316. list ::= * CURLY_OPEN CURLY_CLOSE
  317. list ::= * CURLY_OPEN list_contents CURLY_CLOSE
  318. map ::= * BRACKET_OPEN BRACKET_CLOSE
  319. map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
  320. invoc ::= * value ROUND_OPEN list_contents ROUND_CLOSE
  321. value ::= * STRING
  322. value ::= * AT_SIGN dotted_name
  323. value ::= * CARET name_list
  324. value ::= * dotted_name
  325. value ::= * list
  326. value ::= * map
  327. value ::= * ROUND_OPEN value ROUND_CLOSE
  328. value ::= * invoc
  329. STRING shift 98
  330. NAME shift 55
  331. CURLY_OPEN shift 3
  332. ROUND_OPEN shift 9
  333. BRACKET_OPEN shift 4
  334. AT_SIGN shift 27
  335. CARET shift 28
  336. dotted_name shift 102
  337. list shift 103
  338. map shift 104
  339. invoc shift 106
  340. value shift 43
  341. State 11:
  342. statement ::= FOREACH ROUND_OPEN * value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  343. statement ::= FOREACH ROUND_OPEN * value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  344. dotted_name ::= * NAME
  345. dotted_name ::= * NAME DOT dotted_name
  346. list ::= * CURLY_OPEN CURLY_CLOSE
  347. list ::= * CURLY_OPEN list_contents CURLY_CLOSE
  348. map ::= * BRACKET_OPEN BRACKET_CLOSE
  349. map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
  350. invoc ::= * value ROUND_OPEN list_contents ROUND_CLOSE
  351. value ::= * STRING
  352. value ::= * AT_SIGN dotted_name
  353. value ::= * CARET name_list
  354. value ::= * dotted_name
  355. value ::= * list
  356. value ::= * map
  357. value ::= * ROUND_OPEN value ROUND_CLOSE
  358. value ::= * invoc
  359. STRING shift 98
  360. NAME shift 55
  361. CURLY_OPEN shift 3
  362. ROUND_OPEN shift 9
  363. BRACKET_OPEN shift 4
  364. AT_SIGN shift 27
  365. CARET shift 28
  366. dotted_name shift 102
  367. list shift 103
  368. map shift 104
  369. invoc shift 106
  370. value shift 44
  371. State 12:
  372. elif ::= ELIF ROUND_OPEN * value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE
  373. elif ::= ELIF ROUND_OPEN * value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif
  374. dotted_name ::= * NAME
  375. dotted_name ::= * NAME DOT dotted_name
  376. list ::= * CURLY_OPEN CURLY_CLOSE
  377. list ::= * CURLY_OPEN list_contents CURLY_CLOSE
  378. map ::= * BRACKET_OPEN BRACKET_CLOSE
  379. map ::= * BRACKET_OPEN map_contents BRACKET_CLOSE
  380. invoc ::= * value ROUND_OPEN list_contents ROUND_CLOSE
  381. value ::= * STRING
  382. value ::= * AT_SIGN dotted_name
  383. value ::= * CARET name_list
  384. value ::= * dotted_name
  385. value ::= * list
  386. value ::= * map
  387. value ::= * ROUND_OPEN value ROUND_CLOSE
  388. value ::= * invoc
  389. STRING shift 98
  390. NAME shift 55
  391. CURLY_OPEN shift 3
  392. ROUND_OPEN shift 9
  393. BRACKET_OPEN shift 4
  394. AT_SIGN shift 27
  395. CARET shift 28
  396. dotted_name shift 102
  397. list shift 103
  398. map shift 104
  399. invoc shift 106
  400. value shift 46
  401. State 13:
  402. processes ::= process_or_template NAME CURLY_OPEN * statements CURLY_CLOSE processes
  403. statement ::= * dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
  404. statement ::= * dotted_name ARROW dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
  405. statement ::= * IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
  406. statement ::= * FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  407. statement ::= * FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  408. statement ::= * BLOCK CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  409. statements ::= * statement
  410. statements ::= * statement statements
  411. dotted_name ::= * NAME
  412. dotted_name ::= * NAME DOT dotted_name
  413. NAME shift 55
  414. IF shift 63
  415. FOREACH shift 68
  416. BLOCK shift 73
  417. statement shift 18
  418. statements shift 52
  419. dotted_name shift 38
  420. State 14:
  421. statement ::= * dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
  422. statement ::= * dotted_name ARROW dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
  423. statement ::= * IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
  424. statement ::= IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN * statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
  425. statement ::= * FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  426. statement ::= * FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  427. statement ::= * BLOCK CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  428. statements ::= * statement
  429. statements ::= * statement statements
  430. dotted_name ::= * NAME
  431. dotted_name ::= * NAME DOT dotted_name
  432. NAME shift 55
  433. IF shift 63
  434. FOREACH shift 68
  435. BLOCK shift 73
  436. statement shift 18
  437. statements shift 65
  438. dotted_name shift 38
  439. State 15:
  440. statement ::= * dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
  441. statement ::= * dotted_name ARROW dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
  442. statement ::= * IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
  443. statement ::= * FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  444. statement ::= * FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  445. else_maybe ::= ELSE CURLY_OPEN * statements CURLY_CLOSE
  446. statement ::= * BLOCK CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  447. statements ::= * statement
  448. statements ::= * statement statements
  449. dotted_name ::= * NAME
  450. dotted_name ::= * NAME DOT dotted_name
  451. NAME shift 55
  452. IF shift 63
  453. FOREACH shift 68
  454. BLOCK shift 73
  455. statement shift 18
  456. statements shift 81
  457. dotted_name shift 38
  458. State 16:
  459. statement ::= * dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
  460. statement ::= * dotted_name ARROW dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
  461. statement ::= * IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
  462. statement ::= * FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  463. statement ::= FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN * statements CURLY_CLOSE name_maybe SEMICOLON
  464. statement ::= * FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  465. statement ::= * BLOCK CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  466. statements ::= * statement
  467. statements ::= * statement statements
  468. dotted_name ::= * NAME
  469. dotted_name ::= * NAME DOT dotted_name
  470. NAME shift 55
  471. IF shift 63
  472. FOREACH shift 68
  473. BLOCK shift 73
  474. statement shift 18
  475. statements shift 71
  476. dotted_name shift 38
  477. State 17:
  478. statement ::= * dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
  479. statement ::= * dotted_name ARROW dotted_name ROUND_OPEN statement_args_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. statement ::= * BLOCK CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  484. statement ::= BLOCK CURLY_OPEN * statements CURLY_CLOSE name_maybe SEMICOLON
  485. statements ::= * statement
  486. statements ::= * statement statements
  487. dotted_name ::= * NAME
  488. dotted_name ::= * NAME DOT dotted_name
  489. NAME shift 55
  490. IF shift 63
  491. FOREACH shift 68
  492. BLOCK shift 73
  493. statement shift 18
  494. statements shift 74
  495. dotted_name shift 38
  496. State 18:
  497. statement ::= * dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
  498. statement ::= * dotted_name ARROW dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
  499. statement ::= * IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
  500. statement ::= * FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  501. statement ::= * FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  502. statement ::= * BLOCK CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  503. statements ::= * statement
  504. (17) statements ::= statement *
  505. statements ::= * statement statements
  506. statements ::= statement * statements
  507. dotted_name ::= * NAME
  508. dotted_name ::= * NAME DOT dotted_name
  509. NAME shift 55
  510. IF shift 63
  511. FOREACH shift 68
  512. BLOCK shift 73
  513. statement shift 18
  514. statements shift 114
  515. dotted_name shift 38
  516. {default} reduce 17
  517. State 19:
  518. statement ::= * dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
  519. statement ::= * dotted_name ARROW dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
  520. statement ::= * IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
  521. statement ::= * FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  522. statement ::= * FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  523. statement ::= FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN * statements CURLY_CLOSE name_maybe SEMICOLON
  524. statement ::= * BLOCK CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  525. statements ::= * statement
  526. statements ::= * statement statements
  527. dotted_name ::= * NAME
  528. dotted_name ::= * NAME DOT dotted_name
  529. NAME shift 55
  530. IF shift 63
  531. FOREACH shift 68
  532. BLOCK shift 73
  533. statement shift 18
  534. statements shift 79
  535. dotted_name shift 38
  536. State 20:
  537. statement ::= * dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
  538. statement ::= * dotted_name ARROW dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
  539. statement ::= * IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
  540. statement ::= * FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  541. statement ::= * FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  542. elif ::= ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN * statements CURLY_CLOSE
  543. elif ::= ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN * statements CURLY_CLOSE elif
  544. statement ::= * BLOCK CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  545. statements ::= * statement
  546. statements ::= * statement statements
  547. dotted_name ::= * NAME
  548. dotted_name ::= * NAME DOT dotted_name
  549. NAME shift 55
  550. IF shift 63
  551. FOREACH shift 68
  552. BLOCK shift 73
  553. statement shift 18
  554. statements shift 84
  555. dotted_name shift 38
  556. State 21:
  557. (1) processes ::= *
  558. processes ::= * INCLUDE STRING processes
  559. processes ::= INCLUDE STRING * processes
  560. processes ::= * INCLUDE_GUARD STRING processes
  561. processes ::= * process_or_template NAME CURLY_OPEN statements CURLY_CLOSE processes
  562. process_or_template ::= * PROCESS
  563. process_or_template ::= * TEMPLATE
  564. INCLUDE shift 48
  565. INCLUDE_GUARD shift 49
  566. PROCESS shift 88
  567. TEMPLATE shift 89
  568. processes shift 85
  569. process_or_template shift 50
  570. {default} reduce 1
  571. State 22:
  572. (1) processes ::= *
  573. processes ::= * INCLUDE STRING processes
  574. processes ::= * INCLUDE_GUARD STRING processes
  575. processes ::= INCLUDE_GUARD STRING * processes
  576. processes ::= * process_or_template NAME CURLY_OPEN statements CURLY_CLOSE processes
  577. process_or_template ::= * PROCESS
  578. process_or_template ::= * TEMPLATE
  579. INCLUDE shift 48
  580. INCLUDE_GUARD shift 49
  581. PROCESS shift 88
  582. TEMPLATE shift 89
  583. processes shift 86
  584. process_or_template shift 50
  585. {default} reduce 1
  586. State 23:
  587. (1) processes ::= *
  588. processes ::= * INCLUDE STRING processes
  589. processes ::= * INCLUDE_GUARD STRING processes
  590. processes ::= * process_or_template NAME CURLY_OPEN statements CURLY_CLOSE processes
  591. processes ::= process_or_template NAME CURLY_OPEN statements CURLY_CLOSE * processes
  592. process_or_template ::= * PROCESS
  593. process_or_template ::= * TEMPLATE
  594. INCLUDE shift 48
  595. INCLUDE_GUARD shift 49
  596. PROCESS shift 88
  597. TEMPLATE shift 89
  598. processes shift 87
  599. process_or_template shift 50
  600. {default} reduce 1
  601. State 24:
  602. statement ::= IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE * elif_maybe else_maybe name_maybe SEMICOLON
  603. (10) elif_maybe ::= *
  604. elif_maybe ::= * elif
  605. elif ::= * ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE
  606. elif ::= * ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif
  607. ELIF shift 82
  608. elif_maybe shift 32
  609. elif shift 117
  610. {default} reduce 10
  611. State 25:
  612. statement ::= dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE * name_maybe SEMICOLON
  613. (42) name_maybe ::= *
  614. name_maybe ::= * NAME
  615. NAME shift 91
  616. name_maybe shift 54
  617. {default} reduce 42
  618. State 26:
  619. dotted_name ::= * NAME
  620. dotted_name ::= * NAME DOT dotted_name
  621. dotted_name ::= NAME DOT * dotted_name
  622. NAME shift 55
  623. dotted_name shift 92
  624. State 27:
  625. dotted_name ::= * NAME
  626. dotted_name ::= * NAME DOT dotted_name
  627. value ::= AT_SIGN * dotted_name
  628. NAME shift 55
  629. dotted_name shift 99
  630. State 28:
  631. name_list ::= * NAME
  632. name_list ::= * NAME DOT name_list
  633. value ::= CARET * name_list
  634. NAME shift 57
  635. name_list shift 101
  636. State 29:
  637. name_list ::= * NAME
  638. name_list ::= * NAME DOT name_list
  639. name_list ::= NAME DOT * name_list
  640. NAME shift 57
  641. name_list shift 100
  642. State 30:
  643. statement ::= dotted_name ARROW * dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
  644. dotted_name ::= * NAME
  645. dotted_name ::= * NAME DOT dotted_name
  646. NAME shift 55
  647. dotted_name shift 60
  648. State 31:
  649. statement ::= dotted_name ARROW dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE * name_maybe SEMICOLON
  650. (42) name_maybe ::= *
  651. name_maybe ::= * NAME
  652. NAME shift 91
  653. name_maybe shift 62
  654. {default} reduce 42
  655. State 32:
  656. statement ::= IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe * else_maybe name_maybe SEMICOLON
  657. (14) else_maybe ::= *
  658. else_maybe ::= * ELSE CURLY_OPEN statements CURLY_CLOSE
  659. ELSE shift 67
  660. else_maybe shift 33
  661. {default} reduce 14
  662. State 33:
  663. statement ::= IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe * name_maybe SEMICOLON
  664. (42) name_maybe ::= *
  665. name_maybe ::= * NAME
  666. NAME shift 91
  667. name_maybe shift 66
  668. {default} reduce 42
  669. State 34:
  670. statement ::= FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE * name_maybe SEMICOLON
  671. (42) name_maybe ::= *
  672. name_maybe ::= * NAME
  673. NAME shift 91
  674. name_maybe shift 72
  675. {default} reduce 42
  676. State 35:
  677. statement ::= BLOCK CURLY_OPEN statements CURLY_CLOSE * name_maybe SEMICOLON
  678. (42) name_maybe ::= *
  679. name_maybe ::= * NAME
  680. NAME shift 91
  681. name_maybe shift 75
  682. {default} reduce 42
  683. State 36:
  684. statement ::= FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE * name_maybe SEMICOLON
  685. (42) name_maybe ::= *
  686. name_maybe ::= * NAME
  687. NAME shift 91
  688. name_maybe shift 80
  689. {default} reduce 42
  690. State 37:
  691. elif ::= * ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE
  692. (12) elif ::= ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE *
  693. elif ::= * ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif
  694. elif ::= ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE * elif
  695. ELIF shift 82
  696. elif shift 118
  697. {default} reduce 12
  698. State 38:
  699. statement ::= dotted_name * ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
  700. statement ::= dotted_name * ARROW dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
  701. ROUND_OPEN shift 1
  702. ARROW shift 30
  703. State 39:
  704. (25) list_contents ::= value *
  705. list_contents ::= value * COMMA list_contents
  706. invoc ::= value * ROUND_OPEN list_contents ROUND_CLOSE
  707. ROUND_OPEN shift 7
  708. COMMA shift 5
  709. {default} reduce 25
  710. State 40:
  711. map_contents ::= value * COLON value
  712. map_contents ::= value * COLON value COMMA map_contents
  713. invoc ::= value * ROUND_OPEN list_contents ROUND_CLOSE
  714. ROUND_OPEN shift 7
  715. COLON shift 8
  716. State 41:
  717. (29) map_contents ::= value COLON value *
  718. map_contents ::= value COLON value * COMMA map_contents
  719. invoc ::= value * ROUND_OPEN list_contents ROUND_CLOSE
  720. ROUND_OPEN shift 7
  721. COMMA shift 6
  722. {default} reduce 29
  723. State 42:
  724. invoc ::= value * ROUND_OPEN list_contents ROUND_CLOSE
  725. value ::= ROUND_OPEN value * ROUND_CLOSE
  726. ROUND_OPEN shift 7
  727. ROUND_CLOSE shift 107
  728. State 43:
  729. statement ::= IF ROUND_OPEN value * ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
  730. invoc ::= value * ROUND_OPEN list_contents ROUND_CLOSE
  731. ROUND_OPEN shift 7
  732. ROUND_CLOSE shift 64
  733. State 44:
  734. statement ::= FOREACH ROUND_OPEN value * AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  735. statement ::= FOREACH ROUND_OPEN value * AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  736. invoc ::= value * ROUND_OPEN list_contents ROUND_CLOSE
  737. ROUND_OPEN shift 7
  738. AS shift 69
  739. State 45:
  740. statement ::= FOREACH ROUND_OPEN value AS NAME * ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  741. statement ::= FOREACH ROUND_OPEN value AS NAME * COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  742. ROUND_CLOSE shift 70
  743. COLON shift 76
  744. State 46:
  745. elif ::= ELIF ROUND_OPEN value * ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE
  746. elif ::= ELIF ROUND_OPEN value * ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif
  747. invoc ::= value * ROUND_OPEN list_contents ROUND_CLOSE
  748. ROUND_OPEN shift 7
  749. ROUND_CLOSE shift 83
  750. State 47:
  751. (0) input ::= processes *
  752. $ reduce 0
  753. State 48:
  754. processes ::= INCLUDE * STRING processes
  755. STRING shift 21
  756. State 49:
  757. processes ::= INCLUDE_GUARD * STRING processes
  758. STRING shift 22
  759. State 50:
  760. processes ::= process_or_template * NAME CURLY_OPEN statements CURLY_CLOSE processes
  761. NAME shift 51
  762. State 51:
  763. processes ::= process_or_template NAME * CURLY_OPEN statements CURLY_CLOSE processes
  764. CURLY_OPEN shift 13
  765. State 52:
  766. processes ::= process_or_template NAME CURLY_OPEN statements * CURLY_CLOSE processes
  767. CURLY_CLOSE shift 23
  768. State 53:
  769. statement ::= dotted_name ROUND_OPEN statement_args_maybe * ROUND_CLOSE name_maybe SEMICOLON
  770. ROUND_CLOSE shift 25
  771. State 54:
  772. statement ::= dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe * SEMICOLON
  773. SEMICOLON shift 90
  774. State 55:
  775. (19) dotted_name ::= NAME *
  776. dotted_name ::= NAME * DOT dotted_name
  777. DOT shift 26
  778. {default} reduce 19
  779. State 56:
  780. list ::= CURLY_OPEN list_contents * CURLY_CLOSE
  781. CURLY_CLOSE shift 96
  782. State 57:
  783. (21) name_list ::= NAME *
  784. name_list ::= NAME * DOT name_list
  785. DOT shift 29
  786. {default} reduce 21
  787. State 58:
  788. invoc ::= value ROUND_OPEN list_contents * ROUND_CLOSE
  789. ROUND_CLOSE shift 105
  790. State 59:
  791. map ::= BRACKET_OPEN map_contents * BRACKET_CLOSE
  792. BRACKET_CLOSE shift 109
  793. State 60:
  794. statement ::= dotted_name ARROW dotted_name * ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON
  795. ROUND_OPEN shift 2
  796. State 61:
  797. statement ::= dotted_name ARROW dotted_name ROUND_OPEN statement_args_maybe * ROUND_CLOSE name_maybe SEMICOLON
  798. ROUND_CLOSE shift 31
  799. State 62:
  800. statement ::= dotted_name ARROW dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe * SEMICOLON
  801. SEMICOLON shift 110
  802. State 63:
  803. statement ::= IF * ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
  804. ROUND_OPEN shift 10
  805. State 64:
  806. statement ::= IF ROUND_OPEN value ROUND_CLOSE * CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
  807. CURLY_OPEN shift 14
  808. State 65:
  809. statement ::= IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements * CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON
  810. CURLY_CLOSE shift 24
  811. State 66:
  812. statement ::= IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe * SEMICOLON
  813. SEMICOLON shift 111
  814. State 67:
  815. else_maybe ::= ELSE * CURLY_OPEN statements CURLY_CLOSE
  816. CURLY_OPEN shift 15
  817. State 68:
  818. statement ::= FOREACH * ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  819. statement ::= FOREACH * ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  820. ROUND_OPEN shift 11
  821. State 69:
  822. statement ::= FOREACH ROUND_OPEN value AS * NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  823. statement ::= FOREACH ROUND_OPEN value AS * NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  824. NAME shift 45
  825. State 70:
  826. statement ::= FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE * CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  827. CURLY_OPEN shift 16
  828. State 71:
  829. statement ::= FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements * CURLY_CLOSE name_maybe SEMICOLON
  830. CURLY_CLOSE shift 34
  831. State 72:
  832. statement ::= FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe * SEMICOLON
  833. SEMICOLON shift 112
  834. State 73:
  835. statement ::= BLOCK * CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  836. CURLY_OPEN shift 17
  837. State 74:
  838. statement ::= BLOCK CURLY_OPEN statements * CURLY_CLOSE name_maybe SEMICOLON
  839. CURLY_CLOSE shift 35
  840. State 75:
  841. statement ::= BLOCK CURLY_OPEN statements CURLY_CLOSE name_maybe * SEMICOLON
  842. SEMICOLON shift 113
  843. State 76:
  844. statement ::= FOREACH ROUND_OPEN value AS NAME COLON * NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  845. NAME shift 77
  846. State 77:
  847. statement ::= FOREACH ROUND_OPEN value AS NAME COLON NAME * ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  848. ROUND_CLOSE shift 78
  849. State 78:
  850. statement ::= FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE * CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON
  851. CURLY_OPEN shift 19
  852. State 79:
  853. statement ::= FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements * CURLY_CLOSE name_maybe SEMICOLON
  854. CURLY_CLOSE shift 36
  855. State 80:
  856. statement ::= FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe * SEMICOLON
  857. SEMICOLON shift 115
  858. State 81:
  859. else_maybe ::= ELSE CURLY_OPEN statements * CURLY_CLOSE
  860. CURLY_CLOSE shift 116
  861. State 82:
  862. elif ::= ELIF * ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE
  863. elif ::= ELIF * ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif
  864. ROUND_OPEN shift 12
  865. State 83:
  866. elif ::= ELIF ROUND_OPEN value ROUND_CLOSE * CURLY_OPEN statements CURLY_CLOSE
  867. elif ::= ELIF ROUND_OPEN value ROUND_CLOSE * CURLY_OPEN statements CURLY_CLOSE elif
  868. CURLY_OPEN shift 20
  869. State 84:
  870. elif ::= ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements * CURLY_CLOSE
  871. elif ::= ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements * CURLY_CLOSE elif
  872. CURLY_CLOSE shift 37
  873. State 85:
  874. (2) processes ::= INCLUDE STRING processes *
  875. {default} reduce 2
  876. State 86:
  877. (3) processes ::= INCLUDE_GUARD STRING processes *
  878. {default} reduce 3
  879. State 87:
  880. (4) processes ::= process_or_template NAME CURLY_OPEN statements CURLY_CLOSE processes *
  881. {default} reduce 4
  882. State 88:
  883. (44) process_or_template ::= PROCESS *
  884. {default} reduce 44
  885. State 89:
  886. (45) process_or_template ::= TEMPLATE *
  887. {default} reduce 45
  888. State 90:
  889. (5) statement ::= dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON *
  890. {default} reduce 5
  891. State 91:
  892. (43) name_maybe ::= NAME *
  893. {default} reduce 43
  894. State 92:
  895. (20) dotted_name ::= NAME DOT dotted_name *
  896. {default} reduce 20
  897. State 93:
  898. (24) statement_args_maybe ::= list_contents *
  899. {default} reduce 24
  900. State 94:
  901. (26) list_contents ::= value COMMA list_contents *
  902. {default} reduce 26
  903. State 95:
  904. (27) list ::= CURLY_OPEN CURLY_CLOSE *
  905. {default} reduce 27
  906. State 96:
  907. (28) list ::= CURLY_OPEN list_contents CURLY_CLOSE *
  908. {default} reduce 28
  909. State 97:
  910. (30) map_contents ::= value COLON value COMMA map_contents *
  911. {default} reduce 30
  912. State 98:
  913. (34) value ::= STRING *
  914. {default} reduce 34
  915. State 99:
  916. (35) value ::= AT_SIGN dotted_name *
  917. {default} reduce 35
  918. State 100:
  919. (22) name_list ::= NAME DOT name_list *
  920. {default} reduce 22
  921. State 101:
  922. (36) value ::= CARET name_list *
  923. {default} reduce 36
  924. State 102:
  925. (37) value ::= dotted_name *
  926. {default} reduce 37
  927. State 103:
  928. (38) value ::= list *
  929. {default} reduce 38
  930. State 104:
  931. (39) value ::= map *
  932. {default} reduce 39
  933. State 105:
  934. (33) invoc ::= value ROUND_OPEN list_contents ROUND_CLOSE *
  935. {default} reduce 33
  936. State 106:
  937. (41) value ::= invoc *
  938. {default} reduce 41
  939. State 107:
  940. (40) value ::= ROUND_OPEN value ROUND_CLOSE *
  941. {default} reduce 40
  942. State 108:
  943. (31) map ::= BRACKET_OPEN BRACKET_CLOSE *
  944. {default} reduce 31
  945. State 109:
  946. (32) map ::= BRACKET_OPEN map_contents BRACKET_CLOSE *
  947. {default} reduce 32
  948. State 110:
  949. (6) statement ::= dotted_name ARROW dotted_name ROUND_OPEN statement_args_maybe ROUND_CLOSE name_maybe SEMICOLON *
  950. {default} reduce 6
  951. State 111:
  952. (7) statement ::= IF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif_maybe else_maybe name_maybe SEMICOLON *
  953. {default} reduce 7
  954. State 112:
  955. (8) statement ::= FOREACH ROUND_OPEN value AS NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON *
  956. {default} reduce 8
  957. State 113:
  958. (16) statement ::= BLOCK CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON *
  959. {default} reduce 16
  960. State 114:
  961. (18) statements ::= statement statements *
  962. {default} reduce 18
  963. State 115:
  964. (9) statement ::= FOREACH ROUND_OPEN value AS NAME COLON NAME ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE name_maybe SEMICOLON *
  965. {default} reduce 9
  966. State 116:
  967. (15) else_maybe ::= ELSE CURLY_OPEN statements CURLY_CLOSE *
  968. {default} reduce 15
  969. State 117:
  970. (11) elif_maybe ::= elif *
  971. {default} reduce 11
  972. State 118:
  973. (13) elif ::= ELIF ROUND_OPEN value ROUND_CLOSE CURLY_OPEN statements CURLY_CLOSE elif *
  974. {default} reduce 13
  975. ----------------------------------------------------
  976. Symbols:
  977. 0: $:
  978. 1: INCLUDE
  979. 2: STRING
  980. 3: INCLUDE_GUARD
  981. 4: NAME
  982. 5: CURLY_OPEN
  983. 6: CURLY_CLOSE
  984. 7: ROUND_OPEN
  985. 8: ROUND_CLOSE
  986. 9: SEMICOLON
  987. 10: ARROW
  988. 11: IF
  989. 12: FOREACH
  990. 13: AS
  991. 14: COLON
  992. 15: ELIF
  993. 16: ELSE
  994. 17: BLOCK
  995. 18: DOT
  996. 19: COMMA
  997. 20: BRACKET_OPEN
  998. 21: BRACKET_CLOSE
  999. 22: AT_SIGN
  1000. 23: CARET
  1001. 24: PROCESS
  1002. 25: TEMPLATE
  1003. 26: error:
  1004. 27: processes: <lambda> INCLUDE INCLUDE_GUARD PROCESS TEMPLATE
  1005. 28: statement: NAME IF FOREACH BLOCK
  1006. 29: elif_maybe: <lambda> ELIF
  1007. 30: elif: ELIF
  1008. 31: else_maybe: <lambda> ELSE
  1009. 32: statements: NAME IF FOREACH BLOCK
  1010. 33: dotted_name: NAME
  1011. 34: statement_args_maybe: <lambda> STRING NAME CURLY_OPEN ROUND_OPEN BRACKET_OPEN AT_SIGN CARET
  1012. 35: list_contents: STRING NAME CURLY_OPEN ROUND_OPEN BRACKET_OPEN AT_SIGN CARET
  1013. 36: list: CURLY_OPEN
  1014. 37: map_contents: STRING NAME CURLY_OPEN ROUND_OPEN BRACKET_OPEN AT_SIGN CARET
  1015. 38: map: BRACKET_OPEN
  1016. 39: invoc: STRING NAME CURLY_OPEN ROUND_OPEN BRACKET_OPEN AT_SIGN CARET
  1017. 40: value: STRING NAME CURLY_OPEN ROUND_OPEN BRACKET_OPEN AT_SIGN CARET
  1018. 41: name_maybe: <lambda> NAME
  1019. 42: process_or_template: PROCESS TEMPLATE
  1020. 43: name_list: NAME
  1021. 44: input: INCLUDE INCLUDE_GUARD PROCESS TEMPLATE