1 # Parser generated by nitcc for the grammar json
5 redef fun start_state
do return state_Start
8 private fun state_Start
: LRStateStart do return once
new LRStateStart
9 private fun state_value
: LRStatevalue do return once
new LRStatevalue
10 private fun state_number
: LRStatenumber do return once
new LRStatenumber
11 private fun state_string
: LRStatestring do return once
new LRStatestring
12 private fun state__39dtrue_39d
: LRState_39dtrue_39d do return once
new LRState_39dtrue_39d
13 private fun state__39dfalse_39d
: LRState_39dfalse_39d do return once
new LRState_39dfalse_39d
14 private fun state__39dnull_39d
: LRState_39dnull_39d do return once
new LRState_39dnull_39d
15 private fun state__39d_123d_39d
: LRState_39d_123d_39d do return once
new LRState_39d_123d_39d
16 private fun state__39d_91d_39d
: LRState_39d_91d_39d do return once
new LRState_39d_91d_39d
17 private fun state_value_32dEof
: LRStatevalue_32dEof do return once
new LRStatevalue_32dEof
18 private fun state__39d_123d_39d_32dmembers
: LRState_39d_123d_39d_32dmembers do return once
new LRState_39d_123d_39d_32dmembers
19 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
20 private fun state__39d_123d_39d_32dpair
: LRState_39d_123d_39d_32dpair do return once
new LRState_39d_123d_39d_32dpair
21 private fun state__39d_123d_39d_32dstring
: LRState_39d_123d_39d_32dstring do return once
new LRState_39d_123d_39d_32dstring
22 private fun state__39d_91d_39d_32delements
: LRState_39d_91d_39d_32delements do return once
new LRState_39d_91d_39d_32delements
23 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
24 private fun state__39d_91d_39d_32dvalue
: LRState_39d_91d_39d_32dvalue do return once
new LRState_39d_91d_39d_32dvalue
25 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
26 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
27 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
28 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
29 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
30 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
31 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
32 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
33 private fun goto_Nvalue
: Goto_Nvalue do return once
new Goto_Nvalue
34 private fun goto_Nmembers
: Goto_Nmembers do return once
new Goto_Nmembers
35 private fun goto_Npair
: Goto_Npair do return once
new Goto_Npair
36 private fun goto_Nelements
: Goto_Nelements do return once
new Goto_Nelements
37 private fun goto_N_start
: Goto_N_start do return once
new Goto_N_start
40 # guarded action for state Start
41 # 7 shift(s) and 0 reduce(s)
42 private fun action_sStart
(parser
: Parser) do
45 # guarded action for state value
46 # 1 shift(s) and 0 reduce(s)
47 private fun action_svalue
(parser
: Parser) do
50 # guarded action for state '{'
51 # 2 shift(s) and 0 reduce(s)
52 private fun action_s_39d_123d_39d
(parser
: Parser) do
55 # guarded action for state '['
56 # 8 shift(s) and 0 reduce(s)
57 private fun action_s_39d_91d_39d
(parser
: Parser) do
60 # guarded action for state '{' members
61 # 2 shift(s) and 0 reduce(s)
62 private fun action_s_39d_123d_39d_32dmembers
(parser
: Parser) do
65 # guarded action for state '{' string
66 # 1 shift(s) and 0 reduce(s)
67 private fun action_s_39d_123d_39d_32dstring
(parser
: Parser) do
70 # guarded action for state '[' elements
71 # 2 shift(s) and 0 reduce(s)
72 private fun action_s_39d_91d_39d_32delements
(parser
: Parser) do
75 # guarded action for state '{' members ','
76 # 1 shift(s) and 0 reduce(s)
77 private fun action_s_39d_123d_39d_32dmembers_32d_39d_44d_39d
(parser
: Parser) do
80 # guarded action for state '{' string ':'
81 # 7 shift(s) and 0 reduce(s)
82 private fun action_s_39d_123d_39d_32dstring_32d_39d_58d_39d
(parser
: Parser) do
85 # guarded action for state '[' elements ','
86 # 7 shift(s) and 0 reduce(s)
87 private fun action_s_39d_91d_39d_32delements_32d_39d_44d_39d
(parser
: Parser) do
93 redef fun action_sStart
(parser
) do
94 parser
.shift
(state__39d_123d_39d
)
96 redef fun action_s_39d_91d_39d
(parser
) do
97 parser
.shift
(state__39d_123d_39d
)
99 redef fun action_s_39d_123d_39d_32dstring_32d_39d_58d_39d
(parser
) do
100 parser
.shift
(state__39d_123d_39d
)
102 redef fun action_s_39d_91d_39d_32delements_32d_39d_44d_39d
(parser
) do
103 parser
.shift
(state__39d_123d_39d
)
105 redef fun node_name
do return "\'\{\'"
109 redef fun action_s_39d_123d_39d
(parser
) do
110 parser
.shift
(state__39d_123d_39d_32d_39d_125d_39d
)
112 redef fun action_s_39d_123d_39d_32dmembers
(parser
) do
113 parser
.shift
(state__39d_123d_39d_32dmembers_32d_39d_125d_39d
)
115 redef fun node_name
do return "\'\}\'"
119 redef fun action_sStart
(parser
) do
120 parser
.shift
(state__39d_91d_39d
)
122 redef fun action_s_39d_91d_39d
(parser
) do
123 parser
.shift
(state__39d_91d_39d
)
125 redef fun action_s_39d_123d_39d_32dstring_32d_39d_58d_39d
(parser
) do
126 parser
.shift
(state__39d_91d_39d
)
128 redef fun action_s_39d_91d_39d_32delements_32d_39d_44d_39d
(parser
) do
129 parser
.shift
(state__39d_91d_39d
)
131 redef fun node_name
do return "\'[\'"
135 redef fun action_s_39d_91d_39d
(parser
) do
136 parser
.shift
(state__39d_91d_39d_32d_39d_93d_39d
)
138 redef fun action_s_39d_91d_39d_32delements
(parser
) do
139 parser
.shift
(state__39d_91d_39d_32delements_32d_39d_93d_39d
)
141 redef fun node_name
do return "\']\'"
145 redef fun action_sStart
(parser
) do
146 parser
.shift
(state_number
)
148 redef fun action_s_39d_91d_39d
(parser
) do
149 parser
.shift
(state_number
)
151 redef fun action_s_39d_123d_39d_32dstring_32d_39d_58d_39d
(parser
) do
152 parser
.shift
(state_number
)
154 redef fun action_s_39d_91d_39d_32delements_32d_39d_44d_39d
(parser
) do
155 parser
.shift
(state_number
)
157 redef fun node_name
do return "number"
161 redef fun action_sStart
(parser
) do
162 parser
.shift
(state_string
)
164 redef fun action_s_39d_123d_39d
(parser
) do
165 parser
.shift
(state__39d_123d_39d_32dstring
)
167 redef fun action_s_39d_91d_39d
(parser
) do
168 parser
.shift
(state_string
)
170 redef fun action_s_39d_123d_39d_32dmembers_32d_39d_44d_39d
(parser
) do
171 parser
.shift
(state__39d_123d_39d_32dstring
)
173 redef fun action_s_39d_123d_39d_32dstring_32d_39d_58d_39d
(parser
) do
174 parser
.shift
(state_string
)
176 redef fun action_s_39d_91d_39d_32delements_32d_39d_44d_39d
(parser
) do
177 parser
.shift
(state_string
)
179 redef fun node_name
do return "string"
183 redef fun action_sStart
(parser
) do
184 parser
.shift
(state__39dtrue_39d
)
186 redef fun action_s_39d_91d_39d
(parser
) do
187 parser
.shift
(state__39dtrue_39d
)
189 redef fun action_s_39d_123d_39d_32dstring_32d_39d_58d_39d
(parser
) do
190 parser
.shift
(state__39dtrue_39d
)
192 redef fun action_s_39d_91d_39d_32delements_32d_39d_44d_39d
(parser
) do
193 parser
.shift
(state__39dtrue_39d
)
195 redef fun node_name
do return "\'true\'"
199 redef fun action_sStart
(parser
) do
200 parser
.shift
(state__39dfalse_39d
)
202 redef fun action_s_39d_91d_39d
(parser
) do
203 parser
.shift
(state__39dfalse_39d
)
205 redef fun action_s_39d_123d_39d_32dstring_32d_39d_58d_39d
(parser
) do
206 parser
.shift
(state__39dfalse_39d
)
208 redef fun action_s_39d_91d_39d_32delements_32d_39d_44d_39d
(parser
) do
209 parser
.shift
(state__39dfalse_39d
)
211 redef fun node_name
do return "\'false\'"
215 redef fun action_sStart
(parser
) do
216 parser
.shift
(state__39dnull_39d
)
218 redef fun action_s_39d_91d_39d
(parser
) do
219 parser
.shift
(state__39dnull_39d
)
221 redef fun action_s_39d_123d_39d_32dstring_32d_39d_58d_39d
(parser
) do
222 parser
.shift
(state__39dnull_39d
)
224 redef fun action_s_39d_91d_39d_32delements_32d_39d_44d_39d
(parser
) do
225 parser
.shift
(state__39dnull_39d
)
227 redef fun node_name
do return "\'null\'"
231 redef fun action_s_39d_123d_39d_32dmembers
(parser
) do
232 parser
.shift
(state__39d_123d_39d_32dmembers_32d_39d_44d_39d
)
234 redef fun action_s_39d_91d_39d_32delements
(parser
) do
235 parser
.shift
(state__39d_91d_39d_32delements_32d_39d_44d_39d
)
237 redef fun node_name
do return "\',\'"
241 redef fun action_s_39d_123d_39d_32dstring
(parser
) do
242 parser
.shift
(state__39d_123d_39d_32dstring_32d_39d_58d_39d
)
244 redef fun node_name
do return "\':\'"
248 redef fun action_svalue
(parser
) do
249 parser
.shift
(state_value_32dEof
)
251 redef fun node_name
do return "Eof"
254 private fun goto_s_39d_123d_39d
(parser
: Parser) do abort
255 private fun goto_s_39d_91d_39d
(parser
: Parser) do abort
259 redef fun goto_s_39d_91d_39d
(parser
) do
260 parser
.push
(state__39d_91d_39d_32dvalue
)
265 redef fun goto_s_39d_123d_39d
(parser
) do
266 parser
.push
(state__39d_123d_39d_32dmembers
)
271 redef fun goto_s_39d_123d_39d
(parser
) do
272 parser
.push
(state__39d_123d_39d_32dpair
)
277 redef fun goto_s_39d_91d_39d
(parser
) do
278 parser
.push
(state__39d_91d_39d_32delements
)
286 redef fun node_name
do return "value"
290 redef fun node_name
do return "value_number"
291 var n_number
: Nnumber
292 init(n_number
: Nnumber) do
293 self.n_number
= n_number
295 redef fun number_of_children
do return 1
296 redef fun child
(i
) do
297 if i
== 0 then return n_number
303 redef fun node_name
do return "value_string"
304 var n_string
: Nstring
305 init(n_string
: Nstring) do
306 self.n_string
= n_string
308 redef fun number_of_children
do return 1
309 redef fun child
(i
) do
310 if i
== 0 then return n_string
316 redef fun node_name
do return "value_true"
317 var n_0
: N_39dtrue_39d
318 init(n_0
: N_39dtrue_39d) do
321 redef fun number_of_children
do return 1
322 redef fun child
(i
) do
323 if i
== 0 then return n_0
329 redef fun node_name
do return "value_false"
330 var n_0
: N_39dfalse_39d
331 init(n_0
: N_39dfalse_39d) do
334 redef fun number_of_children
do return 1
335 redef fun child
(i
) do
336 if i
== 0 then return n_0
342 redef fun node_name
do return "value_null"
343 var n_0
: N_39dnull_39d
344 init(n_0
: N_39dnull_39d) do
347 redef fun number_of_children
do return 1
348 redef fun child
(i
) do
349 if i
== 0 then return n_0
355 redef fun node_name
do return "value_object"
356 var n_0
: N_39d_123d_39d
357 var n_members
: nullable Nmembers
358 var n_2
: N_39d_125d_39d
359 init(n_0
: N_39d_123d_39d, n_members
: nullable Nmembers, n_2
: N_39d_125d_39d) do
361 self.n_members
= n_members
364 redef fun number_of_children
do return 3
365 redef fun child
(i
) do
366 if i
== 0 then return n_0
367 if i
== 1 then return n_members
368 if i
== 2 then return n_2
374 redef fun node_name
do return "value_array"
375 var n_0
: N_39d_91d_39d
376 var n_elements
: nullable Nelements
377 var n_2
: N_39d_93d_39d
378 init(n_0
: N_39d_91d_39d, n_elements
: nullable Nelements, n_2
: N_39d_93d_39d) do
380 self.n_elements
= n_elements
383 redef fun number_of_children
do return 3
384 redef fun child
(i
) do
385 if i
== 0 then return n_0
386 if i
== 1 then return n_elements
387 if i
== 2 then return n_2
393 redef fun node_name
do return "members"
397 redef fun node_name
do return "members_tail"
398 var n_members
: Nmembers
399 var n_1
: N_39d_44d_39d
401 init(n_members
: Nmembers, n_1
: N_39d_44d_39d, n_pair
: Npair) do
402 self.n_members
= n_members
406 redef fun number_of_children
do return 3
407 redef fun child
(i
) do
408 if i
== 0 then return n_members
409 if i
== 1 then return n_1
410 if i
== 2 then return n_pair
416 redef fun node_name
do return "members_head"
418 init(n_pair
: Npair) do
421 redef fun number_of_children
do return 1
422 redef fun child
(i
) do
423 if i
== 0 then return n_pair
429 redef fun node_name
do return "pair"
430 var n_string
: Nstring
431 var n_1
: N_39d_58d_39d
433 init(n_string
: Nstring, n_1
: N_39d_58d_39d, n_value
: Nvalue) do
434 self.n_string
= n_string
436 self.n_value
= n_value
438 redef fun number_of_children
do return 3
439 redef fun child
(i
) do
440 if i
== 0 then return n_string
441 if i
== 1 then return n_1
442 if i
== 2 then return n_value
448 redef fun node_name
do return "elements"
452 redef fun node_name
do return "elements_tail"
453 var n_elements
: Nelements
454 var n_1
: N_39d_44d_39d
456 init(n_elements
: Nelements, n_1
: N_39d_44d_39d, n_value
: Nvalue) do
457 self.n_elements
= n_elements
459 self.n_value
= n_value
461 redef fun number_of_children
do return 3
462 redef fun child
(i
) do
463 if i
== 0 then return n_elements
464 if i
== 1 then return n_1
465 if i
== 2 then return n_value
471 redef fun node_name
do return "elements_head"
473 init(n_value
: Nvalue) do
474 self.n_value
= n_value
476 redef fun number_of_children
do return 1
477 redef fun child
(i
) do
478 if i
== 0 then return n_value
484 redef fun node_name
do return "_start"
488 redef fun node_name
do return "Start"
491 init(n_0
: Nvalue, n_1
: NEof) do
495 redef fun number_of_children
do return 2
496 redef fun child
(i
) do
497 if i
== 0 then return n_0
498 if i
== 1 then return n_1
503 private class LRStateStart
505 redef fun to_s
do return "Start"
506 redef fun error_msg
do return "value"
507 redef fun action
(parser
) do
508 parser
.peek_token
.action_sStart
(parser
)
510 redef fun goto
(parser
, goto
) do
511 parser
.push
(state_value
)
515 private class LRStatevalue
517 redef fun to_s
do return "value"
518 redef fun error_msg
do return "Eof"
519 redef fun action
(parser
) do
520 parser
.peek_token
.action_svalue
(parser
)
524 private class LRStatenumber
526 redef fun to_s
do return "number"
527 redef fun error_msg
do return ""
528 redef fun action
(parser
) do
529 # REDUCE value::value_number=number
530 var n0
= parser
.pop
.as(Nnumber)
531 var p1
= new Nvalue_number(n0
)
533 parser
.node_stack
.push prod
534 parser
.goto
(goto_Nvalue
)
538 private class LRStatestring
540 redef fun to_s
do return "string"
541 redef fun error_msg
do return ""
542 redef fun action
(parser
) do
543 # REDUCE value::value_string=string
544 var n0
= parser
.pop
.as(Nstring)
545 var p1
= new Nvalue_string(n0
)
547 parser
.node_stack
.push prod
548 parser
.goto
(goto_Nvalue
)
552 private class LRState_39dtrue_39d
554 redef fun to_s
do return "\'true\'"
555 redef fun error_msg
do return ""
556 redef fun action
(parser
) do
557 # REDUCE value::value_true='true'
558 var n0
= parser
.pop
.as(N_39dtrue_39d)
559 var p1
= new Nvalue_true(n0
)
561 parser
.node_stack
.push prod
562 parser
.goto
(goto_Nvalue
)
566 private class LRState_39dfalse_39d
568 redef fun to_s
do return "\'false\'"
569 redef fun error_msg
do return ""
570 redef fun action
(parser
) do
571 # REDUCE value::value_false='false'
572 var n0
= parser
.pop
.as(N_39dfalse_39d)
573 var p1
= new Nvalue_false(n0
)
575 parser
.node_stack
.push prod
576 parser
.goto
(goto_Nvalue
)
580 private class LRState_39dnull_39d
582 redef fun to_s
do return "\'null\'"
583 redef fun error_msg
do return ""
584 redef fun action
(parser
) do
585 # REDUCE value::value_null='null'
586 var n0
= parser
.pop
.as(N_39dnull_39d)
587 var p1
= new Nvalue_null(n0
)
589 parser
.node_stack
.push prod
590 parser
.goto
(goto_Nvalue
)
594 private class LRState_39d_123d_39d
596 redef fun to_s
do return "\'\{\'"
597 redef fun error_msg
do return "members, pair"
598 redef fun action
(parser
) do
599 parser
.peek_token
.action_s_39d_123d_39d
(parser
)
601 redef fun goto
(parser
, goto
) do
602 goto
.goto_s_39d_123d_39d
(parser
)
606 private class LRState_39d_91d_39d
608 redef fun to_s
do return "\'[\'"
609 redef fun error_msg
do return "elements, value"
610 redef fun action
(parser
) do
611 parser
.peek_token
.action_s_39d_91d_39d
(parser
)
613 redef fun goto
(parser
, goto
) do
614 goto
.goto_s_39d_91d_39d
(parser
)
618 private class LRStatevalue_32dEof
620 redef fun to_s
do return "value Eof"
621 redef fun error_msg
do return ""
622 redef fun action
(parser
) do
623 # REDUCE _start::Start=value Eof
624 var n1
= parser
.pop
.as(NEof)
625 var n0
= parser
.pop
.as(Nvalue)
626 var p1
= new NStart(n0
, n1
)
628 parser
.node_stack
.push prod
633 private class LRState_39d_123d_39d_32dmembers
635 redef fun to_s
do return "\'\{\' members"
636 redef fun error_msg
do return "\'\}\', \',\'"
637 redef fun action
(parser
) do
638 parser
.peek_token
.action_s_39d_123d_39d_32dmembers
(parser
)
642 private class LRState_39d_123d_39d_32d_39d_125d_39d
644 redef fun to_s
do return "\'\{\' \'\}\'"
645 redef fun error_msg
do return ""
646 redef fun action
(parser
) do
647 # REDUCE value::value_object_1='{' '}'
648 var n1
= parser
.pop
.as(N_39d_125d_39d)
649 var n0
= parser
.pop
.as(N_39d_123d_39d)
650 var p1
= new Nvalue_object(n0
, null, n1
)
652 parser
.node_stack
.push prod
653 parser
.goto
(goto_Nvalue
)
657 private class LRState_39d_123d_39d_32dpair
659 redef fun to_s
do return "\'\{\' pair"
660 redef fun error_msg
do return ""
661 redef fun action
(parser
) do
662 # REDUCE members::members_head=pair
663 var n0
= parser
.pop
.as(Npair)
664 var p1
= new Nmembers_head(n0
)
666 parser
.node_stack
.push prod
667 parser
.goto
(goto_Nmembers
)
671 private class LRState_39d_123d_39d_32dstring
673 redef fun to_s
do return "\'\{\' string"
674 redef fun error_msg
do return "\':\'"
675 redef fun action
(parser
) do
676 parser
.peek_token
.action_s_39d_123d_39d_32dstring
(parser
)
680 private class LRState_39d_91d_39d_32delements
682 redef fun to_s
do return "\'[\' elements"
683 redef fun error_msg
do return "\']\', \',\'"
684 redef fun action
(parser
) do
685 parser
.peek_token
.action_s_39d_91d_39d_32delements
(parser
)
689 private class LRState_39d_91d_39d_32d_39d_93d_39d
691 redef fun to_s
do return "\'[\' \']\'"
692 redef fun error_msg
do return ""
693 redef fun action
(parser
) do
694 # REDUCE value::value_array_1='[' ']'
695 var n1
= parser
.pop
.as(N_39d_93d_39d)
696 var n0
= parser
.pop
.as(N_39d_91d_39d)
697 var p1
= new Nvalue_array(n0
, null, n1
)
699 parser
.node_stack
.push prod
700 parser
.goto
(goto_Nvalue
)
704 private class LRState_39d_91d_39d_32dvalue
706 redef fun to_s
do return "\'[\' value"
707 redef fun error_msg
do return ""
708 redef fun action
(parser
) do
709 # REDUCE elements::elements_head=value
710 var n0
= parser
.pop
.as(Nvalue)
711 var p1
= new Nelements_head(n0
)
713 parser
.node_stack
.push prod
714 parser
.goto
(goto_Nelements
)
717 # State '{' members '}'
718 private class LRState_39d_123d_39d_32dmembers_32d_39d_125d_39d
720 redef fun to_s
do return "\'\{\' members \'\}\'"
721 redef fun error_msg
do return ""
722 redef fun action
(parser
) do
723 # REDUCE value::value_object_0='{' members '}'
724 var n2
= parser
.pop
.as(N_39d_125d_39d)
725 var n1
= parser
.pop
.as(Nmembers)
726 var n0
= parser
.pop
.as(N_39d_123d_39d)
727 var p1
= new Nvalue_object(n0
, n1
, n2
)
729 parser
.node_stack
.push prod
730 parser
.goto
(goto_Nvalue
)
733 # State '{' members ','
734 private class LRState_39d_123d_39d_32dmembers_32d_39d_44d_39d
736 redef fun to_s
do return "\'\{\' members \',\'"
737 redef fun error_msg
do return "pair"
738 redef fun action
(parser
) do
739 parser
.peek_token
.action_s_39d_123d_39d_32dmembers_32d_39d_44d_39d
(parser
)
741 redef fun goto
(parser
, goto
) do
742 parser
.push
(state__39d_123d_39d_32dmembers_32d_39d_44d_39d_32dpair
)
745 # State '{' string ':'
746 private class LRState_39d_123d_39d_32dstring_32d_39d_58d_39d
748 redef fun to_s
do return "\'\{\' string \':\'"
749 redef fun error_msg
do return "value"
750 redef fun action
(parser
) do
751 parser
.peek_token
.action_s_39d_123d_39d_32dstring_32d_39d_58d_39d
(parser
)
753 redef fun goto
(parser
, goto
) do
754 parser
.push
(state__39d_123d_39d_32dstring_32d_39d_58d_39d_32dvalue
)
757 # State '[' elements ']'
758 private class LRState_39d_91d_39d_32delements_32d_39d_93d_39d
760 redef fun to_s
do return "\'[\' elements \']\'"
761 redef fun error_msg
do return ""
762 redef fun action
(parser
) do
763 # REDUCE value::value_array_0='[' elements ']'
764 var n2
= parser
.pop
.as(N_39d_93d_39d)
765 var n1
= parser
.pop
.as(Nelements)
766 var n0
= parser
.pop
.as(N_39d_91d_39d)
767 var p1
= new Nvalue_array(n0
, n1
, n2
)
769 parser
.node_stack
.push prod
770 parser
.goto
(goto_Nvalue
)
773 # State '[' elements ','
774 private class LRState_39d_91d_39d_32delements_32d_39d_44d_39d
776 redef fun to_s
do return "\'[\' elements \',\'"
777 redef fun error_msg
do return "value"
778 redef fun action
(parser
) do
779 parser
.peek_token
.action_s_39d_91d_39d_32delements_32d_39d_44d_39d
(parser
)
781 redef fun goto
(parser
, goto
) do
782 parser
.push
(state__39d_91d_39d_32delements_32d_39d_44d_39d_32dvalue
)
785 # State '{' members ',' pair
786 private class LRState_39d_123d_39d_32dmembers_32d_39d_44d_39d_32dpair
788 redef fun to_s
do return "\'\{\' members \',\' pair"
789 redef fun error_msg
do return ""
790 redef fun action
(parser
) do
791 # REDUCE members::members_tail=members ',' pair
792 var n2
= parser
.pop
.as(Npair)
793 var n1
= parser
.pop
.as(N_39d_44d_39d)
794 var n0
= parser
.pop
.as(Nmembers)
795 var p1
= new Nmembers_tail(n0
, n1
, n2
)
797 parser
.node_stack
.push prod
798 parser
.goto
(goto_Nmembers
)
801 # State '{' string ':' value
802 private class LRState_39d_123d_39d_32dstring_32d_39d_58d_39d_32dvalue
804 redef fun to_s
do return "\'\{\' string \':\' value"
805 redef fun error_msg
do return ""
806 redef fun action
(parser
) do
807 # REDUCE pair::pair=string ':' value
808 var n2
= parser
.pop
.as(Nvalue)
809 var n1
= parser
.pop
.as(N_39d_58d_39d)
810 var n0
= parser
.pop
.as(Nstring)
811 var p1
= new Npair(n0
, n1
, n2
)
813 parser
.node_stack
.push prod
814 parser
.goto
(goto_Npair
)
817 # State '[' elements ',' value
818 private class LRState_39d_91d_39d_32delements_32d_39d_44d_39d_32dvalue
820 redef fun to_s
do return "\'[\' elements \',\' value"
821 redef fun error_msg
do return ""
822 redef fun action
(parser
) do
823 # REDUCE elements::elements_tail=elements ',' value
824 var n2
= parser
.pop
.as(Nvalue)
825 var n1
= parser
.pop
.as(N_39d_44d_39d)
826 var n0
= parser
.pop
.as(Nelements)
827 var p1
= new Nelements_tail(n0
, n1
, n2
)
829 parser
.node_stack
.push prod
830 parser
.goto
(goto_Nelements
)