lib/json: regenerate with new nitcc
[nit.git] / lib / json / json_parser.nit
1 # Parser generated by nitcc for the grammar json
2 module json_parser is no_warning("missing-doc","old-init")
3 import nitcc_runtime
4 class Parser_json
5 super Parser
6 redef fun start_state do return state_Start
7 end
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 reduce_Nvalue_number(parser: Parser) do
35 # REDUCE value::value_number=number
36 var n0 = parser.pop.as(Nnumber)
37 var p1 = new Nvalue_number(n0)
38 var prod = p1
39 parser.node_stack.push prod
40 parser.goto(goto_Nvalue)
41 end
42 private fun reduce_Nvalue_string(parser: Parser) do
43 # REDUCE value::value_string=string
44 var n0 = parser.pop.as(Nstring)
45 var p1 = new Nvalue_string(n0)
46 var prod = p1
47 parser.node_stack.push prod
48 parser.goto(goto_Nvalue)
49 end
50 private fun reduce_Nvalue_true(parser: Parser) do
51 # REDUCE value::value_true='true'
52 var n0 = parser.pop.as(N_39dtrue_39d)
53 var p1 = new Nvalue_true(n0)
54 var prod = p1
55 parser.node_stack.push prod
56 parser.goto(goto_Nvalue)
57 end
58 private fun reduce_Nvalue_false(parser: Parser) do
59 # REDUCE value::value_false='false'
60 var n0 = parser.pop.as(N_39dfalse_39d)
61 var p1 = new Nvalue_false(n0)
62 var prod = p1
63 parser.node_stack.push prod
64 parser.goto(goto_Nvalue)
65 end
66 private fun reduce_Nvalue_null(parser: Parser) do
67 # REDUCE value::value_null='null'
68 var n0 = parser.pop.as(N_39dnull_39d)
69 var p1 = new Nvalue_null(n0)
70 var prod = p1
71 parser.node_stack.push prod
72 parser.goto(goto_Nvalue)
73 end
74 private fun reduce_Nvalue_object_95d0(parser: Parser) do
75 # REDUCE value::value_object_0='{' members '}'
76 var n2 = parser.pop.as(N_39d_125d_39d)
77 var n1 = parser.pop.as(Nmembers)
78 var n0 = parser.pop.as(N_39d_123d_39d)
79 var p1 = new Nvalue_object(n0, n1, n2)
80 var prod = p1
81 parser.node_stack.push prod
82 parser.goto(goto_Nvalue)
83 end
84 private fun reduce_Nvalue_object_95d1(parser: Parser) do
85 # REDUCE value::value_object_1='{' '}'
86 var n1 = parser.pop.as(N_39d_125d_39d)
87 var n0 = parser.pop.as(N_39d_123d_39d)
88 var p1 = new Nvalue_object(n0, null, n1)
89 var prod = p1
90 parser.node_stack.push prod
91 parser.goto(goto_Nvalue)
92 end
93 private fun reduce_Nvalue_array_95d0(parser: Parser) do
94 # REDUCE value::value_array_0='[' elements ']'
95 var n2 = parser.pop.as(N_39d_93d_39d)
96 var n1 = parser.pop.as(Nelements)
97 var n0 = parser.pop.as(N_39d_91d_39d)
98 var p1 = new Nvalue_array(n0, n1, n2)
99 var prod = p1
100 parser.node_stack.push prod
101 parser.goto(goto_Nvalue)
102 end
103 private fun reduce_Nvalue_array_95d1(parser: Parser) do
104 # REDUCE value::value_array_1='[' ']'
105 var n1 = parser.pop.as(N_39d_93d_39d)
106 var n0 = parser.pop.as(N_39d_91d_39d)
107 var p1 = new Nvalue_array(n0, null, n1)
108 var prod = p1
109 parser.node_stack.push prod
110 parser.goto(goto_Nvalue)
111 end
112 private fun goto_Nmembers: Goto_Nmembers do return once new Goto_Nmembers
113 private fun reduce_Nmembers_tail(parser: Parser) do
114 # REDUCE members::members_tail=members ',' pair
115 var n2 = parser.pop.as(Npair)
116 var n1 = parser.pop.as(N_39d_44d_39d)
117 var n0 = parser.pop.as(Nmembers)
118 var p1 = new Nmembers_tail(n0, n1, n2)
119 var prod = p1
120 parser.node_stack.push prod
121 parser.goto(goto_Nmembers)
122 end
123 private fun reduce_Nmembers_head(parser: Parser) do
124 # REDUCE members::members_head=pair
125 var n0 = parser.pop.as(Npair)
126 var p1 = new Nmembers_head(n0)
127 var prod = p1
128 parser.node_stack.push prod
129 parser.goto(goto_Nmembers)
130 end
131 private fun goto_Npair: Goto_Npair do return once new Goto_Npair
132 private fun reduce_Npair(parser: Parser) do
133 # REDUCE pair::pair=string ':' value
134 var n2 = parser.pop.as(Nvalue)
135 var n1 = parser.pop.as(N_39d_58d_39d)
136 var n0 = parser.pop.as(Nstring)
137 var p1 = new Npair(n0, n1, n2)
138 var prod = p1
139 parser.node_stack.push prod
140 parser.goto(goto_Npair)
141 end
142 private fun goto_Nelements: Goto_Nelements do return once new Goto_Nelements
143 private fun reduce_Nelements_tail(parser: Parser) do
144 # REDUCE elements::elements_tail=elements ',' value
145 var n2 = parser.pop.as(Nvalue)
146 var n1 = parser.pop.as(N_39d_44d_39d)
147 var n0 = parser.pop.as(Nelements)
148 var p1 = new Nelements_tail(n0, n1, n2)
149 var prod = p1
150 parser.node_stack.push prod
151 parser.goto(goto_Nelements)
152 end
153 private fun reduce_Nelements_head(parser: Parser) do
154 # REDUCE elements::elements_head=value
155 var n0 = parser.pop.as(Nvalue)
156 var p1 = new Nelements_head(n0)
157 var prod = p1
158 parser.node_stack.push prod
159 parser.goto(goto_Nelements)
160 end
161 private fun goto_N_start: Goto_N_start do return once new Goto_N_start
162 private fun reduce_NStart(parser: Parser) do
163 # REDUCE _start::Start=value Eof
164 var n1 = parser.pop.as(NEof)
165 var n0 = parser.pop.as(Nvalue)
166 var p1 = new NStart(n0, n1)
167 var prod = p1
168 parser.node_stack.push prod
169 parser.stop = true
170 end
171 redef class NToken
172 # guarded action for state Start
173 # 7 shift(s) and 0 reduce(s)
174 private fun action_sStart(parser: Parser) do
175 parser.parse_error
176 end
177 # guarded action for state value
178 # 1 shift(s) and 0 reduce(s)
179 private fun action_svalue(parser: Parser) do
180 parser.parse_error
181 end
182 # guarded action for state '{'
183 # 2 shift(s) and 0 reduce(s)
184 private fun action_s_39d_123d_39d(parser: Parser) do
185 parser.parse_error
186 end
187 # guarded action for state '['
188 # 8 shift(s) and 0 reduce(s)
189 private fun action_s_39d_91d_39d(parser: Parser) do
190 parser.parse_error
191 end
192 # guarded action for state '{' members
193 # 2 shift(s) and 0 reduce(s)
194 private fun action_s_39d_123d_39d_32dmembers(parser: Parser) do
195 parser.parse_error
196 end
197 # guarded action for state '{' string
198 # 1 shift(s) and 0 reduce(s)
199 private fun action_s_39d_123d_39d_32dstring(parser: Parser) do
200 parser.parse_error
201 end
202 # guarded action for state '[' elements
203 # 2 shift(s) and 0 reduce(s)
204 private fun action_s_39d_91d_39d_32delements(parser: Parser) do
205 parser.parse_error
206 end
207 # guarded action for state '{' members ','
208 # 1 shift(s) and 0 reduce(s)
209 private fun action_s_39d_123d_39d_32dmembers_32d_39d_44d_39d(parser: Parser) do
210 parser.parse_error
211 end
212 # guarded action for state '{' string ':'
213 # 7 shift(s) and 0 reduce(s)
214 private fun action_s_39d_123d_39d_32dstring_32d_39d_58d_39d(parser: Parser) do
215 parser.parse_error
216 end
217 # guarded action for state '[' elements ','
218 # 7 shift(s) and 0 reduce(s)
219 private fun action_s_39d_91d_39d_32delements_32d_39d_44d_39d(parser: Parser) do
220 parser.parse_error
221 end
222 end
223 class N_39d_123d_39d
224 super NToken
225 redef fun action_sStart(parser) do
226 parser.shift(state__39d_123d_39d)
227 end
228 redef fun action_s_39d_91d_39d(parser) do
229 parser.shift(state__39d_123d_39d)
230 end
231 redef fun action_s_39d_123d_39d_32dstring_32d_39d_58d_39d(parser) do
232 parser.shift(state__39d_123d_39d)
233 end
234 redef fun action_s_39d_91d_39d_32delements_32d_39d_44d_39d(parser) do
235 parser.shift(state__39d_123d_39d)
236 end
237 redef fun node_name do return "\'\{\'"
238 end
239 class N_39d_125d_39d
240 super NToken
241 redef fun action_s_39d_123d_39d(parser) do
242 parser.shift(state__39d_123d_39d_32d_39d_125d_39d)
243 end
244 redef fun action_s_39d_123d_39d_32dmembers(parser) do
245 parser.shift(state__39d_123d_39d_32dmembers_32d_39d_125d_39d)
246 end
247 redef fun node_name do return "\'\}\'"
248 end
249 class N_39d_91d_39d
250 super NToken
251 redef fun action_sStart(parser) do
252 parser.shift(state__39d_91d_39d)
253 end
254 redef fun action_s_39d_91d_39d(parser) do
255 parser.shift(state__39d_91d_39d)
256 end
257 redef fun action_s_39d_123d_39d_32dstring_32d_39d_58d_39d(parser) do
258 parser.shift(state__39d_91d_39d)
259 end
260 redef fun action_s_39d_91d_39d_32delements_32d_39d_44d_39d(parser) do
261 parser.shift(state__39d_91d_39d)
262 end
263 redef fun node_name do return "\'[\'"
264 end
265 class N_39d_93d_39d
266 super NToken
267 redef fun action_s_39d_91d_39d(parser) do
268 parser.shift(state__39d_91d_39d_32d_39d_93d_39d)
269 end
270 redef fun action_s_39d_91d_39d_32delements(parser) do
271 parser.shift(state__39d_91d_39d_32delements_32d_39d_93d_39d)
272 end
273 redef fun node_name do return "\']\'"
274 end
275 class Nnumber
276 super NToken
277 redef fun action_sStart(parser) do
278 parser.shift(state_number)
279 end
280 redef fun action_s_39d_91d_39d(parser) do
281 parser.shift(state_number)
282 end
283 redef fun action_s_39d_123d_39d_32dstring_32d_39d_58d_39d(parser) do
284 parser.shift(state_number)
285 end
286 redef fun action_s_39d_91d_39d_32delements_32d_39d_44d_39d(parser) do
287 parser.shift(state_number)
288 end
289 redef fun node_name do return "number"
290 end
291 class Nstring
292 super NToken
293 redef fun action_sStart(parser) do
294 parser.shift(state_string)
295 end
296 redef fun action_s_39d_123d_39d(parser) do
297 parser.shift(state__39d_123d_39d_32dstring)
298 end
299 redef fun action_s_39d_91d_39d(parser) do
300 parser.shift(state_string)
301 end
302 redef fun action_s_39d_123d_39d_32dmembers_32d_39d_44d_39d(parser) do
303 parser.shift(state__39d_123d_39d_32dstring)
304 end
305 redef fun action_s_39d_123d_39d_32dstring_32d_39d_58d_39d(parser) do
306 parser.shift(state_string)
307 end
308 redef fun action_s_39d_91d_39d_32delements_32d_39d_44d_39d(parser) do
309 parser.shift(state_string)
310 end
311 redef fun node_name do return "string"
312 end
313 class N_39dtrue_39d
314 super NToken
315 redef fun action_sStart(parser) do
316 parser.shift(state__39dtrue_39d)
317 end
318 redef fun action_s_39d_91d_39d(parser) do
319 parser.shift(state__39dtrue_39d)
320 end
321 redef fun action_s_39d_123d_39d_32dstring_32d_39d_58d_39d(parser) do
322 parser.shift(state__39dtrue_39d)
323 end
324 redef fun action_s_39d_91d_39d_32delements_32d_39d_44d_39d(parser) do
325 parser.shift(state__39dtrue_39d)
326 end
327 redef fun node_name do return "\'true\'"
328 end
329 class N_39dfalse_39d
330 super NToken
331 redef fun action_sStart(parser) do
332 parser.shift(state__39dfalse_39d)
333 end
334 redef fun action_s_39d_91d_39d(parser) do
335 parser.shift(state__39dfalse_39d)
336 end
337 redef fun action_s_39d_123d_39d_32dstring_32d_39d_58d_39d(parser) do
338 parser.shift(state__39dfalse_39d)
339 end
340 redef fun action_s_39d_91d_39d_32delements_32d_39d_44d_39d(parser) do
341 parser.shift(state__39dfalse_39d)
342 end
343 redef fun node_name do return "\'false\'"
344 end
345 class N_39dnull_39d
346 super NToken
347 redef fun action_sStart(parser) do
348 parser.shift(state__39dnull_39d)
349 end
350 redef fun action_s_39d_91d_39d(parser) do
351 parser.shift(state__39dnull_39d)
352 end
353 redef fun action_s_39d_123d_39d_32dstring_32d_39d_58d_39d(parser) do
354 parser.shift(state__39dnull_39d)
355 end
356 redef fun action_s_39d_91d_39d_32delements_32d_39d_44d_39d(parser) do
357 parser.shift(state__39dnull_39d)
358 end
359 redef fun node_name do return "\'null\'"
360 end
361 class N_39d_44d_39d
362 super NToken
363 redef fun action_s_39d_123d_39d_32dmembers(parser) do
364 parser.shift(state__39d_123d_39d_32dmembers_32d_39d_44d_39d)
365 end
366 redef fun action_s_39d_91d_39d_32delements(parser) do
367 parser.shift(state__39d_91d_39d_32delements_32d_39d_44d_39d)
368 end
369 redef fun node_name do return "\',\'"
370 end
371 class N_39d_58d_39d
372 super NToken
373 redef fun action_s_39d_123d_39d_32dstring(parser) do
374 parser.shift(state__39d_123d_39d_32dstring_32d_39d_58d_39d)
375 end
376 redef fun node_name do return "\':\'"
377 end
378 redef class NEof
379 super NToken
380 redef fun action_svalue(parser) do
381 parser.shift(state_value_32dEof)
382 end
383 redef fun node_name do return "Eof"
384 end
385 redef class LRGoto
386 private fun goto_s_39d_123d_39d(parser: Parser) do abort
387 private fun goto_s_39d_91d_39d(parser: Parser) do abort
388 end
389 class Goto_Nvalue
390 super LRGoto
391 redef fun goto_s_39d_91d_39d(parser) do
392 parser.push(state__39d_91d_39d_32dvalue)
393 end
394 end
395 class Goto_Nmembers
396 super LRGoto
397 redef fun goto_s_39d_123d_39d(parser) do
398 parser.push(state__39d_123d_39d_32dmembers)
399 end
400 end
401 class Goto_Npair
402 super LRGoto
403 redef fun goto_s_39d_123d_39d(parser) do
404 parser.push(state__39d_123d_39d_32dpair)
405 end
406 end
407 class Goto_Nelements
408 super LRGoto
409 redef fun goto_s_39d_91d_39d(parser) do
410 parser.push(state__39d_91d_39d_32delements)
411 end
412 end
413 class Goto_N_start
414 super LRGoto
415 end
416 class Nvalue
417 super NProd
418 redef fun node_name do return "value"
419 end
420 class Nvalue_number
421 super Nvalue
422 redef fun node_name do return "value_number"
423 var n_number: Nnumber
424 init(n_number: Nnumber) do
425 self.n_number = n_number
426 end
427 redef fun number_of_children do return 1
428 redef fun child(i) do
429 if i == 0 then return n_number
430 abort
431 end
432 end
433 class Nvalue_string
434 super Nvalue
435 redef fun node_name do return "value_string"
436 var n_string: Nstring
437 init(n_string: Nstring) do
438 self.n_string = n_string
439 end
440 redef fun number_of_children do return 1
441 redef fun child(i) do
442 if i == 0 then return n_string
443 abort
444 end
445 end
446 class Nvalue_true
447 super Nvalue
448 redef fun node_name do return "value_true"
449 var n_0: N_39dtrue_39d
450 init(n_0: N_39dtrue_39d) do
451 self.n_0 = n_0
452 end
453 redef fun number_of_children do return 1
454 redef fun child(i) do
455 if i == 0 then return n_0
456 abort
457 end
458 end
459 class Nvalue_false
460 super Nvalue
461 redef fun node_name do return "value_false"
462 var n_0: N_39dfalse_39d
463 init(n_0: N_39dfalse_39d) do
464 self.n_0 = n_0
465 end
466 redef fun number_of_children do return 1
467 redef fun child(i) do
468 if i == 0 then return n_0
469 abort
470 end
471 end
472 class Nvalue_null
473 super Nvalue
474 redef fun node_name do return "value_null"
475 var n_0: N_39dnull_39d
476 init(n_0: N_39dnull_39d) do
477 self.n_0 = n_0
478 end
479 redef fun number_of_children do return 1
480 redef fun child(i) do
481 if i == 0 then return n_0
482 abort
483 end
484 end
485 class Nvalue_object
486 super Nvalue
487 redef fun node_name do return "value_object"
488 var n_0: N_39d_123d_39d
489 var n_members: nullable Nmembers
490 var n_2: N_39d_125d_39d
491 init(n_0: N_39d_123d_39d, n_members: nullable Nmembers, n_2: N_39d_125d_39d) do
492 self.n_0 = n_0
493 self.n_members = n_members
494 self.n_2 = n_2
495 end
496 redef fun number_of_children do return 3
497 redef fun child(i) do
498 if i == 0 then return n_0
499 if i == 1 then return n_members
500 if i == 2 then return n_2
501 abort
502 end
503 end
504 class Nvalue_array
505 super Nvalue
506 redef fun node_name do return "value_array"
507 var n_0: N_39d_91d_39d
508 var n_elements: nullable Nelements
509 var n_2: N_39d_93d_39d
510 init(n_0: N_39d_91d_39d, n_elements: nullable Nelements, n_2: N_39d_93d_39d) do
511 self.n_0 = n_0
512 self.n_elements = n_elements
513 self.n_2 = n_2
514 end
515 redef fun number_of_children do return 3
516 redef fun child(i) do
517 if i == 0 then return n_0
518 if i == 1 then return n_elements
519 if i == 2 then return n_2
520 abort
521 end
522 end
523 class Nmembers
524 super NProd
525 redef fun node_name do return "members"
526 end
527 class Nmembers_tail
528 super Nmembers
529 redef fun node_name do return "members_tail"
530 var n_members: Nmembers
531 var n_1: N_39d_44d_39d
532 var n_pair: Npair
533 init(n_members: Nmembers, n_1: N_39d_44d_39d, n_pair: Npair) do
534 self.n_members = n_members
535 self.n_1 = n_1
536 self.n_pair = n_pair
537 end
538 redef fun number_of_children do return 3
539 redef fun child(i) do
540 if i == 0 then return n_members
541 if i == 1 then return n_1
542 if i == 2 then return n_pair
543 abort
544 end
545 end
546 class Nmembers_head
547 super Nmembers
548 redef fun node_name do return "members_head"
549 var n_pair: Npair
550 init(n_pair: Npair) do
551 self.n_pair = n_pair
552 end
553 redef fun number_of_children do return 1
554 redef fun child(i) do
555 if i == 0 then return n_pair
556 abort
557 end
558 end
559 class Npair
560 super NProd
561 redef fun node_name do return "pair"
562 var n_string: Nstring
563 var n_1: N_39d_58d_39d
564 var n_value: Nvalue
565 init(n_string: Nstring, n_1: N_39d_58d_39d, n_value: Nvalue) do
566 self.n_string = n_string
567 self.n_1 = n_1
568 self.n_value = n_value
569 end
570 redef fun number_of_children do return 3
571 redef fun child(i) do
572 if i == 0 then return n_string
573 if i == 1 then return n_1
574 if i == 2 then return n_value
575 abort
576 end
577 end
578 class Nelements
579 super NProd
580 redef fun node_name do return "elements"
581 end
582 class Nelements_tail
583 super Nelements
584 redef fun node_name do return "elements_tail"
585 var n_elements: Nelements
586 var n_1: N_39d_44d_39d
587 var n_value: Nvalue
588 init(n_elements: Nelements, n_1: N_39d_44d_39d, n_value: Nvalue) do
589 self.n_elements = n_elements
590 self.n_1 = n_1
591 self.n_value = n_value
592 end
593 redef fun number_of_children do return 3
594 redef fun child(i) do
595 if i == 0 then return n_elements
596 if i == 1 then return n_1
597 if i == 2 then return n_value
598 abort
599 end
600 end
601 class Nelements_head
602 super Nelements
603 redef fun node_name do return "elements_head"
604 var n_value: Nvalue
605 init(n_value: Nvalue) do
606 self.n_value = n_value
607 end
608 redef fun number_of_children do return 1
609 redef fun child(i) do
610 if i == 0 then return n_value
611 abort
612 end
613 end
614 class N_start
615 super NProd
616 redef fun node_name do return "_start"
617 end
618 class NStart
619 super N_start
620 redef fun node_name do return "Start"
621 var n_0: Nvalue
622 var n_1: NEof
623 init(n_0: Nvalue, n_1: NEof) do
624 self.n_0 = n_0
625 self.n_1 = n_1
626 end
627 redef fun number_of_children do return 2
628 redef fun child(i) do
629 if i == 0 then return n_0
630 if i == 1 then return n_1
631 abort
632 end
633 end
634 # State Start
635 private class LRStateStart
636 super LRState
637 redef fun to_s do return "Start"
638 redef fun error_msg do return "value"
639 redef fun action(parser) do
640 parser.peek_token.action_sStart(parser)
641 end
642 redef fun goto(parser, goto) do
643 parser.push(state_value)
644 end
645 end
646 # State value
647 private class LRStatevalue
648 super LRState
649 redef fun to_s do return "value"
650 redef fun error_msg do return "Eof"
651 redef fun action(parser) do
652 parser.peek_token.action_svalue(parser)
653 end
654 end
655 # State number
656 private class LRStatenumber
657 super LRState
658 redef fun to_s do return "number"
659 redef fun error_msg do return ""
660 redef fun action(parser) do
661 reduce_Nvalue_number(parser)
662 end
663 end
664 # State string
665 private class LRStatestring
666 super LRState
667 redef fun to_s do return "string"
668 redef fun error_msg do return ""
669 redef fun action(parser) do
670 reduce_Nvalue_string(parser)
671 end
672 end
673 # State 'true'
674 private class LRState_39dtrue_39d
675 super LRState
676 redef fun to_s do return "\'true\'"
677 redef fun error_msg do return ""
678 redef fun action(parser) do
679 reduce_Nvalue_true(parser)
680 end
681 end
682 # State 'false'
683 private class LRState_39dfalse_39d
684 super LRState
685 redef fun to_s do return "\'false\'"
686 redef fun error_msg do return ""
687 redef fun action(parser) do
688 reduce_Nvalue_false(parser)
689 end
690 end
691 # State 'null'
692 private class LRState_39dnull_39d
693 super LRState
694 redef fun to_s do return "\'null\'"
695 redef fun error_msg do return ""
696 redef fun action(parser) do
697 reduce_Nvalue_null(parser)
698 end
699 end
700 # State '{'
701 private class LRState_39d_123d_39d
702 super LRState
703 redef fun to_s do return "\'\{\'"
704 redef fun error_msg do return "members, pair"
705 redef fun action(parser) do
706 parser.peek_token.action_s_39d_123d_39d(parser)
707 end
708 redef fun goto(parser, goto) do
709 goto.goto_s_39d_123d_39d(parser)
710 end
711 end
712 # State '['
713 private class LRState_39d_91d_39d
714 super LRState
715 redef fun to_s do return "\'[\'"
716 redef fun error_msg do return "elements, value"
717 redef fun action(parser) do
718 parser.peek_token.action_s_39d_91d_39d(parser)
719 end
720 redef fun goto(parser, goto) do
721 goto.goto_s_39d_91d_39d(parser)
722 end
723 end
724 # State value Eof
725 private class LRStatevalue_32dEof
726 super LRState
727 redef fun to_s do return "value Eof"
728 redef fun error_msg do return ""
729 redef fun action(parser) do
730 reduce_NStart(parser)
731 end
732 end
733 # State '{' members
734 private class LRState_39d_123d_39d_32dmembers
735 super LRState
736 redef fun to_s do return "\'\{\' members"
737 redef fun error_msg do return "\'\}\', \',\'"
738 redef fun action(parser) do
739 parser.peek_token.action_s_39d_123d_39d_32dmembers(parser)
740 end
741 end
742 # State '{' '}'
743 private class LRState_39d_123d_39d_32d_39d_125d_39d
744 super LRState
745 redef fun to_s do return "\'\{\' \'\}\'"
746 redef fun error_msg do return ""
747 redef fun action(parser) do
748 reduce_Nvalue_object_95d1(parser)
749 end
750 end
751 # State '{' pair
752 private class LRState_39d_123d_39d_32dpair
753 super LRState
754 redef fun to_s do return "\'\{\' pair"
755 redef fun error_msg do return ""
756 redef fun action(parser) do
757 reduce_Nmembers_head(parser)
758 end
759 end
760 # State '{' string
761 private class LRState_39d_123d_39d_32dstring
762 super LRState
763 redef fun to_s do return "\'\{\' string"
764 redef fun error_msg do return "\':\'"
765 redef fun action(parser) do
766 parser.peek_token.action_s_39d_123d_39d_32dstring(parser)
767 end
768 end
769 # State '[' elements
770 private class LRState_39d_91d_39d_32delements
771 super LRState
772 redef fun to_s do return "\'[\' elements"
773 redef fun error_msg do return "\']\', \',\'"
774 redef fun action(parser) do
775 parser.peek_token.action_s_39d_91d_39d_32delements(parser)
776 end
777 end
778 # State '[' ']'
779 private class LRState_39d_91d_39d_32d_39d_93d_39d
780 super LRState
781 redef fun to_s do return "\'[\' \']\'"
782 redef fun error_msg do return ""
783 redef fun action(parser) do
784 reduce_Nvalue_array_95d1(parser)
785 end
786 end
787 # State '[' value
788 private class LRState_39d_91d_39d_32dvalue
789 super LRState
790 redef fun to_s do return "\'[\' value"
791 redef fun error_msg do return ""
792 redef fun action(parser) do
793 reduce_Nelements_head(parser)
794 end
795 end
796 # State '{' members '}'
797 private class LRState_39d_123d_39d_32dmembers_32d_39d_125d_39d
798 super LRState
799 redef fun to_s do return "\'\{\' members \'\}\'"
800 redef fun error_msg do return ""
801 redef fun action(parser) do
802 reduce_Nvalue_object_95d0(parser)
803 end
804 end
805 # State '{' members ','
806 private class LRState_39d_123d_39d_32dmembers_32d_39d_44d_39d
807 super LRState
808 redef fun to_s do return "\'\{\' members \',\'"
809 redef fun error_msg do return "pair"
810 redef fun action(parser) do
811 parser.peek_token.action_s_39d_123d_39d_32dmembers_32d_39d_44d_39d(parser)
812 end
813 redef fun goto(parser, goto) do
814 parser.push(state__39d_123d_39d_32dmembers_32d_39d_44d_39d_32dpair)
815 end
816 end
817 # State '{' string ':'
818 private class LRState_39d_123d_39d_32dstring_32d_39d_58d_39d
819 super LRState
820 redef fun to_s do return "\'\{\' string \':\'"
821 redef fun error_msg do return "value"
822 redef fun action(parser) do
823 parser.peek_token.action_s_39d_123d_39d_32dstring_32d_39d_58d_39d(parser)
824 end
825 redef fun goto(parser, goto) do
826 parser.push(state__39d_123d_39d_32dstring_32d_39d_58d_39d_32dvalue)
827 end
828 end
829 # State '[' elements ']'
830 private class LRState_39d_91d_39d_32delements_32d_39d_93d_39d
831 super LRState
832 redef fun to_s do return "\'[\' elements \']\'"
833 redef fun error_msg do return ""
834 redef fun action(parser) do
835 reduce_Nvalue_array_95d0(parser)
836 end
837 end
838 # State '[' elements ','
839 private class LRState_39d_91d_39d_32delements_32d_39d_44d_39d
840 super LRState
841 redef fun to_s do return "\'[\' elements \',\'"
842 redef fun error_msg do return "value"
843 redef fun action(parser) do
844 parser.peek_token.action_s_39d_91d_39d_32delements_32d_39d_44d_39d(parser)
845 end
846 redef fun goto(parser, goto) do
847 parser.push(state__39d_91d_39d_32delements_32d_39d_44d_39d_32dvalue)
848 end
849 end
850 # State '{' members ',' pair
851 private class LRState_39d_123d_39d_32dmembers_32d_39d_44d_39d_32dpair
852 super LRState
853 redef fun to_s do return "\'\{\' members \',\' pair"
854 redef fun error_msg do return ""
855 redef fun action(parser) do
856 reduce_Nmembers_tail(parser)
857 end
858 end
859 # State '{' string ':' value
860 private class LRState_39d_123d_39d_32dstring_32d_39d_58d_39d_32dvalue
861 super LRState
862 redef fun to_s do return "\'\{\' string \':\' value"
863 redef fun error_msg do return ""
864 redef fun action(parser) do
865 reduce_Npair(parser)
866 end
867 end
868 # State '[' elements ',' value
869 private class LRState_39d_91d_39d_32delements_32d_39d_44d_39d_32dvalue
870 super LRState
871 redef fun to_s do return "\'[\' elements \',\' value"
872 redef fun error_msg do return ""
873 redef fun action(parser) do
874 reduce_Nelements_tail(parser)
875 end
876 end