NCDConfigParser_parse.out 19 KB

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