NCDConfigParser_parse.out 17 KB

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