sweet-lang 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
data/lib/parser.rb ADDED
@@ -0,0 +1,673 @@
1
+ #
2
+ # DO NOT MODIFY!!!!
3
+ # This file is automatically generated by Racc 1.4.6
4
+ # from Racc grammer file "".
5
+ #
6
+
7
+ require 'racc/parser.rb'
8
+
9
+ require "lexer"
10
+ require "nodes"
11
+
12
+ class Parser < Racc::Parser
13
+
14
+ module_eval(<<'...end grammar.y/module_eval...', 'grammar.y', 170)
15
+ # This code will be put as-is in the Parser class.
16
+ def parse(code, show_tokens=false)
17
+ @tokens = Lexer.new.tokenize(code) # Tokenize the code using our lexer
18
+ puts @tokens.inspect if show_tokens
19
+ do_parse # Kickoff the parsing process
20
+ end
21
+
22
+ def next_token
23
+ @tokens.shift
24
+ end
25
+ ...end grammar.y/module_eval...
26
+ ##### State transition tables begin ###
27
+
28
+ racc_action_table = [
29
+ 25, 14, 23, 24, 14, 16, 17, 18, 19, 20,
30
+ 21, 22, 25, 70, 23, 24, 14, 16, 17, 18,
31
+ 19, 20, 21, 22, 28, 28, 39, 40, 14, 15,
32
+ 13, 69, 15, 82, 28, 81, 28, 83, 39, 40,
33
+ 37, 38, 13, 25, 15, 23, 24, 73, 16, 17,
34
+ 18, 19, 20, 21, 22, 25, 15, 23, 24, 77,
35
+ 16, 17, 18, 19, 20, 21, 22, 70, 43, 25,
36
+ 42, 23, 24, 13, 16, 17, 18, 19, 20, 21,
37
+ 22, 25, 50, 23, 24, 13, 16, 17, 18, 19,
38
+ 20, 21, 22, 48, 75, 25, 84, 23, 24, 13,
39
+ 16, 17, 18, 19, 20, 21, 22, 25, 46, 23,
40
+ 24, 13, 16, 17, 18, 19, 20, 21, 22, 45,
41
+ 75, 25, 74, 23, 24, 13, 16, 17, 18, 19,
42
+ 20, 21, 22, 25, 44, 23, 24, 13, 16, 17,
43
+ 18, 19, 20, 21, 22, 26, 70, 25, 86, 23,
44
+ 24, 13, 16, 17, 18, 19, 20, 21, 22, 25,
45
+ nil, 23, 24, 13, 16, 17, 18, 19, 20, 21,
46
+ 22, nil, nil, 25, nil, 23, 24, 13, 16, 17,
47
+ 18, 19, 20, 21, 22, 25, nil, 23, 24, 13,
48
+ 16, 17, 18, 19, 20, 21, 22, nil, nil, 25,
49
+ nil, 23, 24, 13, 16, 17, 18, 19, 20, 21,
50
+ 22, 25, nil, 23, 24, 13, 16, 17, 18, 19,
51
+ 20, 21, 22, nil, nil, 25, nil, 23, 24, 13,
52
+ 16, 17, 18, 19, 20, 21, 22, 25, nil, 23,
53
+ 24, 13, 16, 17, 18, 19, 20, 21, 22, nil,
54
+ nil, 25, nil, 23, 24, 13, 16, 17, 18, 19,
55
+ 20, 21, 22, 25, nil, 23, 24, 13, 16, 17,
56
+ 18, 19, 20, 21, 22, nil, nil, 25, nil, 23,
57
+ 24, 13, 16, 17, 18, 19, 20, 21, 22, 25,
58
+ nil, 23, 24, 13, 16, 17, 18, 19, 20, 21,
59
+ 22, 28, nil, 39, 40, nil, 28, 13, 39, 40,
60
+ 37, 38, 33, 34, 35, 36, 31, 32, 28, 13,
61
+ 39, 40, 37, 38, 33, 34, 35, 36, 31, 32,
62
+ 30, 29, 70, nil, 28, 63, 39, 40, 37, 38,
63
+ 33, 34, 35, 36, 31, 32, 30, 29, 28, nil,
64
+ 39, 40, 37, 38, 33, 34, 35, 36, 31, 32,
65
+ 30, 29, 28, nil, 39, 40, 37, 38, 33, 34,
66
+ 35, 36, 31, 32, 30, 29, 28, nil, 39, 40,
67
+ 37, 38, 33, 34, 35, 36, 31, 32, 30, 29,
68
+ 28, nil, 39, 40, 37, 38, 33, 34, 35, 36,
69
+ 31, 32, 30, 29, 28, nil, 39, 40, 37, 38,
70
+ 33, 34, 35, 36, 31, 32, 30, 29, 28, nil,
71
+ 39, 40, 37, 38, 33, 34, 35, 36, 31, 32,
72
+ 30, 29, 28, nil, 39, 40, 37, 38, 33, 34,
73
+ 35, 36, 31, 32, 30, 28, nil, 39, 40, 37,
74
+ 38, 33, 34, 35, 36, 28, nil, 39, 40, 37,
75
+ 38, 33, 34, 35, 36, 28, nil, 39, 40, 37,
76
+ 38, 28, nil, 39, 40, 37, 38, 28, nil, 39,
77
+ 40, 37, 38 ]
78
+
79
+ racc_action_check = [
80
+ 0, 2, 0, 0, 0, 0, 0, 0, 0, 0,
81
+ 0, 0, 70, 45, 70, 70, 70, 70, 70, 70,
82
+ 70, 70, 70, 70, 60, 62, 60, 60, 78, 2,
83
+ 0, 45, 0, 76, 61, 76, 55, 78, 55, 55,
84
+ 55, 55, 70, 75, 70, 75, 75, 50, 75, 75,
85
+ 75, 75, 75, 75, 75, 43, 78, 43, 43, 69,
86
+ 43, 43, 43, 43, 43, 43, 43, 46, 21, 13,
87
+ 21, 13, 13, 75, 13, 13, 13, 13, 13, 13,
88
+ 13, 42, 28, 42, 42, 43, 42, 42, 42, 42,
89
+ 42, 42, 42, 26, 79, 40, 79, 40, 40, 13,
90
+ 40, 40, 40, 40, 40, 40, 40, 37, 24, 37,
91
+ 37, 42, 37, 37, 37, 37, 37, 37, 37, 23,
92
+ 64, 38, 64, 38, 38, 40, 38, 38, 38, 38,
93
+ 38, 38, 38, 25, 22, 25, 25, 37, 25, 25,
94
+ 25, 25, 25, 25, 25, 1, 81, 44, 82, 44,
95
+ 44, 38, 44, 44, 44, 44, 44, 44, 44, 27,
96
+ nil, 27, 27, 25, 27, 27, 27, 27, 27, 27,
97
+ 27, nil, nil, 73, nil, 73, 73, 44, 73, 73,
98
+ 73, 73, 73, 73, 73, 29, nil, 29, 29, 27,
99
+ 29, 29, 29, 29, 29, 29, 29, nil, nil, 30,
100
+ nil, 30, 30, 73, 30, 30, 30, 30, 30, 30,
101
+ 30, 31, nil, 31, 31, 29, 31, 31, 31, 31,
102
+ 31, 31, 31, nil, nil, 32, nil, 32, 32, 30,
103
+ 32, 32, 32, 32, 32, 32, 32, 33, nil, 33,
104
+ 33, 31, 33, 33, 33, 33, 33, 33, 33, nil,
105
+ nil, 34, nil, 34, 34, 32, 34, 34, 34, 34,
106
+ 34, 34, 34, 35, nil, 35, 35, 33, 35, 35,
107
+ 35, 35, 35, 35, 35, nil, nil, 36, nil, 36,
108
+ 36, 34, 36, 36, 36, 36, 36, 36, 36, 39,
109
+ nil, 39, 39, 35, 39, 39, 39, 39, 39, 39,
110
+ 39, 59, nil, 59, 59, nil, 52, 36, 52, 52,
111
+ 52, 52, 52, 52, 52, 52, 52, 52, 41, 39,
112
+ 41, 41, 41, 41, 41, 41, 41, 41, 41, 41,
113
+ 41, 41, 47, nil, 47, 41, 47, 47, 47, 47,
114
+ 47, 47, 47, 47, 47, 47, 47, 47, 3, nil,
115
+ 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
116
+ 3, 3, 66, nil, 66, 66, 66, 66, 66, 66,
117
+ 66, 66, 66, 66, 66, 66, 65, nil, 65, 65,
118
+ 65, 65, 65, 65, 65, 65, 65, 65, 65, 65,
119
+ 80, nil, 80, 80, 80, 80, 80, 80, 80, 80,
120
+ 80, 80, 80, 80, 49, nil, 49, 49, 49, 49,
121
+ 49, 49, 49, 49, 49, 49, 49, 49, 67, nil,
122
+ 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
123
+ 67, 67, 51, nil, 51, 51, 51, 51, 51, 51,
124
+ 51, 51, 51, 51, 51, 54, nil, 54, 54, 54,
125
+ 54, 54, 54, 54, 54, 53, nil, 53, 53, 53,
126
+ 53, 53, 53, 53, 53, 58, nil, 58, 58, 58,
127
+ 58, 56, nil, 56, 56, 56, 56, 57, nil, 57,
128
+ 57, 57, 57 ]
129
+
130
+ racc_action_pointer = [
131
+ -2, 145, -5, 332, nil, nil, nil, nil, nil, nil,
132
+ nil, nil, nil, 67, nil, nil, nil, nil, nil, nil,
133
+ nil, 38, 104, 107, 95, 131, 93, 157, 70, 183,
134
+ 197, 209, 223, 235, 249, 261, 275, 105, 119, 287,
135
+ 93, 302, 79, 53, 145, -1, 53, 318, nil, 388,
136
+ 15, 416, 290, 439, 429, 20, 455, 461, 449, 285,
137
+ 8, 18, 9, nil, 89, 360, 346, 402, nil, 47,
138
+ 10, nil, nil, 171, nil, 41, 2, nil, 22, 63,
139
+ 374, 132, 136, nil, nil, nil, nil ]
140
+
141
+ racc_action_default = [
142
+ -1, -53, -2, -3, -6, -7, -8, -9, -10, -11,
143
+ -12, -13, -14, -53, -16, -17, -18, -19, -20, -21,
144
+ -22, -23, -42, -53, -53, -53, -53, -5, -53, -53,
145
+ -53, -53, -53, -53, -53, -53, -53, -53, -53, -53,
146
+ -53, -53, -27, -53, -53, -53, -53, -53, 87, -4,
147
+ -25, -30, -31, -32, -33, -34, -35, -36, -37, -38,
148
+ -39, -40, -41, -15, -53, -28, -43, -44, -45, -47,
149
+ -53, -50, -51, -27, -24, -53, -53, -48, -53, -53,
150
+ -29, -53, -53, -52, -26, -46, -49 ]
151
+
152
+ racc_goto_table = [
153
+ 27, 2, 41, 68, 71, 72, 64, 1, 76, nil,
154
+ nil, nil, nil, nil, 47, nil, 49, nil, 51, 52,
155
+ 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
156
+ nil, 65, 66, 67, nil, nil, nil, 79, nil, 85,
157
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
158
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
159
+ nil, nil, 65, nil, 80, nil, nil, nil, nil, nil,
160
+ nil, 78, nil, nil, nil, nil, 27 ]
161
+
162
+ racc_goto_check = [
163
+ 4, 2, 3, 14, 14, 14, 13, 1, 15, nil,
164
+ nil, nil, nil, nil, 3, nil, 3, nil, 3, 3,
165
+ 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
166
+ nil, 3, 3, 3, nil, nil, nil, 13, nil, 14,
167
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
168
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
169
+ nil, nil, 3, nil, 3, nil, nil, nil, nil, nil,
170
+ nil, 2, nil, nil, nil, nil, 4 ]
171
+
172
+ racc_goto_pointer = [
173
+ nil, 7, 1, -11, -2, nil, nil, nil, nil, nil,
174
+ nil, nil, nil, -36, -42, -61 ]
175
+
176
+ racc_goto_default = [
177
+ nil, nil, nil, 3, 4, 5, 6, 7, 8, 9,
178
+ 10, 11, 12, nil, nil, nil ]
179
+
180
+ racc_reduce_table = [
181
+ 0, 0, :racc_error,
182
+ 0, 36, :_reduce_1,
183
+ 1, 36, :_reduce_2,
184
+ 1, 37, :_reduce_3,
185
+ 3, 37, :_reduce_4,
186
+ 2, 37, :_reduce_5,
187
+ 1, 37, :_reduce_6,
188
+ 1, 38, :_reduce_none,
189
+ 1, 38, :_reduce_none,
190
+ 1, 38, :_reduce_none,
191
+ 1, 38, :_reduce_none,
192
+ 1, 38, :_reduce_none,
193
+ 1, 38, :_reduce_none,
194
+ 1, 38, :_reduce_none,
195
+ 1, 38, :_reduce_none,
196
+ 3, 38, :_reduce_15,
197
+ 1, 39, :_reduce_none,
198
+ 1, 39, :_reduce_none,
199
+ 1, 40, :_reduce_18,
200
+ 1, 40, :_reduce_19,
201
+ 1, 40, :_reduce_20,
202
+ 1, 40, :_reduce_21,
203
+ 1, 40, :_reduce_22,
204
+ 1, 41, :_reduce_23,
205
+ 4, 41, :_reduce_24,
206
+ 3, 41, :_reduce_25,
207
+ 6, 41, :_reduce_26,
208
+ 0, 48, :_reduce_27,
209
+ 1, 48, :_reduce_28,
210
+ 3, 48, :_reduce_29,
211
+ 3, 42, :_reduce_30,
212
+ 3, 42, :_reduce_31,
213
+ 3, 42, :_reduce_32,
214
+ 3, 42, :_reduce_33,
215
+ 3, 42, :_reduce_34,
216
+ 3, 42, :_reduce_35,
217
+ 3, 42, :_reduce_36,
218
+ 3, 42, :_reduce_37,
219
+ 3, 42, :_reduce_38,
220
+ 3, 42, :_reduce_39,
221
+ 3, 42, :_reduce_40,
222
+ 3, 42, :_reduce_41,
223
+ 1, 43, :_reduce_42,
224
+ 3, 44, :_reduce_43,
225
+ 3, 44, :_reduce_44,
226
+ 3, 45, :_reduce_45,
227
+ 6, 45, :_reduce_46,
228
+ 0, 50, :_reduce_47,
229
+ 1, 50, :_reduce_48,
230
+ 3, 50, :_reduce_49,
231
+ 3, 46, :_reduce_50,
232
+ 3, 47, :_reduce_51,
233
+ 3, 49, :_reduce_52 ]
234
+
235
+ racc_reduce_n = 53
236
+
237
+ racc_shift_n = 87
238
+
239
+ racc_token_table = {
240
+ false => 0,
241
+ :error => 1,
242
+ :IF => 2,
243
+ :ELSE => 3,
244
+ :DEF => 4,
245
+ :CLASS => 5,
246
+ :NEWLINE => 6,
247
+ :NUMBER => 7,
248
+ :STRING => 8,
249
+ :TRUE => 9,
250
+ :FALSE => 10,
251
+ :NIL => 11,
252
+ :IDENTIFIER => 12,
253
+ :CONSTANT => 13,
254
+ :INDENT => 14,
255
+ :DEDENT => 15,
256
+ "." => 16,
257
+ "!" => 17,
258
+ "*" => 18,
259
+ "/" => 19,
260
+ "+" => 20,
261
+ "-" => 21,
262
+ ">" => 22,
263
+ ">=" => 23,
264
+ "<" => 24,
265
+ "<=" => 25,
266
+ "==" => 26,
267
+ "!=" => 27,
268
+ "&&" => 28,
269
+ "||" => 29,
270
+ "=" => 30,
271
+ "," => 31,
272
+ "(" => 32,
273
+ ")" => 33,
274
+ ";" => 34 }
275
+
276
+ racc_nt_base = 35
277
+
278
+ racc_use_result_var = true
279
+
280
+ Racc_arg = [
281
+ racc_action_table,
282
+ racc_action_check,
283
+ racc_action_default,
284
+ racc_action_pointer,
285
+ racc_goto_table,
286
+ racc_goto_check,
287
+ racc_goto_default,
288
+ racc_goto_pointer,
289
+ racc_nt_base,
290
+ racc_reduce_table,
291
+ racc_token_table,
292
+ racc_shift_n,
293
+ racc_reduce_n,
294
+ racc_use_result_var ]
295
+
296
+ Racc_token_to_s_table = [
297
+ "$end",
298
+ "error",
299
+ "IF",
300
+ "ELSE",
301
+ "DEF",
302
+ "CLASS",
303
+ "NEWLINE",
304
+ "NUMBER",
305
+ "STRING",
306
+ "TRUE",
307
+ "FALSE",
308
+ "NIL",
309
+ "IDENTIFIER",
310
+ "CONSTANT",
311
+ "INDENT",
312
+ "DEDENT",
313
+ "\".\"",
314
+ "\"!\"",
315
+ "\"*\"",
316
+ "\"/\"",
317
+ "\"+\"",
318
+ "\"-\"",
319
+ "\">\"",
320
+ "\">=\"",
321
+ "\"<\"",
322
+ "\"<=\"",
323
+ "\"==\"",
324
+ "\"!=\"",
325
+ "\"&&\"",
326
+ "\"||\"",
327
+ "\"=\"",
328
+ "\",\"",
329
+ "\"(\"",
330
+ "\")\"",
331
+ "\";\"",
332
+ "$start",
333
+ "Root",
334
+ "Expressions",
335
+ "Expression",
336
+ "Terminator",
337
+ "Literal",
338
+ "Call",
339
+ "Operator",
340
+ "Constant",
341
+ "Assign",
342
+ "Def",
343
+ "Class",
344
+ "If",
345
+ "ArgList",
346
+ "Block",
347
+ "ParamList" ]
348
+
349
+ Racc_debug_parser = false
350
+
351
+ ##### State transition tables end #####
352
+
353
+ # reduce 0 omitted
354
+
355
+ module_eval(<<'.,.,', 'grammar.y', 44)
356
+ def _reduce_1(val, _values, result)
357
+ result = Nodes.new([])
358
+ result
359
+ end
360
+ .,.,
361
+
362
+ module_eval(<<'.,.,', 'grammar.y', 45)
363
+ def _reduce_2(val, _values, result)
364
+ result = val[0]
365
+ result
366
+ end
367
+ .,.,
368
+
369
+ module_eval(<<'.,.,', 'grammar.y', 50)
370
+ def _reduce_3(val, _values, result)
371
+ result = Nodes.new(val)
372
+ result
373
+ end
374
+ .,.,
375
+
376
+ module_eval(<<'.,.,', 'grammar.y', 51)
377
+ def _reduce_4(val, _values, result)
378
+ result = val[0] << val[2]
379
+ result
380
+ end
381
+ .,.,
382
+
383
+ module_eval(<<'.,.,', 'grammar.y', 53)
384
+ def _reduce_5(val, _values, result)
385
+ result = val[0]
386
+ result
387
+ end
388
+ .,.,
389
+
390
+ module_eval(<<'.,.,', 'grammar.y', 54)
391
+ def _reduce_6(val, _values, result)
392
+ result = Nodes.new([])
393
+ result
394
+ end
395
+ .,.,
396
+
397
+ # reduce 7 omitted
398
+
399
+ # reduce 8 omitted
400
+
401
+ # reduce 9 omitted
402
+
403
+ # reduce 10 omitted
404
+
405
+ # reduce 11 omitted
406
+
407
+ # reduce 12 omitted
408
+
409
+ # reduce 13 omitted
410
+
411
+ # reduce 14 omitted
412
+
413
+ module_eval(<<'.,.,', 'grammar.y', 67)
414
+ def _reduce_15(val, _values, result)
415
+ result = val[1]
416
+ result
417
+ end
418
+ .,.,
419
+
420
+ # reduce 16 omitted
421
+
422
+ # reduce 17 omitted
423
+
424
+ module_eval(<<'.,.,', 'grammar.y', 78)
425
+ def _reduce_18(val, _values, result)
426
+ result = NumberNode.new(val[0])
427
+ result
428
+ end
429
+ .,.,
430
+
431
+ module_eval(<<'.,.,', 'grammar.y', 79)
432
+ def _reduce_19(val, _values, result)
433
+ result = StringNode.new(val[0])
434
+ result
435
+ end
436
+ .,.,
437
+
438
+ module_eval(<<'.,.,', 'grammar.y', 80)
439
+ def _reduce_20(val, _values, result)
440
+ result = TrueNode.new
441
+ result
442
+ end
443
+ .,.,
444
+
445
+ module_eval(<<'.,.,', 'grammar.y', 81)
446
+ def _reduce_21(val, _values, result)
447
+ result = FalseNode.new
448
+ result
449
+ end
450
+ .,.,
451
+
452
+ module_eval(<<'.,.,', 'grammar.y', 82)
453
+ def _reduce_22(val, _values, result)
454
+ result = NilNode.new
455
+ result
456
+ end
457
+ .,.,
458
+
459
+ module_eval(<<'.,.,', 'grammar.y', 88)
460
+ def _reduce_23(val, _values, result)
461
+ result = CallNode.new(nil, val[0], [])
462
+ result
463
+ end
464
+ .,.,
465
+
466
+ module_eval(<<'.,.,', 'grammar.y', 90)
467
+ def _reduce_24(val, _values, result)
468
+ result = CallNode.new(nil, val[0], val[2])
469
+ result
470
+ end
471
+ .,.,
472
+
473
+ module_eval(<<'.,.,', 'grammar.y', 92)
474
+ def _reduce_25(val, _values, result)
475
+ result = CallNode.new(val[0], val[2], [])
476
+ result
477
+ end
478
+ .,.,
479
+
480
+ module_eval(<<'.,.,', 'grammar.y', 95)
481
+ def _reduce_26(val, _values, result)
482
+ result = CallNode.new(val[0], val[2], val[4])
483
+ result
484
+ end
485
+ .,.,
486
+
487
+ module_eval(<<'.,.,', 'grammar.y', 99)
488
+ def _reduce_27(val, _values, result)
489
+ result = []
490
+ result
491
+ end
492
+ .,.,
493
+
494
+ module_eval(<<'.,.,', 'grammar.y', 100)
495
+ def _reduce_28(val, _values, result)
496
+ result = val
497
+ result
498
+ end
499
+ .,.,
500
+
501
+ module_eval(<<'.,.,', 'grammar.y', 101)
502
+ def _reduce_29(val, _values, result)
503
+ result = val[0] << val[2]
504
+ result
505
+ end
506
+ .,.,
507
+
508
+ module_eval(<<'.,.,', 'grammar.y', 106)
509
+ def _reduce_30(val, _values, result)
510
+ result = CallNode.new(val[0], val[1], [val[2]])
511
+ result
512
+ end
513
+ .,.,
514
+
515
+ module_eval(<<'.,.,', 'grammar.y', 107)
516
+ def _reduce_31(val, _values, result)
517
+ result = CallNode.new(val[0], val[1], [val[2]])
518
+ result
519
+ end
520
+ .,.,
521
+
522
+ module_eval(<<'.,.,', 'grammar.y', 108)
523
+ def _reduce_32(val, _values, result)
524
+ result = CallNode.new(val[0], val[1], [val[2]])
525
+ result
526
+ end
527
+ .,.,
528
+
529
+ module_eval(<<'.,.,', 'grammar.y', 109)
530
+ def _reduce_33(val, _values, result)
531
+ result = CallNode.new(val[0], val[1], [val[2]])
532
+ result
533
+ end
534
+ .,.,
535
+
536
+ module_eval(<<'.,.,', 'grammar.y', 110)
537
+ def _reduce_34(val, _values, result)
538
+ result = CallNode.new(val[0], val[1], [val[2]])
539
+ result
540
+ end
541
+ .,.,
542
+
543
+ module_eval(<<'.,.,', 'grammar.y', 111)
544
+ def _reduce_35(val, _values, result)
545
+ result = CallNode.new(val[0], val[1], [val[2]])
546
+ result
547
+ end
548
+ .,.,
549
+
550
+ module_eval(<<'.,.,', 'grammar.y', 112)
551
+ def _reduce_36(val, _values, result)
552
+ result = CallNode.new(val[0], val[1], [val[2]])
553
+ result
554
+ end
555
+ .,.,
556
+
557
+ module_eval(<<'.,.,', 'grammar.y', 113)
558
+ def _reduce_37(val, _values, result)
559
+ result = CallNode.new(val[0], val[1], [val[2]])
560
+ result
561
+ end
562
+ .,.,
563
+
564
+ module_eval(<<'.,.,', 'grammar.y', 114)
565
+ def _reduce_38(val, _values, result)
566
+ result = CallNode.new(val[0], val[1], [val[2]])
567
+ result
568
+ end
569
+ .,.,
570
+
571
+ module_eval(<<'.,.,', 'grammar.y', 115)
572
+ def _reduce_39(val, _values, result)
573
+ result = CallNode.new(val[0], val[1], [val[2]])
574
+ result
575
+ end
576
+ .,.,
577
+
578
+ module_eval(<<'.,.,', 'grammar.y', 116)
579
+ def _reduce_40(val, _values, result)
580
+ result = CallNode.new(val[0], val[1], [val[2]])
581
+ result
582
+ end
583
+ .,.,
584
+
585
+ module_eval(<<'.,.,', 'grammar.y', 117)
586
+ def _reduce_41(val, _values, result)
587
+ result = CallNode.new(val[0], val[1], [val[2]])
588
+ result
589
+ end
590
+ .,.,
591
+
592
+ module_eval(<<'.,.,', 'grammar.y', 121)
593
+ def _reduce_42(val, _values, result)
594
+ result = GetConstantNode.new(val[0])
595
+ result
596
+ end
597
+ .,.,
598
+
599
+ module_eval(<<'.,.,', 'grammar.y', 126)
600
+ def _reduce_43(val, _values, result)
601
+ result = SetLocalNode.new(val[0], val[2])
602
+ result
603
+ end
604
+ .,.,
605
+
606
+ module_eval(<<'.,.,', 'grammar.y', 127)
607
+ def _reduce_44(val, _values, result)
608
+ result = SetConstantNode.new(val[0], val[2])
609
+ result
610
+ end
611
+ .,.,
612
+
613
+ module_eval(<<'.,.,', 'grammar.y', 132)
614
+ def _reduce_45(val, _values, result)
615
+ result = DefNode.new(val[1], [], val[2])
616
+ result
617
+ end
618
+ .,.,
619
+
620
+ module_eval(<<'.,.,', 'grammar.y', 134)
621
+ def _reduce_46(val, _values, result)
622
+ result = DefNode.new(val[1], val[3], val[5])
623
+ result
624
+ end
625
+ .,.,
626
+
627
+ module_eval(<<'.,.,', 'grammar.y', 138)
628
+ def _reduce_47(val, _values, result)
629
+ result = []
630
+ result
631
+ end
632
+ .,.,
633
+
634
+ module_eval(<<'.,.,', 'grammar.y', 139)
635
+ def _reduce_48(val, _values, result)
636
+ result = val
637
+ result
638
+ end
639
+ .,.,
640
+
641
+ module_eval(<<'.,.,', 'grammar.y', 140)
642
+ def _reduce_49(val, _values, result)
643
+ result = val[0] << val[2]
644
+ result
645
+ end
646
+ .,.,
647
+
648
+ module_eval(<<'.,.,', 'grammar.y', 145)
649
+ def _reduce_50(val, _values, result)
650
+ result = ClassNode.new(val[1], val[2])
651
+ result
652
+ end
653
+ .,.,
654
+
655
+ module_eval(<<'.,.,', 'grammar.y', 150)
656
+ def _reduce_51(val, _values, result)
657
+ result = IfNode.new(val[1], val[2])
658
+ result
659
+ end
660
+ .,.,
661
+
662
+ module_eval(<<'.,.,', 'grammar.y', 156)
663
+ def _reduce_52(val, _values, result)
664
+ result = val[1]
665
+ result
666
+ end
667
+ .,.,
668
+
669
+ def _reduce_none(val, _values, result)
670
+ val[0]
671
+ end
672
+
673
+ end # class Parser