sweet-lang 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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