1 # Parser generated by nitcc for the grammar json
2 module json_parser
is no_warning
("missing-doc","old-init")
6 redef fun start_state
do return state_Start
9 private fun state_Start
: LRStateStart do return once
new LRStateStart
10 private fun state_value
: LRStatevalue do return once
new LRStatevalue
11 private fun state_number
: LRStatenumber do return once
new LRStatenumber
12 private fun state_string
: LRStatestring do return once
new LRStatestring
13 private fun state__39dtrue_39d
: LRState_39dtrue_39d do return once
new LRState_39dtrue_39d
14 private fun state__39dfalse_39d
: LRState_39dfalse_39d do return once
new LRState_39dfalse_39d
15 private fun state__39dnull_39d
: LRState_39dnull_39d do return once
new LRState_39dnull_39d
16 private fun state__39d_123d_39d
: LRState_39d_123d_39d do return once
new LRState_39d_123d_39d
17 private fun state__39d_91d_39d
: LRState_39d_91d_39d do return once
new LRState_39d_91d_39d
18 private fun state_value_32dEof
: LRStatevalue_32dEof do return once
new LRStatevalue_32dEof
19 private fun state__39d_123d_39d_32dmembers
: LRState_39d_123d_39d_32dmembers do return once
new LRState_39d_123d_39d_32dmembers
20 private fun state__39d_123d_39d_32d_39d_125d_39d
: LRState_39d_123d_39d_32d_39d_125d_39d do return once
new LRState_39d_123d_39d_32d_39d_125d_39d
21 private fun state__39d_123d_39d_32dpair
: LRState_39d_123d_39d_32dpair do return once
new LRState_39d_123d_39d_32dpair
22 private fun state__39d_123d_39d_32dstring
: LRState_39d_123d_39d_32dstring do return once
new LRState_39d_123d_39d_32dstring
23 private fun state__39d_91d_39d_32delements
: LRState_39d_91d_39d_32delements do return once
new LRState_39d_91d_39d_32delements
24 private fun state__39d_91d_39d_32d_39d_93d_39d
: LRState_39d_91d_39d_32d_39d_93d_39d do return once
new LRState_39d_91d_39d_32d_39d_93d_39d
25 private fun state__39d_91d_39d_32dvalue
: LRState_39d_91d_39d_32dvalue do return once
new LRState_39d_91d_39d_32dvalue
26 private fun state__39d_123d_39d_32dmembers_32d_39d_125d_39d
: LRState_39d_123d_39d_32dmembers_32d_39d_125d_39d do return once
new LRState_39d_123d_39d_32dmembers_32d_39d_125d_39d
27 private fun state__39d_123d_39d_32dmembers_32d_39d_44d_39d
: LRState_39d_123d_39d_32dmembers_32d_39d_44d_39d do return once
new LRState_39d_123d_39d_32dmembers_32d_39d_44d_39d
28 private fun state__39d_123d_39d_32dstring_32d_39d_58d_39d
: LRState_39d_123d_39d_32dstring_32d_39d_58d_39d do return once
new LRState_39d_123d_39d_32dstring_32d_39d_58d_39d
29 private fun state__39d_91d_39d_32delements_32d_39d_93d_39d
: LRState_39d_91d_39d_32delements_32d_39d_93d_39d do return once
new LRState_39d_91d_39d_32delements_32d_39d_93d_39d
30 private fun state__39d_91d_39d_32delements_32d_39d_44d_39d
: LRState_39d_91d_39d_32delements_32d_39d_44d_39d do return once
new LRState_39d_91d_39d_32delements_32d_39d_44d_39d
31 private fun state__39d_123d_39d_32dmembers_32d_39d_44d_39d_32dpair
: LRState_39d_123d_39d_32dmembers_32d_39d_44d_39d_32dpair do return once
new LRState_39d_123d_39d_32dmembers_32d_39d_44d_39d_32dpair
32 private fun state__39d_123d_39d_32dstring_32d_39d_58d_39d_32dvalue
: LRState_39d_123d_39d_32dstring_32d_39d_58d_39d_32dvalue do return once
new LRState_39d_123d_39d_32dstring_32d_39d_58d_39d_32dvalue
33 private fun state__39d_91d_39d_32delements_32d_39d_44d_39d_32dvalue
: LRState_39d_91d_39d_32delements_32d_39d_44d_39d_32dvalue do return once
new LRState_39d_91d_39d_32delements_32d_39d_44d_39d_32dvalue
34 private fun goto_Nvalue
: Goto_Nvalue do return once
new Goto_Nvalue
35 private fun goto_Nmembers
: Goto_Nmembers do return once
new Goto_Nmembers
36 private fun goto_Npair
: Goto_Npair do return once
new Goto_Npair
37 private fun goto_Nelements
: Goto_Nelements do return once
new Goto_Nelements
38 private fun goto_N_start
: Goto_N_start do return once
new Goto_N_start
41 # guarded action for state Start
42 # 7 shift(s) and 0 reduce(s)
43 private fun action_sStart
(parser
: Parser) do
46 # guarded action for state value
47 # 1 shift(s) and 0 reduce(s)
48 private fun action_svalue
(parser
: Parser) do
51 # guarded action for state '{'
52 # 2 shift(s) and 0 reduce(s)
53 private fun action_s_39d_123d_39d
(parser
: Parser) do
56 # guarded action for state '['
57 # 8 shift(s) and 0 reduce(s)
58 private fun action_s_39d_91d_39d
(parser
: Parser) do
61 # guarded action for state '{' members
62 # 2 shift(s) and 0 reduce(s)
63 private fun action_s_39d_123d_39d_32dmembers
(parser
: Parser) do
66 # guarded action for state '{' string
67 # 1 shift(s) and 0 reduce(s)
68 private fun action_s_39d_123d_39d_32dstring
(parser
: Parser) do
71 # guarded action for state '[' elements
72 # 2 shift(s) and 0 reduce(s)
73 private fun action_s_39d_91d_39d_32delements
(parser
: Parser) do
76 # guarded action for state '{' members ','
77 # 1 shift(s) and 0 reduce(s)
78 private fun action_s_39d_123d_39d_32dmembers_32d_39d_44d_39d
(parser
: Parser) do
81 # guarded action for state '{' string ':'
82 # 7 shift(s) and 0 reduce(s)
83 private fun action_s_39d_123d_39d_32dstring_32d_39d_58d_39d
(parser
: Parser) do
86 # guarded action for state '[' elements ','
87 # 7 shift(s) and 0 reduce(s)
88 private fun action_s_39d_91d_39d_32delements_32d_39d_44d_39d
(parser
: Parser) do
94 redef fun action_sStart
(parser
) do
95 parser
.shift
(state__39d_123d_39d
)
97 redef fun action_s_39d_91d_39d
(parser
) do
98 parser
.shift
(state__39d_123d_39d
)
100 redef fun action_s_39d_123d_39d_32dstring_32d_39d_58d_39d
(parser
) do
101 parser
.shift
(state__39d_123d_39d
)
103 redef fun action_s_39d_91d_39d_32delements_32d_39d_44d_39d
(parser
) do
104 parser
.shift
(state__39d_123d_39d
)
106 redef fun node_name
do return "\'\{\'"
110 redef fun action_s_39d_123d_39d
(parser
) do
111 parser
.shift
(state__39d_123d_39d_32d_39d_125d_39d
)
113 redef fun action_s_39d_123d_39d_32dmembers
(parser
) do
114 parser
.shift
(state__39d_123d_39d_32dmembers_32d_39d_125d_39d
)
116 redef fun node_name
do return "\'\}\'"
120 redef fun action_sStart
(parser
) do
121 parser
.shift
(state__39d_91d_39d
)
123 redef fun action_s_39d_91d_39d
(parser
) do
124 parser
.shift
(state__39d_91d_39d
)
126 redef fun action_s_39d_123d_39d_32dstring_32d_39d_58d_39d
(parser
) do
127 parser
.shift
(state__39d_91d_39d
)
129 redef fun action_s_39d_91d_39d_32delements_32d_39d_44d_39d
(parser
) do
130 parser
.shift
(state__39d_91d_39d
)
132 redef fun node_name
do return "\'[\'"
136 redef fun action_s_39d_91d_39d
(parser
) do
137 parser
.shift
(state__39d_91d_39d_32d_39d_93d_39d
)
139 redef fun action_s_39d_91d_39d_32delements
(parser
) do
140 parser
.shift
(state__39d_91d_39d_32delements_32d_39d_93d_39d
)
142 redef fun node_name
do return "\']\'"
146 redef fun action_sStart
(parser
) do
147 parser
.shift
(state_number
)
149 redef fun action_s_39d_91d_39d
(parser
) do
150 parser
.shift
(state_number
)
152 redef fun action_s_39d_123d_39d_32dstring_32d_39d_58d_39d
(parser
) do
153 parser
.shift
(state_number
)
155 redef fun action_s_39d_91d_39d_32delements_32d_39d_44d_39d
(parser
) do
156 parser
.shift
(state_number
)
158 redef fun node_name
do return "number"
162 redef fun action_sStart
(parser
) do
163 parser
.shift
(state_string
)
165 redef fun action_s_39d_123d_39d
(parser
) do
166 parser
.shift
(state__39d_123d_39d_32dstring
)
168 redef fun action_s_39d_91d_39d
(parser
) do
169 parser
.shift
(state_string
)
171 redef fun action_s_39d_123d_39d_32dmembers_32d_39d_44d_39d
(parser
) do
172 parser
.shift
(state__39d_123d_39d_32dstring
)
174 redef fun action_s_39d_123d_39d_32dstring_32d_39d_58d_39d
(parser
) do
175 parser
.shift
(state_string
)
177 redef fun action_s_39d_91d_39d_32delements_32d_39d_44d_39d
(parser
) do
178 parser
.shift
(state_string
)
180 redef fun node_name
do return "string"
184 redef fun action_sStart
(parser
) do
185 parser
.shift
(state__39dtrue_39d
)
187 redef fun action_s_39d_91d_39d
(parser
) do
188 parser
.shift
(state__39dtrue_39d
)
190 redef fun action_s_39d_123d_39d_32dstring_32d_39d_58d_39d
(parser
) do
191 parser
.shift
(state__39dtrue_39d
)
193 redef fun action_s_39d_91d_39d_32delements_32d_39d_44d_39d
(parser
) do
194 parser
.shift
(state__39dtrue_39d
)
196 redef fun node_name
do return "\'true\'"
200 redef fun action_sStart
(parser
) do
201 parser
.shift
(state__39dfalse_39d
)
203 redef fun action_s_39d_91d_39d
(parser
) do
204 parser
.shift
(state__39dfalse_39d
)
206 redef fun action_s_39d_123d_39d_32dstring_32d_39d_58d_39d
(parser
) do
207 parser
.shift
(state__39dfalse_39d
)
209 redef fun action_s_39d_91d_39d_32delements_32d_39d_44d_39d
(parser
) do
210 parser
.shift
(state__39dfalse_39d
)
212 redef fun node_name
do return "\'false\'"
216 redef fun action_sStart
(parser
) do
217 parser
.shift
(state__39dnull_39d
)
219 redef fun action_s_39d_91d_39d
(parser
) do
220 parser
.shift
(state__39dnull_39d
)
222 redef fun action_s_39d_123d_39d_32dstring_32d_39d_58d_39d
(parser
) do
223 parser
.shift
(state__39dnull_39d
)
225 redef fun action_s_39d_91d_39d_32delements_32d_39d_44d_39d
(parser
) do
226 parser
.shift
(state__39dnull_39d
)
228 redef fun node_name
do return "\'null\'"
232 redef fun action_s_39d_123d_39d_32dmembers
(parser
) do
233 parser
.shift
(state__39d_123d_39d_32dmembers_32d_39d_44d_39d
)
235 redef fun action_s_39d_91d_39d_32delements
(parser
) do
236 parser
.shift
(state__39d_91d_39d_32delements_32d_39d_44d_39d
)
238 redef fun node_name
do return "\',\'"
242 redef fun action_s_39d_123d_39d_32dstring
(parser
) do
243 parser
.shift
(state__39d_123d_39d_32dstring_32d_39d_58d_39d
)
245 redef fun node_name
do return "\':\'"
249 redef fun action_svalue
(parser
) do
250 parser
.shift
(state_value_32dEof
)
252 redef fun node_name
do return "Eof"
255 private fun goto_s_39d_123d_39d
(parser
: Parser) do abort
256 private fun goto_s_39d_91d_39d
(parser
: Parser) do abort
260 redef fun goto_s_39d_91d_39d
(parser
) do
261 parser
.push
(state__39d_91d_39d_32dvalue
)
266 redef fun goto_s_39d_123d_39d
(parser
) do
267 parser
.push
(state__39d_123d_39d_32dmembers
)
272 redef fun goto_s_39d_123d_39d
(parser
) do
273 parser
.push
(state__39d_123d_39d_32dpair
)
278 redef fun goto_s_39d_91d_39d
(parser
) do
279 parser
.push
(state__39d_91d_39d_32delements
)
287 redef fun node_name
do return "value"
291 redef fun node_name
do return "value_number"
292 var n_number
: Nnumber
293 init(n_number
: Nnumber) do
294 self.n_number
= n_number
296 redef fun number_of_children
do return 1
297 redef fun child
(i
) do
298 if i
== 0 then return n_number
304 redef fun node_name
do return "value_string"
305 var n_string
: Nstring
306 init(n_string
: Nstring) do
307 self.n_string
= n_string
309 redef fun number_of_children
do return 1
310 redef fun child
(i
) do
311 if i
== 0 then return n_string
317 redef fun node_name
do return "value_true"
318 var n_0
: N_39dtrue_39d
319 init(n_0
: N_39dtrue_39d) do
322 redef fun number_of_children
do return 1
323 redef fun child
(i
) do
324 if i
== 0 then return n_0
330 redef fun node_name
do return "value_false"
331 var n_0
: N_39dfalse_39d
332 init(n_0
: N_39dfalse_39d) do
335 redef fun number_of_children
do return 1
336 redef fun child
(i
) do
337 if i
== 0 then return n_0
343 redef fun node_name
do return "value_null"
344 var n_0
: N_39dnull_39d
345 init(n_0
: N_39dnull_39d) do
348 redef fun number_of_children
do return 1
349 redef fun child
(i
) do
350 if i
== 0 then return n_0
356 redef fun node_name
do return "value_object"
357 var n_0
: N_39d_123d_39d
358 var n_members
: nullable Nmembers
359 var n_2
: N_39d_125d_39d
360 init(n_0
: N_39d_123d_39d, n_members
: nullable Nmembers, n_2
: N_39d_125d_39d) do
362 self.n_members
= n_members
365 redef fun number_of_children
do return 3
366 redef fun child
(i
) do
367 if i
== 0 then return n_0
368 if i
== 1 then return n_members
369 if i
== 2 then return n_2
375 redef fun node_name
do return "value_array"
376 var n_0
: N_39d_91d_39d
377 var n_elements
: nullable Nelements
378 var n_2
: N_39d_93d_39d
379 init(n_0
: N_39d_91d_39d, n_elements
: nullable Nelements, n_2
: N_39d_93d_39d) do
381 self.n_elements
= n_elements
384 redef fun number_of_children
do return 3
385 redef fun child
(i
) do
386 if i
== 0 then return n_0
387 if i
== 1 then return n_elements
388 if i
== 2 then return n_2
394 redef fun node_name
do return "members"
398 redef fun node_name
do return "members_tail"
399 var n_members
: Nmembers
400 var n_1
: N_39d_44d_39d
402 init(n_members
: Nmembers, n_1
: N_39d_44d_39d, n_pair
: Npair) do
403 self.n_members
= n_members
407 redef fun number_of_children
do return 3
408 redef fun child
(i
) do
409 if i
== 0 then return n_members
410 if i
== 1 then return n_1
411 if i
== 2 then return n_pair
417 redef fun node_name
do return "members_head"
419 init(n_pair
: Npair) do
422 redef fun number_of_children
do return 1
423 redef fun child
(i
) do
424 if i
== 0 then return n_pair
430 redef fun node_name
do return "pair"
431 var n_string
: Nstring
432 var n_1
: N_39d_58d_39d
434 init(n_string
: Nstring, n_1
: N_39d_58d_39d, n_value
: Nvalue) do
435 self.n_string
= n_string
437 self.n_value
= n_value
439 redef fun number_of_children
do return 3
440 redef fun child
(i
) do
441 if i
== 0 then return n_string
442 if i
== 1 then return n_1
443 if i
== 2 then return n_value
449 redef fun node_name
do return "elements"
453 redef fun node_name
do return "elements_tail"
454 var n_elements
: Nelements
455 var n_1
: N_39d_44d_39d
457 init(n_elements
: Nelements, n_1
: N_39d_44d_39d, n_value
: Nvalue) do
458 self.n_elements
= n_elements
460 self.n_value
= n_value
462 redef fun number_of_children
do return 3
463 redef fun child
(i
) do
464 if i
== 0 then return n_elements
465 if i
== 1 then return n_1
466 if i
== 2 then return n_value
472 redef fun node_name
do return "elements_head"
474 init(n_value
: Nvalue) do
475 self.n_value
= n_value
477 redef fun number_of_children
do return 1
478 redef fun child
(i
) do
479 if i
== 0 then return n_value
485 redef fun node_name
do return "_start"
489 redef fun node_name
do return "Start"
492 init(n_0
: Nvalue, n_1
: NEof) do
496 redef fun number_of_children
do return 2
497 redef fun child
(i
) do
498 if i
== 0 then return n_0
499 if i
== 1 then return n_1
504 private class LRStateStart
506 redef fun to_s
do return "Start"
507 redef fun error_msg
do return "value"
508 redef fun action
(parser
) do
509 parser
.peek_token
.action_sStart
(parser
)
511 redef fun goto
(parser
, goto
) do
512 parser
.push
(state_value
)
516 private class LRStatevalue
518 redef fun to_s
do return "value"
519 redef fun error_msg
do return "Eof"
520 redef fun action
(parser
) do
521 parser
.peek_token
.action_svalue
(parser
)
525 private class LRStatenumber
527 redef fun to_s
do return "number"
528 redef fun error_msg
do return ""
529 redef fun action
(parser
) do
530 # REDUCE value::value_number=number
531 var n0
= parser
.pop
.as(Nnumber)
532 var p1
= new Nvalue_number(n0
)
534 parser
.node_stack
.push prod
535 parser
.goto
(goto_Nvalue
)
539 private class LRStatestring
541 redef fun to_s
do return "string"
542 redef fun error_msg
do return ""
543 redef fun action
(parser
) do
544 # REDUCE value::value_string=string
545 var n0
= parser
.pop
.as(Nstring)
546 var p1
= new Nvalue_string(n0
)
548 parser
.node_stack
.push prod
549 parser
.goto
(goto_Nvalue
)
553 private class LRState_39dtrue_39d
555 redef fun to_s
do return "\'true\'"
556 redef fun error_msg
do return ""
557 redef fun action
(parser
) do
558 # REDUCE value::value_true='true'
559 var n0
= parser
.pop
.as(N_39dtrue_39d)
560 var p1
= new Nvalue_true(n0
)
562 parser
.node_stack
.push prod
563 parser
.goto
(goto_Nvalue
)
567 private class LRState_39dfalse_39d
569 redef fun to_s
do return "\'false\'"
570 redef fun error_msg
do return ""
571 redef fun action
(parser
) do
572 # REDUCE value::value_false='false'
573 var n0
= parser
.pop
.as(N_39dfalse_39d)
574 var p1
= new Nvalue_false(n0
)
576 parser
.node_stack
.push prod
577 parser
.goto
(goto_Nvalue
)
581 private class LRState_39dnull_39d
583 redef fun to_s
do return "\'null\'"
584 redef fun error_msg
do return ""
585 redef fun action
(parser
) do
586 # REDUCE value::value_null='null'
587 var n0
= parser
.pop
.as(N_39dnull_39d)
588 var p1
= new Nvalue_null(n0
)
590 parser
.node_stack
.push prod
591 parser
.goto
(goto_Nvalue
)
595 private class LRState_39d_123d_39d
597 redef fun to_s
do return "\'\{\'"
598 redef fun error_msg
do return "members, pair"
599 redef fun action
(parser
) do
600 parser
.peek_token
.action_s_39d_123d_39d
(parser
)
602 redef fun goto
(parser
, goto
) do
603 goto
.goto_s_39d_123d_39d
(parser
)
607 private class LRState_39d_91d_39d
609 redef fun to_s
do return "\'[\'"
610 redef fun error_msg
do return "elements, value"
611 redef fun action
(parser
) do
612 parser
.peek_token
.action_s_39d_91d_39d
(parser
)
614 redef fun goto
(parser
, goto
) do
615 goto
.goto_s_39d_91d_39d
(parser
)
619 private class LRStatevalue_32dEof
621 redef fun to_s
do return "value Eof"
622 redef fun error_msg
do return ""
623 redef fun action
(parser
) do
624 # REDUCE _start::Start=value Eof
625 var n1
= parser
.pop
.as(NEof)
626 var n0
= parser
.pop
.as(Nvalue)
627 var p1
= new NStart(n0
, n1
)
629 parser
.node_stack
.push prod
634 private class LRState_39d_123d_39d_32dmembers
636 redef fun to_s
do return "\'\{\' members"
637 redef fun error_msg
do return "\'\}\', \',\'"
638 redef fun action
(parser
) do
639 parser
.peek_token
.action_s_39d_123d_39d_32dmembers
(parser
)
643 private class LRState_39d_123d_39d_32d_39d_125d_39d
645 redef fun to_s
do return "\'\{\' \'\}\'"
646 redef fun error_msg
do return ""
647 redef fun action
(parser
) do
648 # REDUCE value::value_object_1='{' '}'
649 var n1
= parser
.pop
.as(N_39d_125d_39d)
650 var n0
= parser
.pop
.as(N_39d_123d_39d)
651 var p1
= new Nvalue_object(n0
, null, n1
)
653 parser
.node_stack
.push prod
654 parser
.goto
(goto_Nvalue
)
658 private class LRState_39d_123d_39d_32dpair
660 redef fun to_s
do return "\'\{\' pair"
661 redef fun error_msg
do return ""
662 redef fun action
(parser
) do
663 # REDUCE members::members_head=pair
664 var n0
= parser
.pop
.as(Npair)
665 var p1
= new Nmembers_head(n0
)
667 parser
.node_stack
.push prod
668 parser
.goto
(goto_Nmembers
)
672 private class LRState_39d_123d_39d_32dstring
674 redef fun to_s
do return "\'\{\' string"
675 redef fun error_msg
do return "\':\'"
676 redef fun action
(parser
) do
677 parser
.peek_token
.action_s_39d_123d_39d_32dstring
(parser
)
681 private class LRState_39d_91d_39d_32delements
683 redef fun to_s
do return "\'[\' elements"
684 redef fun error_msg
do return "\']\', \',\'"
685 redef fun action
(parser
) do
686 parser
.peek_token
.action_s_39d_91d_39d_32delements
(parser
)
690 private class LRState_39d_91d_39d_32d_39d_93d_39d
692 redef fun to_s
do return "\'[\' \']\'"
693 redef fun error_msg
do return ""
694 redef fun action
(parser
) do
695 # REDUCE value::value_array_1='[' ']'
696 var n1
= parser
.pop
.as(N_39d_93d_39d)
697 var n0
= parser
.pop
.as(N_39d_91d_39d)
698 var p1
= new Nvalue_array(n0
, null, n1
)
700 parser
.node_stack
.push prod
701 parser
.goto
(goto_Nvalue
)
705 private class LRState_39d_91d_39d_32dvalue
707 redef fun to_s
do return "\'[\' value"
708 redef fun error_msg
do return ""
709 redef fun action
(parser
) do
710 # REDUCE elements::elements_head=value
711 var n0
= parser
.pop
.as(Nvalue)
712 var p1
= new Nelements_head(n0
)
714 parser
.node_stack
.push prod
715 parser
.goto
(goto_Nelements
)
718 # State '{' members '}'
719 private class LRState_39d_123d_39d_32dmembers_32d_39d_125d_39d
721 redef fun to_s
do return "\'\{\' members \'\}\'"
722 redef fun error_msg
do return ""
723 redef fun action
(parser
) do
724 # REDUCE value::value_object_0='{' members '}'
725 var n2
= parser
.pop
.as(N_39d_125d_39d)
726 var n1
= parser
.pop
.as(Nmembers)
727 var n0
= parser
.pop
.as(N_39d_123d_39d)
728 var p1
= new Nvalue_object(n0
, n1
, n2
)
730 parser
.node_stack
.push prod
731 parser
.goto
(goto_Nvalue
)
734 # State '{' members ','
735 private class LRState_39d_123d_39d_32dmembers_32d_39d_44d_39d
737 redef fun to_s
do return "\'\{\' members \',\'"
738 redef fun error_msg
do return "pair"
739 redef fun action
(parser
) do
740 parser
.peek_token
.action_s_39d_123d_39d_32dmembers_32d_39d_44d_39d
(parser
)
742 redef fun goto
(parser
, goto
) do
743 parser
.push
(state__39d_123d_39d_32dmembers_32d_39d_44d_39d_32dpair
)
746 # State '{' string ':'
747 private class LRState_39d_123d_39d_32dstring_32d_39d_58d_39d
749 redef fun to_s
do return "\'\{\' string \':\'"
750 redef fun error_msg
do return "value"
751 redef fun action
(parser
) do
752 parser
.peek_token
.action_s_39d_123d_39d_32dstring_32d_39d_58d_39d
(parser
)
754 redef fun goto
(parser
, goto
) do
755 parser
.push
(state__39d_123d_39d_32dstring_32d_39d_58d_39d_32dvalue
)
758 # State '[' elements ']'
759 private class LRState_39d_91d_39d_32delements_32d_39d_93d_39d
761 redef fun to_s
do return "\'[\' elements \']\'"
762 redef fun error_msg
do return ""
763 redef fun action
(parser
) do
764 # REDUCE value::value_array_0='[' elements ']'
765 var n2
= parser
.pop
.as(N_39d_93d_39d)
766 var n1
= parser
.pop
.as(Nelements)
767 var n0
= parser
.pop
.as(N_39d_91d_39d)
768 var p1
= new Nvalue_array(n0
, n1
, n2
)
770 parser
.node_stack
.push prod
771 parser
.goto
(goto_Nvalue
)
774 # State '[' elements ','
775 private class LRState_39d_91d_39d_32delements_32d_39d_44d_39d
777 redef fun to_s
do return "\'[\' elements \',\'"
778 redef fun error_msg
do return "value"
779 redef fun action
(parser
) do
780 parser
.peek_token
.action_s_39d_91d_39d_32delements_32d_39d_44d_39d
(parser
)
782 redef fun goto
(parser
, goto
) do
783 parser
.push
(state__39d_91d_39d_32delements_32d_39d_44d_39d_32dvalue
)
786 # State '{' members ',' pair
787 private class LRState_39d_123d_39d_32dmembers_32d_39d_44d_39d_32dpair
789 redef fun to_s
do return "\'\{\' members \',\' pair"
790 redef fun error_msg
do return ""
791 redef fun action
(parser
) do
792 # REDUCE members::members_tail=members ',' pair
793 var n2
= parser
.pop
.as(Npair)
794 var n1
= parser
.pop
.as(N_39d_44d_39d)
795 var n0
= parser
.pop
.as(Nmembers)
796 var p1
= new Nmembers_tail(n0
, n1
, n2
)
798 parser
.node_stack
.push prod
799 parser
.goto
(goto_Nmembers
)
802 # State '{' string ':' value
803 private class LRState_39d_123d_39d_32dstring_32d_39d_58d_39d_32dvalue
805 redef fun to_s
do return "\'\{\' string \':\' value"
806 redef fun error_msg
do return ""
807 redef fun action
(parser
) do
808 # REDUCE pair::pair=string ':' value
809 var n2
= parser
.pop
.as(Nvalue)
810 var n1
= parser
.pop
.as(N_39d_58d_39d)
811 var n0
= parser
.pop
.as(Nstring)
812 var p1
= new Npair(n0
, n1
, n2
)
814 parser
.node_stack
.push prod
815 parser
.goto
(goto_Npair
)
818 # State '[' elements ',' value
819 private class LRState_39d_91d_39d_32delements_32d_39d_44d_39d_32dvalue
821 redef fun to_s
do return "\'[\' elements \',\' value"
822 redef fun error_msg
do return ""
823 redef fun action
(parser
) do
824 # REDUCE elements::elements_tail=elements ',' value
825 var n2
= parser
.pop
.as(Nvalue)
826 var n1
= parser
.pop
.as(N_39d_44d_39d)
827 var n0
= parser
.pop
.as(Nelements)
828 var p1
= new Nelements_tail(n0
, n1
, n2
)
830 parser
.node_stack
.push prod
831 parser
.goto
(goto_Nelements
)