myco 0.1.0.dev

Sign up to get free protection for your applications and to get access to all the features.
Files changed (53) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +2 -0
  3. data/bin/myco +7 -0
  4. data/lib/myco/backtrace.rb +56 -0
  5. data/lib/myco/bootstrap/component.rb +142 -0
  6. data/lib/myco/bootstrap/empty_object.rb +4 -0
  7. data/lib/myco/bootstrap/file_toplevel.rb +5 -0
  8. data/lib/myco/bootstrap/find_constant.rb +86 -0
  9. data/lib/myco/bootstrap/instance.rb +52 -0
  10. data/lib/myco/bootstrap/meme.rb +160 -0
  11. data/lib/myco/bootstrap/void.rb +40 -0
  12. data/lib/myco/bootstrap.my +15 -0
  13. data/lib/myco/bootstrap.rb +10 -0
  14. data/lib/myco/command.my +33 -0
  15. data/lib/myco/core/BasicObject.my +46 -0
  16. data/lib/myco/core/Category.my +5 -0
  17. data/lib/myco/core/Decorator.my +18 -0
  18. data/lib/myco/core/FileToplevel.my +23 -0
  19. data/lib/myco/core/Object.my +24 -0
  20. data/lib/myco/core/Switch.my +31 -0
  21. data/lib/myco/eval.rb +63 -0
  22. data/lib/myco/parser/ast/constant_access.rb +29 -0
  23. data/lib/myco/parser/ast/constant_define.rb +40 -0
  24. data/lib/myco/parser/ast/constant_reopen.rb +47 -0
  25. data/lib/myco/parser/ast/declare_category.rb +51 -0
  26. data/lib/myco/parser/ast/declare_decorator.rb +35 -0
  27. data/lib/myco/parser/ast/declare_file.rb +54 -0
  28. data/lib/myco/parser/ast/declare_meme.rb +44 -0
  29. data/lib/myco/parser/ast/declare_object.rb +75 -0
  30. data/lib/myco/parser/ast/declare_string.rb +37 -0
  31. data/lib/myco/parser/ast/invoke.rb +66 -0
  32. data/lib/myco/parser/ast/local_variable_access_ambiguous.rb +38 -0
  33. data/lib/myco/parser/ast/misc.rb +61 -0
  34. data/lib/myco/parser/ast/myco_module_scope.rb +58 -0
  35. data/lib/myco/parser/ast/quest.rb +82 -0
  36. data/lib/myco/parser/ast.rb +15 -0
  37. data/lib/myco/parser/builder.output +3995 -0
  38. data/lib/myco/parser/builder.racc +585 -0
  39. data/lib/myco/parser/builder.rb +1592 -0
  40. data/lib/myco/parser/lexer.rb +2306 -0
  41. data/lib/myco/parser/lexer.rl +393 -0
  42. data/lib/myco/parser/lexer_char_classes.rl +56 -0
  43. data/lib/myco/parser/lexer_common.rb +95 -0
  44. data/lib/myco/parser/lexer_skeleton.rl +154 -0
  45. data/lib/myco/parser/peg_parser.kpeg +759 -0
  46. data/lib/myco/parser/peg_parser.rb +7094 -0
  47. data/lib/myco/parser.rb +40 -0
  48. data/lib/myco/tools/OptionParser.my +38 -0
  49. data/lib/myco/tools/mycompile.my +51 -0
  50. data/lib/myco/toolset.rb +16 -0
  51. data/lib/myco/version.rb +22 -0
  52. data/lib/myco.rb +15 -0
  53. metadata +247 -0
@@ -0,0 +1,1592 @@
1
+ #
2
+ # DO NOT MODIFY!!!!
3
+ # This file is automatically generated by Racc 1.4.11
4
+ # from Racc grammer file "".
5
+ #
6
+
7
+ require 'racc/parser.rb'
8
+ module CodeTools
9
+ class Builder < Racc::Parser
10
+
11
+ module_eval(<<'...end builder.racc/module_eval...', 'builder.racc', 518)
12
+ attr_accessor :processor
13
+
14
+ def parse string
15
+ @tokens = Myco::ToolSet::Parser::Lexer.new(string).lex
16
+ do_parse
17
+ end
18
+
19
+ def next_token
20
+ tok = @tokens.shift
21
+ [ tok[0], tok ] if tok
22
+ end
23
+
24
+ # Generate an AST::Node of the given type
25
+ #
26
+ # @param type [Symbol] The type of AST::Node to generate
27
+ # @param locator [Array,AST::Node] The object from which to determine the
28
+ # source location where the AST::Node is to reference as its location.
29
+ # If it is an lexer token (Array), the location is pulled from it;
30
+ # if it is an AST::Node, the location for this node will be copied from it.
31
+ # @param args [Array] The arguments to pass to the processor method that
32
+ # will generate the AST::Node; usually the same as the arguments that will
33
+ # eventually be passed to the AST::Node's constructor.
34
+ #
35
+ def ast type, locator, *args
36
+ # TODO: integrate columns from location instead of just rows
37
+ line = locator.is_a?(Array) ? locator[2].first : locator.line
38
+ @processor.send :"process_#{type}", line, *args
39
+ end
40
+
41
+ def encode_escapes str
42
+ str.gsub /\\(.)/ do "#{$1}" end
43
+ end
44
+
45
+ # Given a locator and an ast(:array) node, refactor the splat-related nodes
46
+ # in a copy of the original node body and return a replacement for the node.
47
+ def args_assemble loc, orig_node
48
+ list = orig_node.body.dup
49
+ tmp = []
50
+
51
+ special_type_check = Proc.new { |x|
52
+ case x
53
+ when AST::SplatValue; :splat
54
+ when AST::ConcatArgs; :argscat
55
+ when AST::PushArgs; :argspush
56
+ when AST::BlockPass; :block_pass
57
+ else; nil
58
+ end
59
+ }
60
+
61
+ # Get the original value in the new_node
62
+ tmp << list.shift until list.empty? or special_type_check.call(list.first)
63
+ new_node = tmp.empty? ? list.shift : ast(:array, loc, tmp)
64
+
65
+ # Continue to reduce until all elements have been used
66
+ until list.empty?
67
+ arg = list.shift
68
+ type = special_type_check.call(arg)
69
+ if type == :block_pass
70
+ new_node = arg.tap { |n| n.arguments = new_node }
71
+ elsif type != nil
72
+ new_node = ast(:argscat, loc, new_node, arg)
73
+ else
74
+ new_node = ast(:argspush, loc, new_node, arg)
75
+ end
76
+ end
77
+
78
+ new_node || orig_node
79
+ end
80
+ ...end builder.racc/module_eval...
81
+ ##### State transition tables begin ###
82
+
83
+ racc_action_table = [
84
+ 14, 91, 87, 81, 82, 83, 84, 85, 86, 90,
85
+ 158, 112, 155, 17, 28, 16, 134, 32, 40, 154,
86
+ 158, 97, 113, 14, 16, 158, 13, 134, 88, 114,
87
+ 33, -84, 158, 88, 225, 115, 89, 14, 91, 87,
88
+ 81, 82, 83, 84, 85, 86, 90, 12, 211, 13,
89
+ 104, 158, 98, 162, 99, -84, 12, 119, 97, -84,
90
+ 213, 99, 26, 13, 27, 99, 112, 17, 34, 48,
91
+ 88, 17, 42, 89, 14, 130, 108, 113, 130, 228,
92
+ 124, 215, 103, 124, 114, 99, 166, 104, 99, 98,
93
+ 14, 91, 87, 81, 82, 83, 84, 85, 86, 90,
94
+ 13, 14, 91, 87, 81, 82, 83, 84, 85, 86,
95
+ 90, 97, 217, 134, 99, 229, 13, -85, 14, 158,
96
+ 49, 50, 97, 88, 158, 115, 89, 13, 115, 51,
97
+ 115, 130, 106, 110, 88, 103, 124, 89, 121, 123,
98
+ 104, -85, 98, 227, 13, -85, 29, 180, 232, 43,
99
+ 182, 104, 219, 98, 14, 91, 87, 81, 82, 83,
100
+ 84, 85, 86, 90, 99, 14, 91, 87, 81, 82,
101
+ 83, 84, 85, 86, 90, 97, 143, 30, 134, -10,
102
+ 13, 29, 99, 141, -10, 168, 97, 88, 220, -59,
103
+ 89, 13, 29, 145, -59, 45, -59, 148, 88, 31,
104
+ 43, 89, 44, 214, 104, 145, 98, 45, 145, 148,
105
+ 45, 47, 148, 45, 145, 104, 45, 98, 14, 91,
106
+ 87, 81, 82, 83, 84, 85, 86, 90, 142, 14,
107
+ 91, 87, 81, 82, 83, 84, 85, 86, 90, 97,
108
+ 149, 145, 99, 45, 13, 29, 174, 175, 176, 177,
109
+ 97, 88, 184, 99, 89, 13, 125, 126, 127, 128,
110
+ 129, 130, 88, 149, 29, 89, 124, 197, 104, 171,
111
+ 98, 198, 202, 124, 103, nil, nil, nil, nil, 104,
112
+ nil, 98, 14, 91, 87, 81, 82, 83, 84, 85,
113
+ 86, 90, nil, 14, 91, 87, 81, 82, 83, 84,
114
+ 85, 86, 90, 97, 127, 128, 129, 130, 13, nil,
115
+ nil, nil, 124, nil, 97, 88, nil, nil, 89, 13,
116
+ 127, 128, 129, 130, nil, nil, 88, nil, 124, 89,
117
+ nil, nil, 104, nil, 98, nil, nil, nil, nil, nil,
118
+ nil, nil, nil, 104, nil, 98, 14, 91, 87, 81,
119
+ 82, 83, 84, 85, 86, 90, nil, 14, 91, 87,
120
+ 81, 82, 83, 84, 85, 86, 90, 97, nil, nil,
121
+ nil, nil, 13, nil, nil, nil, nil, nil, 97, 88,
122
+ nil, nil, 89, 13, nil, nil, nil, nil, nil, nil,
123
+ 88, nil, nil, 89, nil, nil, 104, nil, 98, nil,
124
+ nil, nil, nil, nil, nil, nil, nil, 104, nil, 98,
125
+ 14, 91, 87, 81, 82, 83, 84, 85, 86, 90,
126
+ nil, 14, 91, 87, 81, 82, 83, 84, 85, 86,
127
+ 90, 97, nil, nil, nil, nil, 13, nil, nil, nil,
128
+ nil, nil, 97, 88, nil, nil, 89, 13, nil, nil,
129
+ nil, nil, nil, nil, 88, nil, nil, 89, nil, nil,
130
+ 104, nil, 98, nil, nil, nil, nil, nil, nil, nil,
131
+ nil, 104, nil, 98, 14, 91, 87, 81, 82, 83,
132
+ 84, 85, 86, 90, nil, 14, 91, 87, 81, 82,
133
+ 83, 84, 85, 86, 90, 97, nil, nil, nil, nil,
134
+ 13, nil, nil, nil, nil, nil, 97, 88, nil, nil,
135
+ 89, 13, nil, nil, nil, nil, nil, nil, 88, nil,
136
+ nil, 89, nil, nil, 104, nil, 98, nil, nil, nil,
137
+ nil, nil, nil, nil, nil, 104, nil, 98, 14, 91,
138
+ 87, 81, 82, 83, 84, 85, 86, 90, nil, 14,
139
+ 91, 87, 81, 82, 83, 84, 85, 86, 90, 97,
140
+ nil, nil, nil, nil, 13, nil, nil, nil, nil, nil,
141
+ 97, 88, nil, nil, 89, 13, nil, nil, nil, nil,
142
+ nil, nil, 88, nil, nil, 89, nil, nil, 104, nil,
143
+ 98, nil, nil, nil, nil, nil, nil, nil, nil, 104,
144
+ nil, 98, 14, 91, 87, 81, 82, 83, 84, 85,
145
+ 86, 90, nil, 14, 91, 87, 81, 82, 83, 84,
146
+ 85, 86, 90, 97, nil, nil, nil, nil, 13, nil,
147
+ nil, nil, nil, nil, 97, 88, nil, nil, 89, 13,
148
+ nil, nil, nil, nil, nil, nil, 88, nil, nil, 89,
149
+ nil, nil, 104, nil, 98, 14, 16, nil, nil, nil,
150
+ nil, nil, nil, 104, nil, 98, 14, 91, 87, 81,
151
+ 82, 83, 84, 85, 86, 90, nil, nil, nil, 17,
152
+ nil, 13, nil, nil, 21, nil, nil, 97, 12, nil,
153
+ 99, nil, 13, nil, 26, nil, 27, nil, nil, 88,
154
+ nil, nil, 89, nil, nil, nil, nil, nil, 14, 16,
155
+ nil, 103, nil, nil, nil, nil, 104, nil, 98, 14,
156
+ 91, 87, 81, 82, 83, 84, 85, 86, 90, nil,
157
+ nil, 155, 17, nil, 13, nil, nil, 21, 154, nil,
158
+ 97, 12, nil, nil, 158, 13, nil, 26, nil, 27,
159
+ nil, nil, 88, nil, nil, 89, 14, 91, 87, 81,
160
+ 82, 83, 84, 85, 86, 90, nil, nil, 205, 104,
161
+ nil, 98, nil, nil, nil, nil, nil, 97, nil, nil,
162
+ nil, nil, 13, nil, nil, nil, nil, nil, nil, 88,
163
+ nil, nil, 89, 14, 91, 87, 81, 82, 83, 84,
164
+ 85, 86, 90, nil, nil, nil, 104, nil, 98, nil,
165
+ nil, nil, nil, nil, 97, nil, nil, nil, nil, 13,
166
+ nil, nil, nil, nil, nil, nil, 88, nil, nil, 89,
167
+ 14, 91, 87, 81, 82, 83, 84, 85, 86, 90,
168
+ nil, nil, 155, 104, nil, 98, nil, nil, nil, 154,
169
+ nil, 97, nil, nil, nil, nil, 13, nil, nil, nil,
170
+ nil, nil, nil, 88, nil, nil, 89, 14, 91, 87,
171
+ 81, 82, 83, 84, 85, 86, 90, nil, nil, nil,
172
+ 104, nil, 98, nil, nil, nil, nil, nil, 97, nil,
173
+ nil, nil, nil, 13, nil, nil, nil, nil, nil, nil,
174
+ 88, nil, nil, 89, 14, 91, 87, 81, 82, 83,
175
+ 84, 85, 86, 90, nil, nil, nil, 104, nil, 98,
176
+ nil, nil, nil, nil, nil, 97, nil, nil, 99, nil,
177
+ 13, nil, nil, nil, nil, nil, nil, 88, nil, nil,
178
+ 89, 125, 126, 127, 128, 129, 130, 131, nil, 103,
179
+ nil, 124, nil, nil, 104, nil, 98, 14, 91, 87,
180
+ 81, 82, 83, 84, 85, 86, 90, 125, 126, 127,
181
+ 128, 129, 130, 131, 132, 133, nil, 124, 97, nil,
182
+ nil, nil, nil, 13, nil, nil, nil, nil, nil, nil,
183
+ 88, nil, nil, 89, 125, 126, 127, 128, 129, 130,
184
+ 131, 132, 133, nil, 124, nil, nil, 104, nil, 98,
185
+ 125, 126, 127, 128, 129, 130, 131, 132, 133, nil,
186
+ 124, 125, 126, 127, 128, 129, 130, 131, nil, nil,
187
+ nil, 124, 125, 126, 127, 128, 129, 130, 131, 132,
188
+ 133, nil, 124, 125, 126, 127, 128, 129, 130, 131,
189
+ 132, 133, nil, 124, 125, 126, 127, 128, 129, 130,
190
+ 131, 132, 133, nil, 124 ]
191
+
192
+ racc_action_check = [
193
+ 98, 98, 98, 98, 98, 98, 98, 98, 98, 98,
194
+ 203, 45, 98, 18, 1, 16, 135, 12, 18, 98,
195
+ 159, 98, 45, 17, 17, 98, 98, 207, 135, 45,
196
+ 13, 207, 161, 98, 203, 45, 98, 31, 31, 31,
197
+ 31, 31, 31, 31, 31, 31, 31, 16, 159, 17,
198
+ 98, 212, 98, 98, 169, 207, 17, 45, 31, 207,
199
+ 161, 31, 17, 31, 17, 100, 115, 20, 15, 26,
200
+ 31, 41, 20, 31, 30, 187, 41, 115, 188, 212,
201
+ 187, 169, 31, 188, 115, 170, 100, 31, 216, 31,
202
+ 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
203
+ 30, 63, 63, 63, 63, 63, 63, 63, 63, 63,
204
+ 63, 47, 170, 208, 47, 216, 47, 208, 34, 204,
205
+ 27, 28, 63, 47, 226, 116, 47, 63, 118, 29,
206
+ 181, 189, 32, 44, 63, 47, 189, 63, 46, 49,
207
+ 47, 208, 47, 204, 34, 208, 52, 116, 226, 53,
208
+ 118, 63, 181, 63, 64, 64, 64, 64, 64, 64,
209
+ 64, 64, 64, 64, 102, 99, 99, 99, 99, 99,
210
+ 99, 99, 99, 99, 99, 64, 91, 11, 58, 11,
211
+ 64, 11, 167, 88, 11, 102, 99, 64, 184, 70,
212
+ 64, 99, 70, 91, 70, 91, 70, 91, 99, 11,
213
+ 22, 99, 22, 167, 64, 184, 64, 184, 149, 184,
214
+ 149, 25, 149, 25, 144, 99, 144, 99, 104, 104,
215
+ 104, 104, 104, 104, 104, 104, 104, 104, 89, 121,
216
+ 121, 121, 121, 121, 121, 121, 121, 121, 121, 104,
217
+ 97, 221, 104, 221, 104, 107, 111, 112, 113, 114,
218
+ 121, 104, 124, 121, 104, 121, 191, 191, 191, 191,
219
+ 191, 191, 121, 134, 136, 121, 191, 141, 104, 104,
220
+ 104, 142, 146, 190, 121, nil, nil, nil, nil, 121,
221
+ nil, 121, 125, 125, 125, 125, 125, 125, 125, 125,
222
+ 125, 125, nil, 126, 126, 126, 126, 126, 126, 126,
223
+ 126, 126, 126, 125, 185, 185, 185, 185, 125, nil,
224
+ nil, nil, 185, nil, 126, 125, nil, nil, 125, 126,
225
+ 186, 186, 186, 186, nil, nil, 126, nil, 186, 126,
226
+ nil, nil, 125, nil, 125, nil, nil, nil, nil, nil,
227
+ nil, nil, nil, 126, nil, 126, 127, 127, 127, 127,
228
+ 127, 127, 127, 127, 127, 127, nil, 128, 128, 128,
229
+ 128, 128, 128, 128, 128, 128, 128, 127, nil, nil,
230
+ nil, nil, 127, nil, nil, nil, nil, nil, 128, 127,
231
+ nil, nil, 127, 128, nil, nil, nil, nil, nil, nil,
232
+ 128, nil, nil, 128, nil, nil, 127, nil, 127, nil,
233
+ nil, nil, nil, nil, nil, nil, nil, 128, nil, 128,
234
+ 129, 129, 129, 129, 129, 129, 129, 129, 129, 129,
235
+ nil, 130, 130, 130, 130, 130, 130, 130, 130, 130,
236
+ 130, 129, nil, nil, nil, nil, 129, nil, nil, nil,
237
+ nil, nil, 130, 129, nil, nil, 129, 130, nil, nil,
238
+ nil, nil, nil, nil, 130, nil, nil, 130, nil, nil,
239
+ 129, nil, 129, nil, nil, nil, nil, nil, nil, nil,
240
+ nil, 130, nil, 130, 131, 131, 131, 131, 131, 131,
241
+ 131, 131, 131, 131, nil, 132, 132, 132, 132, 132,
242
+ 132, 132, 132, 132, 132, 131, nil, nil, nil, nil,
243
+ 131, nil, nil, nil, nil, nil, 132, 131, nil, nil,
244
+ 131, 132, nil, nil, nil, nil, nil, nil, 132, nil,
245
+ nil, 132, nil, nil, 131, nil, 131, nil, nil, nil,
246
+ nil, nil, nil, nil, nil, 132, nil, 132, 133, 133,
247
+ 133, 133, 133, 133, 133, 133, 133, 133, nil, 137,
248
+ 137, 137, 137, 137, 137, 137, 137, 137, 137, 133,
249
+ nil, nil, nil, nil, 133, nil, nil, nil, nil, nil,
250
+ 137, 133, nil, nil, 133, 137, nil, nil, nil, nil,
251
+ nil, nil, 137, nil, nil, 137, nil, nil, 133, nil,
252
+ 133, nil, nil, nil, nil, nil, nil, nil, nil, 137,
253
+ nil, 137, 140, 140, 140, 140, 140, 140, 140, 140,
254
+ 140, 140, nil, 143, 143, 143, 143, 143, 143, 143,
255
+ 143, 143, 143, 140, nil, nil, nil, nil, 140, nil,
256
+ nil, nil, nil, nil, 143, 140, nil, nil, 140, 143,
257
+ nil, nil, nil, nil, nil, nil, 143, nil, nil, 143,
258
+ nil, nil, 140, nil, 140, 0, 0, nil, nil, nil,
259
+ nil, nil, nil, 143, nil, 143, 145, 145, 145, 145,
260
+ 145, 145, 145, 145, 145, 145, nil, nil, nil, 0,
261
+ nil, 0, nil, nil, 0, nil, nil, 145, 0, nil,
262
+ 145, nil, 145, nil, 0, nil, 0, nil, nil, 145,
263
+ nil, nil, 145, nil, nil, nil, nil, nil, 43, 43,
264
+ nil, 145, nil, nil, nil, nil, 145, nil, 145, 148,
265
+ 148, 148, 148, 148, 148, 148, 148, 148, 148, nil,
266
+ nil, 148, 43, nil, 43, nil, nil, 43, 148, nil,
267
+ 148, 43, nil, nil, 148, 148, nil, 43, nil, 43,
268
+ nil, nil, 148, nil, nil, 148, 154, 154, 154, 154,
269
+ 154, 154, 154, 154, 154, 154, nil, nil, 148, 148,
270
+ nil, 148, nil, nil, nil, nil, nil, 154, nil, nil,
271
+ nil, nil, 154, nil, nil, nil, nil, nil, nil, 154,
272
+ nil, nil, 154, 155, 155, 155, 155, 155, 155, 155,
273
+ 155, 155, 155, nil, nil, nil, 154, nil, 154, nil,
274
+ nil, nil, nil, nil, 155, nil, nil, nil, nil, 155,
275
+ nil, nil, nil, nil, nil, nil, 155, nil, nil, 155,
276
+ 158, 158, 158, 158, 158, 158, 158, 158, 158, 158,
277
+ nil, nil, 158, 155, nil, 155, nil, nil, nil, 158,
278
+ nil, 158, nil, nil, nil, nil, 158, nil, nil, nil,
279
+ nil, nil, nil, 158, nil, nil, 158, 175, 175, 175,
280
+ 175, 175, 175, 175, 175, 175, 175, nil, nil, nil,
281
+ 158, nil, 158, nil, nil, nil, nil, nil, 175, nil,
282
+ nil, nil, nil, 175, nil, nil, nil, nil, nil, nil,
283
+ 175, nil, nil, 175, 202, 202, 202, 202, 202, 202,
284
+ 202, 202, 202, 202, nil, nil, nil, 175, nil, 175,
285
+ nil, nil, nil, nil, nil, 202, nil, nil, 202, nil,
286
+ 202, nil, nil, nil, nil, nil, nil, 202, nil, nil,
287
+ 202, 192, 192, 192, 192, 192, 192, 192, nil, 202,
288
+ nil, 192, nil, nil, 202, nil, 202, 220, 220, 220,
289
+ 220, 220, 220, 220, 220, 220, 220, 57, 57, 57,
290
+ 57, 57, 57, 57, 57, 57, nil, 57, 220, nil,
291
+ nil, nil, nil, 220, nil, nil, nil, nil, nil, nil,
292
+ 220, nil, nil, 220, 139, 139, 139, 139, 139, 139,
293
+ 139, 139, 139, nil, 139, nil, nil, 220, nil, 220,
294
+ 153, 153, 153, 153, 153, 153, 153, 153, 153, nil,
295
+ 153, 193, 193, 193, 193, 193, 193, 193, nil, nil,
296
+ nil, 193, 199, 199, 199, 199, 199, 199, 199, 199,
297
+ 199, nil, 199, 218, 218, 218, 218, 218, 218, 218,
298
+ 218, 218, nil, 218, 230, 230, 230, 230, 230, 230,
299
+ 230, 230, 230, nil, 230 ]
300
+
301
+ racc_action_pointer = [
302
+ 653, 14, nil, nil, nil, nil, nil, nil, nil, nil,
303
+ nil, 153, -20, 28, nil, 43, 12, 21, -13, nil,
304
+ 41, nil, 170, nil, nil, 165, 27, 75, 121, 127,
305
+ 72, 35, 96, nil, 116, nil, nil, nil, nil, nil,
306
+ nil, 45, nil, 706, 99, 8, 92, 88, nil, 95,
307
+ nil, nil, 118, 119, nil, nil, nil, 955, 155, nil,
308
+ nil, nil, nil, 99, 152, nil, nil, nil, nil, nil,
309
+ 164, nil, nil, nil, nil, nil, nil, nil, nil, nil,
310
+ nil, nil, nil, nil, nil, nil, nil, nil, 146, 188,
311
+ nil, 147, nil, nil, nil, nil, nil, 237, -2, 163,
312
+ 39, nil, 138, nil, 216, nil, nil, 217, nil, nil,
313
+ nil, 213, 218, 245, 246, 63, 98, nil, 101, nil,
314
+ nil, 227, nil, nil, 249, 280, 291, 344, 355, 408,
315
+ 419, 472, 483, 536, 260, -7, 236, 547, nil, 982,
316
+ 600, 231, 232, 611, 168, 664, 226, nil, 717, 162,
317
+ nil, nil, nil, 998, 754, 791, nil, nil, 828, -7,
318
+ nil, 5, nil, nil, nil, nil, nil, 156, nil, 28,
319
+ 59, nil, nil, nil, nil, 865, nil, nil, nil, nil,
320
+ nil, 103, nil, nil, 159, 290, 306, 58, 61, 114,
321
+ 251, 244, 929, 1009, nil, nil, nil, nil, nil, 1020,
322
+ nil, nil, 902, -17, 92, nil, nil, 4, 90, nil,
323
+ nil, nil, 24, nil, nil, nil, 62, nil, 1031, nil,
324
+ 955, 195, nil, nil, nil, nil, 97, nil, nil, nil,
325
+ 1042, nil, nil ]
326
+
327
+ racc_action_default = [
328
+ -161, -161, -1, -2, -3, -4, -5, -6, -7, -8,
329
+ -9, -59, -161, -161, -57, -60, -61, -126, -161, -128,
330
+ -161, -132, -161, -151, -152, -155, -161, -161, -161, -161,
331
+ -161, -161, -161, -56, -161, -156, -157, -158, -125, -127,
332
+ -130, -161, -131, -161, -161, -161, -161, -161, -159, -161,
333
+ 233, -55, -59, -161, -134, -11, -12, -13, -14, -15,
334
+ -16, -17, -18, -19, -20, -21, -22, -23, -24, -25,
335
+ -26, -27, -28, -29, -30, -31, -32, -33, -34, -35,
336
+ -36, -37, -38, -39, -40, -41, -42, -43, -161, -161,
337
+ -49, -62, -65, -66, -67, -68, -69, -161, -161, -138,
338
+ -161, -140, -161, -144, -161, -150, -46, -58, -129, -133,
339
+ -135, -161, -98, -161, -161, -103, -161, -105, -161, -109,
340
+ -110, -161, -154, -160, -161, -161, -161, -161, -161, -161,
341
+ -161, -161, -161, -161, -161, -14, -26, -53, -52, -161,
342
+ -54, -161, -161, -161, -71, -161, -161, -75, -161, -79,
343
+ -80, -81, -82, -86, -161, -161, -87, -88, -89, -161,
344
+ -92, -161, -114, -115, -137, -139, -142, -161, -143, -161,
345
+ -161, -148, -149, -47, -136, -161, -100, -101, -102, -104,
346
+ -107, -161, -108, -153, -70, -116, -117, -118, -119, -120,
347
+ -121, -122, -123, -124, -83, -50, -51, -44, -48, -63,
348
+ -76, -73, -161, -161, -161, -96, -97, -14, -14, -90,
349
+ -91, -112, -161, -113, -141, -146, -161, -147, -99, -106,
350
+ -161, -72, -77, -45, -74, -94, -161, -95, -111, -145,
351
+ -64, -78, -93 ]
352
+
353
+ racc_goto_table = [
354
+ 11, 159, 105, 139, 139, 135, 135, 165, 200, 2,
355
+ 167, 116, 169, 150, 39, 7, 118, 11, 122, 8,
356
+ 164, 1, 179, 151, 152, 170, 196, 137, 140, 196,
357
+ 52, 70, 7, 38, 107, 35, 8, 39, 153, 36,
358
+ 161, 195, 223, 11, 173, 54, 53, 70, 222, 221,
359
+ 150, 203, 109, 46, 206, 120, 163, 210, 7, 41,
360
+ 151, 194, 8, 111, 212, 185, 186, 187, 188, 189,
361
+ 190, 191, 192, 193, 165, 172, 165, 139, 216, 135,
362
+ 139, 37, 135, 199, 181, 231, 178, 179, 153, nil,
363
+ 204, nil, 183, nil, 139, 139, 207, 208, 153, 70,
364
+ 209, 210, nil, nil, 70, nil, nil, 226, nil, nil,
365
+ 210, nil, nil, nil, nil, 218, 201, nil, nil, nil,
366
+ nil, 70, nil, 165, 210, nil, nil, nil, nil, nil,
367
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
368
+ nil, nil, nil, nil, nil, 70, nil, nil, nil, nil,
369
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
370
+ 230, nil, nil, nil, nil, nil, nil, nil, nil, nil,
371
+ nil, nil, nil, 224, nil, nil, nil, nil, nil, nil,
372
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
373
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
374
+ nil, nil, 70 ]
375
+
376
+ racc_goto_check = [
377
+ 12, 59, 52, 14, 14, 15, 15, 69, 51, 2,
378
+ 70, 63, 70, 46, 66, 8, 61, 12, 52, 9,
379
+ 13, 1, 62, 48, 54, 13, 40, 41, 41, 40,
380
+ 12, 12, 8, 3, 12, 6, 9, 66, 14, 7,
381
+ 57, 20, 37, 12, 39, 8, 43, 12, 51, 50,
382
+ 46, 59, 2, 53, 60, 64, 65, 58, 8, 67,
383
+ 48, 54, 9, 68, 59, 14, 14, 14, 14, 14,
384
+ 14, 14, 14, 14, 69, 71, 69, 14, 70, 15,
385
+ 14, 73, 15, 14, 63, 51, 61, 62, 14, nil,
386
+ 57, nil, 52, nil, 14, 14, 15, 15, 14, 12,
387
+ 57, 58, nil, nil, 12, nil, nil, 59, nil, nil,
388
+ 58, nil, nil, nil, nil, 14, 52, nil, nil, nil,
389
+ nil, 12, nil, 69, 58, nil, nil, nil, nil, nil,
390
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
391
+ nil, nil, nil, nil, nil, 12, nil, nil, nil, nil,
392
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
393
+ 14, nil, nil, nil, nil, nil, nil, nil, nil, nil,
394
+ nil, nil, nil, 52, nil, nil, nil, nil, nil, nil,
395
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
396
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
397
+ nil, nil, 12 ]
398
+
399
+ racc_goto_pointer = [
400
+ nil, 21, 9, 16, nil, nil, 19, 23, 15, 19,
401
+ nil, nil, 0, -79, -60, -58, nil, nil, nil, nil,
402
+ -94, nil, nil, nil, nil, nil, nil, nil, nil, nil,
403
+ nil, nil, nil, nil, nil, nil, nil, -155, nil, -62,
404
+ -111, -36, nil, 16, nil, nil, -84, nil, -74, nil,
405
+ -135, -136, -29, 28, -73, nil, nil, -58, -102, -97,
406
+ -94, -29, -94, -34, 10, -42, -4, 39, 19, -93,
407
+ -92, -29, nil, 65 ]
408
+
409
+ racc_goto_default = [
410
+ nil, nil, nil, 20, 3, 4, 5, 6, 55, 56,
411
+ 9, 10, 136, 102, 57, 58, 59, 60, 61, 62,
412
+ 63, 64, 65, 66, 67, 68, 69, 71, 72, 73,
413
+ 74, 75, 76, 77, 78, 79, 80, nil, 24, nil,
414
+ 138, nil, 15, 22, 23, 92, 93, 94, 95, 96,
415
+ 144, 147, nil, 146, nil, 157, 156, nil, 160, nil,
416
+ nil, nil, 117, nil, nil, nil, 19, 18, nil, 101,
417
+ 100, nil, 25, nil ]
418
+
419
+ racc_reduce_table = [
420
+ 0, 0, :racc_error,
421
+ 1, 58, :_reduce_1,
422
+ 1, 60, :_reduce_none,
423
+ 1, 60, :_reduce_none,
424
+ 1, 60, :_reduce_none,
425
+ 1, 60, :_reduce_none,
426
+ 1, 60, :_reduce_none,
427
+ 1, 60, :_reduce_none,
428
+ 1, 60, :_reduce_none,
429
+ 1, 60, :_reduce_none,
430
+ 1, 60, :_reduce_none,
431
+ 1, 70, :_reduce_none,
432
+ 1, 70, :_reduce_none,
433
+ 1, 70, :_reduce_none,
434
+ 1, 71, :_reduce_none,
435
+ 1, 71, :_reduce_none,
436
+ 1, 71, :_reduce_none,
437
+ 1, 71, :_reduce_none,
438
+ 1, 71, :_reduce_none,
439
+ 1, 71, :_reduce_none,
440
+ 1, 71, :_reduce_none,
441
+ 1, 71, :_reduce_none,
442
+ 1, 71, :_reduce_none,
443
+ 1, 72, :_reduce_none,
444
+ 1, 72, :_reduce_none,
445
+ 1, 72, :_reduce_none,
446
+ 1, 72, :_reduce_none,
447
+ 1, 72, :_reduce_none,
448
+ 1, 72, :_reduce_none,
449
+ 1, 72, :_reduce_none,
450
+ 1, 72, :_reduce_none,
451
+ 1, 72, :_reduce_none,
452
+ 1, 72, :_reduce_none,
453
+ 1, 72, :_reduce_none,
454
+ 1, 72, :_reduce_none,
455
+ 1, 72, :_reduce_none,
456
+ 1, 72, :_reduce_none,
457
+ 1, 85, :_reduce_37,
458
+ 1, 86, :_reduce_38,
459
+ 1, 87, :_reduce_39,
460
+ 1, 88, :_reduce_40,
461
+ 1, 89, :_reduce_41,
462
+ 1, 90, :_reduce_42,
463
+ 1, 91, :_reduce_43,
464
+ 0, 94, :_reduce_44,
465
+ 4, 77, :_reduce_45,
466
+ 0, 96, :_reduce_46,
467
+ 4, 95, :_reduce_47,
468
+ 3, 78, :_reduce_48,
469
+ 1, 93, :_reduce_49,
470
+ 2, 97, :_reduce_50,
471
+ 2, 98, :_reduce_51,
472
+ 1, 98, :_reduce_52,
473
+ 2, 79, :_reduce_53,
474
+ 2, 80, :_reduce_54,
475
+ 3, 69, :_reduce_55,
476
+ 2, 69, :_reduce_56,
477
+ 1, 69, :_reduce_57,
478
+ 3, 99, :_reduce_58,
479
+ 1, 99, :_reduce_59,
480
+ 1, 100, :_reduce_60,
481
+ 1, 101, :_reduce_61,
482
+ 1, 84, :_reduce_62,
483
+ 3, 74, :_reduce_63,
484
+ 5, 75, :_reduce_64,
485
+ 1, 82, :_reduce_none,
486
+ 1, 82, :_reduce_none,
487
+ 1, 82, :_reduce_none,
488
+ 1, 82, :_reduce_none,
489
+ 1, 82, :_reduce_none,
490
+ 3, 102, :_reduce_70,
491
+ 2, 103, :_reduce_71,
492
+ 4, 104, :_reduce_72,
493
+ 2, 108, :_reduce_73,
494
+ 3, 108, :_reduce_74,
495
+ 2, 105, :_reduce_75,
496
+ 3, 105, :_reduce_76,
497
+ 4, 106, :_reduce_77,
498
+ 5, 106, :_reduce_78,
499
+ 1, 111, :_reduce_79,
500
+ 1, 111, :_reduce_80,
501
+ 1, 111, :_reduce_81,
502
+ 2, 76, :_reduce_82,
503
+ 3, 83, :_reduce_83,
504
+ 2, 112, :_reduce_84,
505
+ 2, 113, :_reduce_85,
506
+ 1, 114, :_reduce_none,
507
+ 1, 114, :_reduce_none,
508
+ 1, 114, :_reduce_none,
509
+ 1, 115, :_reduce_89,
510
+ 2, 115, :_reduce_90,
511
+ 2, 116, :_reduce_91,
512
+ 1, 116, :_reduce_92,
513
+ 3, 117, :_reduce_93,
514
+ 2, 117, :_reduce_94,
515
+ 2, 117, :_reduce_95,
516
+ 1, 117, :_reduce_96,
517
+ 2, 107, :_reduce_97,
518
+ 1, 118, :_reduce_98,
519
+ 3, 118, :_reduce_99,
520
+ 2, 118, :_reduce_100,
521
+ 2, 118, :_reduce_101,
522
+ 2, 119, :_reduce_102,
523
+ 1, 119, :_reduce_103,
524
+ 2, 120, :_reduce_104,
525
+ 1, 120, :_reduce_105,
526
+ 3, 121, :_reduce_106,
527
+ 2, 121, :_reduce_107,
528
+ 2, 121, :_reduce_108,
529
+ 1, 121, :_reduce_109,
530
+ 2, 110, :_reduce_110,
531
+ 3, 122, :_reduce_111,
532
+ 2, 122, :_reduce_112,
533
+ 2, 122, :_reduce_113,
534
+ 1, 122, :_reduce_114,
535
+ 2, 92, :_reduce_115,
536
+ 3, 73, :_reduce_116,
537
+ 3, 73, :_reduce_117,
538
+ 3, 73, :_reduce_118,
539
+ 3, 73, :_reduce_119,
540
+ 3, 73, :_reduce_120,
541
+ 3, 73, :_reduce_121,
542
+ 3, 73, :_reduce_122,
543
+ 3, 73, :_reduce_123,
544
+ 3, 73, :_reduce_124,
545
+ 2, 123, :_reduce_125,
546
+ 1, 123, :_reduce_126,
547
+ 2, 124, :_reduce_127,
548
+ 1, 124, :_reduce_128,
549
+ 3, 59, :_reduce_129,
550
+ 2, 59, :_reduce_130,
551
+ 2, 59, :_reduce_131,
552
+ 1, 59, :_reduce_132,
553
+ 3, 65, :_reduce_133,
554
+ 3, 61, :_reduce_134,
555
+ 1, 125, :_reduce_135,
556
+ 4, 66, :_reduce_136,
557
+ 2, 126, :_reduce_137,
558
+ 1, 126, :_reduce_138,
559
+ 2, 127, :_reduce_139,
560
+ 1, 127, :_reduce_140,
561
+ 3, 109, :_reduce_141,
562
+ 2, 109, :_reduce_142,
563
+ 2, 109, :_reduce_143,
564
+ 1, 109, :_reduce_144,
565
+ 3, 128, :_reduce_145,
566
+ 2, 128, :_reduce_146,
567
+ 2, 128, :_reduce_147,
568
+ 1, 128, :_reduce_148,
569
+ 2, 81, :_reduce_149,
570
+ 3, 62, :_reduce_150,
571
+ 1, 129, :_reduce_none,
572
+ 1, 129, :_reduce_none,
573
+ 4, 63, :_reduce_153,
574
+ 3, 63, :_reduce_154,
575
+ 1, 63, :_reduce_155,
576
+ 1, 130, :_reduce_none,
577
+ 1, 130, :_reduce_none,
578
+ 2, 64, :_reduce_158,
579
+ 2, 67, :_reduce_159,
580
+ 3, 68, :_reduce_160 ]
581
+
582
+ racc_reduce_n = 161
583
+
584
+ racc_shift_n = 233
585
+
586
+ racc_token_table = {
587
+ false => 0,
588
+ :error => 1,
589
+ :T_CONSTANT => 2,
590
+ :T_IDENTIFIER => 3,
591
+ :T_SYMBOL => 4,
592
+ :T_NULL => 5,
593
+ :T_VOID => 6,
594
+ :T_TRUE => 7,
595
+ :T_FALSE => 8,
596
+ :T_INTEGER => 9,
597
+ :T_FLOAT => 10,
598
+ :T_SELF => 11,
599
+ :T_OP_PLUS => 12,
600
+ :T_OP_MINUS => 13,
601
+ :T_OP_MULT => 14,
602
+ :T_OP_DIV => 15,
603
+ :T_OP_MOD => 16,
604
+ :T_OP_EXP => 17,
605
+ :T_OP_COMPARE => 18,
606
+ :T_OP_AND => 19,
607
+ :T_OP_OR => 20,
608
+ :T_OP_TOPROC => 21,
609
+ :T_DOT => 22,
610
+ :T_QUEST => 23,
611
+ :T_DEFINE => 24,
612
+ :T_CONST_SEP => 25,
613
+ :T_EXPR_SEP => 26,
614
+ :T_ARG_SEP => 27,
615
+ :T_SCOPE => 28,
616
+ :T_ASSIGN => 29,
617
+ :T_DECLARE_BEGIN => 30,
618
+ :T_DECLARE_END => 31,
619
+ :T_DECLSTR_BEGIN => 32,
620
+ :T_DECLSTR_END => 33,
621
+ :T_DECLSTR_BODY => 34,
622
+ :T_STRING_BEGIN => 35,
623
+ :T_STRING_END => 36,
624
+ :T_STRING_BODY => 37,
625
+ :T_SYMSTR_BEGIN => 38,
626
+ :T_SYMSTR_END => 39,
627
+ :T_SYMSTR_BODY => 40,
628
+ :T_DECLID_TAG => 41,
629
+ :T_DECLID_VALUE => 42,
630
+ :T_CATEGORY_BEGIN => 43,
631
+ :T_CATEGORY_END => 44,
632
+ :T_CATEGORY_BODY => 45,
633
+ :T_MEME_BEGIN => 46,
634
+ :T_MEME_END => 47,
635
+ :T_PARAMS_BEGIN => 48,
636
+ :T_PARAMS_END => 49,
637
+ :T_ARGS_BEGIN => 50,
638
+ :T_ARGS_END => 51,
639
+ :T_PAREN_BEGIN => 52,
640
+ :T_PAREN_END => 53,
641
+ :T_ARRAY_BEGIN => 54,
642
+ :T_ARRAY_END => 55,
643
+ :T_FILE_END => 56 }
644
+
645
+ racc_nt_base = 57
646
+
647
+ racc_use_result_var = false
648
+
649
+ Racc_arg = [
650
+ racc_action_table,
651
+ racc_action_check,
652
+ racc_action_default,
653
+ racc_action_pointer,
654
+ racc_goto_table,
655
+ racc_goto_check,
656
+ racc_goto_default,
657
+ racc_goto_pointer,
658
+ racc_nt_base,
659
+ racc_reduce_table,
660
+ racc_token_table,
661
+ racc_shift_n,
662
+ racc_reduce_n,
663
+ racc_use_result_var ]
664
+
665
+ Racc_token_to_s_table = [
666
+ "$end",
667
+ "error",
668
+ "T_CONSTANT",
669
+ "T_IDENTIFIER",
670
+ "T_SYMBOL",
671
+ "T_NULL",
672
+ "T_VOID",
673
+ "T_TRUE",
674
+ "T_FALSE",
675
+ "T_INTEGER",
676
+ "T_FLOAT",
677
+ "T_SELF",
678
+ "T_OP_PLUS",
679
+ "T_OP_MINUS",
680
+ "T_OP_MULT",
681
+ "T_OP_DIV",
682
+ "T_OP_MOD",
683
+ "T_OP_EXP",
684
+ "T_OP_COMPARE",
685
+ "T_OP_AND",
686
+ "T_OP_OR",
687
+ "T_OP_TOPROC",
688
+ "T_DOT",
689
+ "T_QUEST",
690
+ "T_DEFINE",
691
+ "T_CONST_SEP",
692
+ "T_EXPR_SEP",
693
+ "T_ARG_SEP",
694
+ "T_SCOPE",
695
+ "T_ASSIGN",
696
+ "T_DECLARE_BEGIN",
697
+ "T_DECLARE_END",
698
+ "T_DECLSTR_BEGIN",
699
+ "T_DECLSTR_END",
700
+ "T_DECLSTR_BODY",
701
+ "T_STRING_BEGIN",
702
+ "T_STRING_END",
703
+ "T_STRING_BODY",
704
+ "T_SYMSTR_BEGIN",
705
+ "T_SYMSTR_END",
706
+ "T_SYMSTR_BODY",
707
+ "T_DECLID_TAG",
708
+ "T_DECLID_VALUE",
709
+ "T_CATEGORY_BEGIN",
710
+ "T_CATEGORY_END",
711
+ "T_CATEGORY_BODY",
712
+ "T_MEME_BEGIN",
713
+ "T_MEME_END",
714
+ "T_PARAMS_BEGIN",
715
+ "T_PARAMS_END",
716
+ "T_ARGS_BEGIN",
717
+ "T_ARGS_END",
718
+ "T_PAREN_BEGIN",
719
+ "T_PAREN_END",
720
+ "T_ARRAY_BEGIN",
721
+ "T_ARRAY_END",
722
+ "T_FILE_END",
723
+ "$start",
724
+ "main",
725
+ "declobj_expr_body",
726
+ "declobj_expr",
727
+ "cdefn",
728
+ "cmeme",
729
+ "meme",
730
+ "deco",
731
+ "declobj",
732
+ "declstr",
733
+ "declid",
734
+ "category",
735
+ "constant",
736
+ "meme_expr",
737
+ "arg_expr",
738
+ "arg_expr_atom",
739
+ "two_term_expr",
740
+ "assignment",
741
+ "nest_assignment",
742
+ "quest_self",
743
+ "lit_string",
744
+ "lit_symstr",
745
+ "dyn_string",
746
+ "dyn_symstr",
747
+ "paren_expr",
748
+ "call",
749
+ "quest",
750
+ "id_as_lambig",
751
+ "lit_null",
752
+ "lit_void",
753
+ "lit_true",
754
+ "lit_false",
755
+ "lit_integer",
756
+ "lit_float",
757
+ "lit_symbol",
758
+ "lit_array",
759
+ "lit_self",
760
+ "@1",
761
+ "lit_string_as_symbol",
762
+ "@2",
763
+ "dyn_string_part",
764
+ "dyn_string_parts",
765
+ "constant_list_",
766
+ "constant_list",
767
+ "id_as_symbol",
768
+ "nest_call",
769
+ "call_with_args",
770
+ "nest_call_with_args",
771
+ "call_iter",
772
+ "nest_call_iter",
773
+ "arg_list",
774
+ "call_iter_body",
775
+ "meme_expr_body",
776
+ "param_list",
777
+ "questable",
778
+ "arg_to_proc",
779
+ "arg_splat",
780
+ "in_arg_expr",
781
+ "in_arg_sepd_expr",
782
+ "in_arg_sepd_exprs",
783
+ "arg_list_",
784
+ "param",
785
+ "param_sepd",
786
+ "param_sepds",
787
+ "param_list_",
788
+ "lit_array_",
789
+ "declobj_sepd_expr",
790
+ "declobj_sepd_exprs",
791
+ "declstr_body",
792
+ "meme_sepd_expr",
793
+ "meme_sepd_exprs",
794
+ "paren_expr_body",
795
+ "meme_name",
796
+ "deco_able" ]
797
+
798
+ Racc_debug_parser = true
799
+
800
+ ##### State transition tables end #####
801
+
802
+ # reduce 0 omitted
803
+
804
+ module_eval(<<'.,.,', 'builder.racc', 40)
805
+ def _reduce_1(val, _values)
806
+ ast(:declfile, val[0], val[0])
807
+ end
808
+ .,.,
809
+
810
+ # reduce 2 omitted
811
+
812
+ # reduce 3 omitted
813
+
814
+ # reduce 4 omitted
815
+
816
+ # reduce 5 omitted
817
+
818
+ # reduce 6 omitted
819
+
820
+ # reduce 7 omitted
821
+
822
+ # reduce 8 omitted
823
+
824
+ # reduce 9 omitted
825
+
826
+ # reduce 10 omitted
827
+
828
+ # reduce 11 omitted
829
+
830
+ # reduce 12 omitted
831
+
832
+ # reduce 13 omitted
833
+
834
+ # reduce 14 omitted
835
+
836
+ # reduce 15 omitted
837
+
838
+ # reduce 16 omitted
839
+
840
+ # reduce 17 omitted
841
+
842
+ # reduce 18 omitted
843
+
844
+ # reduce 19 omitted
845
+
846
+ # reduce 20 omitted
847
+
848
+ # reduce 21 omitted
849
+
850
+ # reduce 22 omitted
851
+
852
+ # reduce 23 omitted
853
+
854
+ # reduce 24 omitted
855
+
856
+ # reduce 25 omitted
857
+
858
+ # reduce 26 omitted
859
+
860
+ # reduce 27 omitted
861
+
862
+ # reduce 28 omitted
863
+
864
+ # reduce 29 omitted
865
+
866
+ # reduce 30 omitted
867
+
868
+ # reduce 31 omitted
869
+
870
+ # reduce 32 omitted
871
+
872
+ # reduce 33 omitted
873
+
874
+ # reduce 34 omitted
875
+
876
+ # reduce 35 omitted
877
+
878
+ # reduce 36 omitted
879
+
880
+ module_eval(<<'.,.,', 'builder.racc', 99)
881
+ def _reduce_37(val, _values)
882
+ ast(:null, val[0])
883
+ end
884
+ .,.,
885
+
886
+ module_eval(<<'.,.,', 'builder.racc', 103)
887
+ def _reduce_38(val, _values)
888
+ ast(:void, val[0])
889
+ end
890
+ .,.,
891
+
892
+ module_eval(<<'.,.,', 'builder.racc', 107)
893
+ def _reduce_39(val, _values)
894
+ ast(:true, val[0])
895
+ end
896
+ .,.,
897
+
898
+ module_eval(<<'.,.,', 'builder.racc', 111)
899
+ def _reduce_40(val, _values)
900
+ ast(:false, val[0])
901
+ end
902
+ .,.,
903
+
904
+ module_eval(<<'.,.,', 'builder.racc', 115)
905
+ def _reduce_41(val, _values)
906
+ ast(:lit, val[0], Integer(val[0][1]))
907
+ end
908
+ .,.,
909
+
910
+ module_eval(<<'.,.,', 'builder.racc', 119)
911
+ def _reduce_42(val, _values)
912
+ ast(:lit, val[0], Float(val[0][1]))
913
+ end
914
+ .,.,
915
+
916
+ module_eval(<<'.,.,', 'builder.racc', 123)
917
+ def _reduce_43(val, _values)
918
+ ast(:lit, val[0], val[0][1].to_sym)
919
+ end
920
+ .,.,
921
+
922
+ module_eval(<<'.,.,', 'builder.racc', 127)
923
+ def _reduce_44(val, _values)
924
+ val[1]
925
+ end
926
+ .,.,
927
+
928
+ module_eval(<<'.,.,', 'builder.racc', 128)
929
+ def _reduce_45(val, _values)
930
+ ast(:lit, val[1], encode_escapes(val[1][1]))
931
+ end
932
+ .,.,
933
+
934
+ module_eval(<<'.,.,', 'builder.racc', 132)
935
+ def _reduce_46(val, _values)
936
+ val[1]
937
+ end
938
+ .,.,
939
+
940
+ module_eval(<<'.,.,', 'builder.racc', 133)
941
+ def _reduce_47(val, _values)
942
+ ast(:lit, val[1], encode_escapes(val[1][1]).to_sym)
943
+ end
944
+ .,.,
945
+
946
+ module_eval(<<'.,.,', 'builder.racc', 138)
947
+ def _reduce_48(val, _values)
948
+ ast(:lit, val[1], encode_escapes(val[1][1]).to_sym)
949
+ end
950
+ .,.,
951
+
952
+ module_eval(<<'.,.,', 'builder.racc', 142)
953
+ def _reduce_49(val, _values)
954
+ ast(:self, val[0])
955
+ end
956
+ .,.,
957
+
958
+ module_eval(<<'.,.,', 'builder.racc', 149)
959
+ def _reduce_50(val, _values)
960
+ [ast(:evstr, val[0], val[0]), val[1]]
961
+ end
962
+ .,.,
963
+
964
+ module_eval(<<'.,.,', 'builder.racc', 153)
965
+ def _reduce_51(val, _values)
966
+ [*val[0], *val[1]]
967
+ end
968
+ .,.,
969
+
970
+ module_eval(<<'.,.,', 'builder.racc', 154)
971
+ def _reduce_52(val, _values)
972
+ val[0]
973
+ end
974
+ .,.,
975
+
976
+ module_eval(<<'.,.,', 'builder.racc', 158)
977
+ def _reduce_53(val, _values)
978
+ ast(:dstr, val[0], val[0].value, val[1])
979
+ end
980
+ .,.,
981
+
982
+ module_eval(<<'.,.,', 'builder.racc', 162)
983
+ def _reduce_54(val, _values)
984
+ ast(:dsym, val[0], val[0].value.to_s, val[1])
985
+ end
986
+ .,.,
987
+
988
+ module_eval(<<'.,.,', 'builder.racc', 169)
989
+ def _reduce_55(val, _values)
990
+ ast(:colon2, val[1], val[0], val[2][1].to_sym)
991
+ end
992
+ .,.,
993
+
994
+ module_eval(<<'.,.,', 'builder.racc', 170)
995
+ def _reduce_56(val, _values)
996
+ ast(:colon3, val[0], val[1][1].to_sym)
997
+ end
998
+ .,.,
999
+
1000
+ module_eval(<<'.,.,', 'builder.racc', 171)
1001
+ def _reduce_57(val, _values)
1002
+ ast(:const, val[0], val[0][1].to_sym)
1003
+ end
1004
+ .,.,
1005
+
1006
+ module_eval(<<'.,.,', 'builder.racc', 175)
1007
+ def _reduce_58(val, _values)
1008
+ [*val[0], val[2]]
1009
+ end
1010
+ .,.,
1011
+
1012
+ module_eval(<<'.,.,', 'builder.racc', 176)
1013
+ def _reduce_59(val, _values)
1014
+ val
1015
+ end
1016
+ .,.,
1017
+
1018
+ module_eval(<<'.,.,', 'builder.racc', 181)
1019
+ def _reduce_60(val, _values)
1020
+ ast(:array, val[0][0], val[0])
1021
+ end
1022
+ .,.,
1023
+
1024
+ module_eval(<<'.,.,', 'builder.racc', 189)
1025
+ def _reduce_61(val, _values)
1026
+ ast(:lit, val[0], val[0][1].to_sym)
1027
+ end
1028
+ .,.,
1029
+
1030
+ module_eval(<<'.,.,', 'builder.racc', 194)
1031
+ def _reduce_62(val, _values)
1032
+ ast(:lambig, val[0], val[0][1].to_sym)
1033
+ end
1034
+ .,.,
1035
+
1036
+ module_eval(<<'.,.,', 'builder.racc', 202)
1037
+ def _reduce_63(val, _values)
1038
+ ast(:lasgn, val[1], val[0][1].to_sym, val[2])
1039
+ end
1040
+ .,.,
1041
+
1042
+ module_eval(<<'.,.,', 'builder.racc', 207)
1043
+ def _reduce_64(val, _values)
1044
+ ast(:call, val[3], val[0], :"#{val[2][1]}=", ast(:array, val[4], [val[4]]))
1045
+ end
1046
+ .,.,
1047
+
1048
+ # reduce 65 omitted
1049
+
1050
+ # reduce 66 omitted
1051
+
1052
+ # reduce 67 omitted
1053
+
1054
+ # reduce 68 omitted
1055
+
1056
+ # reduce 69 omitted
1057
+
1058
+ module_eval(<<'.,.,', 'builder.racc', 224)
1059
+ def _reduce_70(val, _values)
1060
+ ast(:call, val[2], val[0], val[2][1].to_sym, ast(:array, val[2], []))
1061
+ end
1062
+ .,.,
1063
+
1064
+ module_eval(<<'.,.,', 'builder.racc', 229)
1065
+ def _reduce_71(val, _values)
1066
+ ast(:call, val[1], ast(:self, val[0]), val[0][1].to_sym, val[1])
1067
+ end
1068
+ .,.,
1069
+
1070
+ module_eval(<<'.,.,', 'builder.racc', 234)
1071
+ def _reduce_72(val, _values)
1072
+ ast(:call, val[3], val[0], val[2][1].to_sym, val[3])
1073
+ end
1074
+ .,.,
1075
+
1076
+ module_eval(<<'.,.,', 'builder.racc', 239)
1077
+ def _reduce_73(val, _values)
1078
+ ast(:scope, val[0], nil, val[1], nil)
1079
+ end
1080
+ .,.,
1081
+
1082
+ module_eval(<<'.,.,', 'builder.racc', 241)
1083
+ def _reduce_74(val, _values)
1084
+ ast(:scope, val[1], val[0], val[2], nil)
1085
+ end
1086
+ .,.,
1087
+
1088
+ module_eval(<<'.,.,', 'builder.racc', 246)
1089
+ def _reduce_75(val, _values)
1090
+ ast(:iter, val[0], ast(:call, val[0], ast(:self, val[0]), val[0][1].to_sym, nil), val[1])
1091
+ end
1092
+ .,.,
1093
+
1094
+ module_eval(<<'.,.,', 'builder.racc', 248)
1095
+ def _reduce_76(val, _values)
1096
+ ast(:iter, val[0], ast(:call, val[0], ast(:self, val[0]), val[0][1].to_sym, val[1]), val[2])
1097
+ end
1098
+ .,.,
1099
+
1100
+ module_eval(<<'.,.,', 'builder.racc', 253)
1101
+ def _reduce_77(val, _values)
1102
+ ast(:iter, val[2], ast(:call, val[2], val[0], val[2][1].to_sym, nil), val[3])
1103
+ end
1104
+ .,.,
1105
+
1106
+ module_eval(<<'.,.,', 'builder.racc', 255)
1107
+ def _reduce_78(val, _values)
1108
+ ast(:iter, val[2], ast(:call, val[2], val[0], val[2][1].to_sym, val[3]), val[4])
1109
+ end
1110
+ .,.,
1111
+
1112
+ module_eval(<<'.,.,', 'builder.racc', 263)
1113
+ def _reduce_79(val, _values)
1114
+ ast(:quest, val[0], ast(:self, val[0]), ast(:call, val[0], ast(:self, val[0]), val[0][1].to_sym, nil))
1115
+ end
1116
+ .,.,
1117
+
1118
+ module_eval(<<'.,.,', 'builder.racc', 265)
1119
+ def _reduce_80(val, _values)
1120
+ ast(:quest, val[0], ast(:self, val[0]), val[0])
1121
+ end
1122
+ .,.,
1123
+
1124
+ module_eval(<<'.,.,', 'builder.racc', 267)
1125
+ def _reduce_81(val, _values)
1126
+ ast(:quest, val[0], ast(:self, val[0]), val[0])
1127
+ end
1128
+ .,.,
1129
+
1130
+ module_eval(<<'.,.,', 'builder.racc', 271)
1131
+ def _reduce_82(val, _values)
1132
+ val[1]
1133
+ end
1134
+ .,.,
1135
+
1136
+ module_eval(<<'.,.,', 'builder.racc', 275)
1137
+ def _reduce_83(val, _values)
1138
+ val[2].receiver = val[0]; val[2]
1139
+ end
1140
+ .,.,
1141
+
1142
+ module_eval(<<'.,.,', 'builder.racc', 282)
1143
+ def _reduce_84(val, _values)
1144
+ ast(:block_pass, val[0], nil, val[1])
1145
+ end
1146
+ .,.,
1147
+
1148
+ module_eval(<<'.,.,', 'builder.racc', 286)
1149
+ def _reduce_85(val, _values)
1150
+ ast(:splat, val[0], val[1])
1151
+ end
1152
+ .,.,
1153
+
1154
+ # reduce 86 omitted
1155
+
1156
+ # reduce 87 omitted
1157
+
1158
+ # reduce 88 omitted
1159
+
1160
+ module_eval(<<'.,.,', 'builder.racc', 296)
1161
+ def _reduce_89(val, _values)
1162
+ nil
1163
+ end
1164
+ .,.,
1165
+
1166
+ module_eval(<<'.,.,', 'builder.racc', 297)
1167
+ def _reduce_90(val, _values)
1168
+ val[1]
1169
+ end
1170
+ .,.,
1171
+
1172
+ module_eval(<<'.,.,', 'builder.racc', 301)
1173
+ def _reduce_91(val, _values)
1174
+ [*val[0], val[1]].compact
1175
+ end
1176
+ .,.,
1177
+
1178
+ module_eval(<<'.,.,', 'builder.racc', 302)
1179
+ def _reduce_92(val, _values)
1180
+ val.compact
1181
+ end
1182
+ .,.,
1183
+
1184
+ module_eval(<<'.,.,', 'builder.racc', 306)
1185
+ def _reduce_93(val, _values)
1186
+ ast(:array, val[0], [val[0], *val[1]])
1187
+ end
1188
+ .,.,
1189
+
1190
+ module_eval(<<'.,.,', 'builder.racc', 307)
1191
+ def _reduce_94(val, _values)
1192
+ val[0].empty? ? ast(:null, val[1]) : ast(:array, val[0][0], val[0])
1193
+ end
1194
+ .,.,
1195
+
1196
+ module_eval(<<'.,.,', 'builder.racc', 308)
1197
+ def _reduce_95(val, _values)
1198
+ ast(:array, val[0], [val[0]])
1199
+ end
1200
+ .,.,
1201
+
1202
+ module_eval(<<'.,.,', 'builder.racc', 309)
1203
+ def _reduce_96(val, _values)
1204
+ ast(:array, val[0], [])
1205
+ end
1206
+ .,.,
1207
+
1208
+ module_eval(<<'.,.,', 'builder.racc', 313)
1209
+ def _reduce_97(val, _values)
1210
+ args_assemble(val[0], val[1])
1211
+ end
1212
+ .,.,
1213
+
1214
+ module_eval(<<'.,.,', 'builder.racc', 321)
1215
+ def _reduce_98(val, _values)
1216
+ [:required, val[0][1].to_sym]
1217
+ end
1218
+ .,.,
1219
+
1220
+ module_eval(<<'.,.,', 'builder.racc', 323)
1221
+ def _reduce_99(val, _values)
1222
+ [:optional, ast(:lasgn, val[1], val[0][1].to_sym, val[2])]
1223
+ end
1224
+ .,.,
1225
+
1226
+ module_eval(<<'.,.,', 'builder.racc', 325)
1227
+ def _reduce_100(val, _values)
1228
+ [:rest, val[1][1].to_sym]
1229
+ end
1230
+ .,.,
1231
+
1232
+ module_eval(<<'.,.,', 'builder.racc', 327)
1233
+ def _reduce_101(val, _values)
1234
+ [:block, val[1][1].to_sym]
1235
+ end
1236
+ .,.,
1237
+
1238
+ module_eval(<<'.,.,', 'builder.racc', 331)
1239
+ def _reduce_102(val, _values)
1240
+ val[1]
1241
+ end
1242
+ .,.,
1243
+
1244
+ module_eval(<<'.,.,', 'builder.racc', 332)
1245
+ def _reduce_103(val, _values)
1246
+ nil
1247
+ end
1248
+ .,.,
1249
+
1250
+ module_eval(<<'.,.,', 'builder.racc', 336)
1251
+ def _reduce_104(val, _values)
1252
+ [*val[0], val[1]].compact
1253
+ end
1254
+ .,.,
1255
+
1256
+ module_eval(<<'.,.,', 'builder.racc', 337)
1257
+ def _reduce_105(val, _values)
1258
+ val.compact
1259
+ end
1260
+ .,.,
1261
+
1262
+ module_eval(<<'.,.,', 'builder.racc', 341)
1263
+ def _reduce_106(val, _values)
1264
+ [val[0], *val[1]]
1265
+ end
1266
+ .,.,
1267
+
1268
+ module_eval(<<'.,.,', 'builder.racc', 342)
1269
+ def _reduce_107(val, _values)
1270
+ val[0]
1271
+ end
1272
+ .,.,
1273
+
1274
+ module_eval(<<'.,.,', 'builder.racc', 343)
1275
+ def _reduce_108(val, _values)
1276
+ [val[0]]
1277
+ end
1278
+ .,.,
1279
+
1280
+ module_eval(<<'.,.,', 'builder.racc', 344)
1281
+ def _reduce_109(val, _values)
1282
+ []
1283
+ end
1284
+ .,.,
1285
+
1286
+ module_eval(<<'.,.,', 'builder.racc', 350)
1287
+ def _reduce_110(val, _values)
1288
+ required, optional, rest, block = 4.times.map { Array.new }
1289
+
1290
+ required << val[1].shift[1] while val[1][0] && val[1][0][0] == :required
1291
+ optional << val[1].shift[1] while val[1][0] && val[1][0][0] == :optional
1292
+ optional = optional.empty? ? nil : ast(:block, val[0], optional)
1293
+ rest << val[1].shift[1] while val[1][0] && val[1][0][0] == :rest
1294
+ block << val[1].shift[1] while val[1][0] && val[1][0][0] == :block
1295
+
1296
+ ast(:args, val[0], required, optional, rest.first, nil, nil, nil, block.first)
1297
+
1298
+ end
1299
+ .,.,
1300
+
1301
+ module_eval(<<'.,.,', 'builder.racc', 366)
1302
+ def _reduce_111(val, _values)
1303
+ ast(:array, val[0], [val[0], *val[1]])
1304
+ end
1305
+ .,.,
1306
+
1307
+ module_eval(<<'.,.,', 'builder.racc', 367)
1308
+ def _reduce_112(val, _values)
1309
+ val[0].empty? ? ast(:null, val[1]) : ast(:array, val[0][0], val[0])
1310
+ end
1311
+ .,.,
1312
+
1313
+ module_eval(<<'.,.,', 'builder.racc', 368)
1314
+ def _reduce_113(val, _values)
1315
+ ast(:array, val[0], [val[0]])
1316
+ end
1317
+ .,.,
1318
+
1319
+ module_eval(<<'.,.,', 'builder.racc', 369)
1320
+ def _reduce_114(val, _values)
1321
+ ast(:array, val[0], [])
1322
+ end
1323
+ .,.,
1324
+
1325
+ module_eval(<<'.,.,', 'builder.racc', 373)
1326
+ def _reduce_115(val, _values)
1327
+ args_assemble(val[0], val[1])
1328
+ end
1329
+ .,.,
1330
+
1331
+ module_eval(<<'.,.,', 'builder.racc', 381)
1332
+ def _reduce_116(val, _values)
1333
+ ast(:call, val[1], val[0], :'+', ast(:array, val[2], [val[2]]))
1334
+ end
1335
+ .,.,
1336
+
1337
+ module_eval(<<'.,.,', 'builder.racc', 383)
1338
+ def _reduce_117(val, _values)
1339
+ ast(:call, val[1], val[0], :'-', ast(:array, val[2], [val[2]]))
1340
+ end
1341
+ .,.,
1342
+
1343
+ module_eval(<<'.,.,', 'builder.racc', 385)
1344
+ def _reduce_118(val, _values)
1345
+ ast(:call, val[1], val[0], :'*', ast(:array, val[2], [val[2]]))
1346
+ end
1347
+ .,.,
1348
+
1349
+ module_eval(<<'.,.,', 'builder.racc', 387)
1350
+ def _reduce_119(val, _values)
1351
+ ast(:call, val[1], val[0], :'/', ast(:array, val[2], [val[2]]))
1352
+ end
1353
+ .,.,
1354
+
1355
+ module_eval(<<'.,.,', 'builder.racc', 389)
1356
+ def _reduce_120(val, _values)
1357
+ ast(:call, val[1], val[0], :'%', ast(:array, val[2], [val[2]]))
1358
+ end
1359
+ .,.,
1360
+
1361
+ module_eval(<<'.,.,', 'builder.racc', 391)
1362
+ def _reduce_121(val, _values)
1363
+ ast(:call, val[1], val[0], :'**', ast(:array, val[2], [val[2]]))
1364
+ end
1365
+ .,.,
1366
+
1367
+ module_eval(<<'.,.,', 'builder.racc', 393)
1368
+ def _reduce_122(val, _values)
1369
+ ast(:call, val[1], val[0], val[1][1].to_sym, ast(:array, val[2], [val[2]]))
1370
+ end
1371
+ .,.,
1372
+
1373
+ module_eval(<<'.,.,', 'builder.racc', 395)
1374
+ def _reduce_123(val, _values)
1375
+ ast(:and, val[1], val[0], val[2])
1376
+ end
1377
+ .,.,
1378
+
1379
+ module_eval(<<'.,.,', 'builder.racc', 397)
1380
+ def _reduce_124(val, _values)
1381
+ ast(:or, val[1], val[0], val[2])
1382
+ end
1383
+ .,.,
1384
+
1385
+ module_eval(<<'.,.,', 'builder.racc', 404)
1386
+ def _reduce_125(val, _values)
1387
+ val[1]
1388
+ end
1389
+ .,.,
1390
+
1391
+ module_eval(<<'.,.,', 'builder.racc', 405)
1392
+ def _reduce_126(val, _values)
1393
+ nil
1394
+ end
1395
+ .,.,
1396
+
1397
+ module_eval(<<'.,.,', 'builder.racc', 409)
1398
+ def _reduce_127(val, _values)
1399
+ [*val[0], val[1]].compact
1400
+ end
1401
+ .,.,
1402
+
1403
+ module_eval(<<'.,.,', 'builder.racc', 410)
1404
+ def _reduce_128(val, _values)
1405
+ val.compact
1406
+ end
1407
+ .,.,
1408
+
1409
+ module_eval(<<'.,.,', 'builder.racc', 414)
1410
+ def _reduce_129(val, _values)
1411
+ ast(:block, val[0], [val[0], *val[1]])
1412
+ end
1413
+ .,.,
1414
+
1415
+ module_eval(<<'.,.,', 'builder.racc', 415)
1416
+ def _reduce_130(val, _values)
1417
+ val[0].empty? ? ast(:null, val[1]) : ast(:block, val[0][0], val[0])
1418
+ end
1419
+ .,.,
1420
+
1421
+ module_eval(<<'.,.,', 'builder.racc', 416)
1422
+ def _reduce_131(val, _values)
1423
+ ast(:block, val[0], [val[0]])
1424
+ end
1425
+ .,.,
1426
+
1427
+ module_eval(<<'.,.,', 'builder.racc', 417)
1428
+ def _reduce_132(val, _values)
1429
+ ast(:null, val[0])
1430
+ end
1431
+ .,.,
1432
+
1433
+ module_eval(<<'.,.,', 'builder.racc', 422)
1434
+ def _reduce_133(val, _values)
1435
+ ast(:declobj, val[1], val[0], val[2])
1436
+ end
1437
+ .,.,
1438
+
1439
+ module_eval(<<'.,.,', 'builder.racc', 427)
1440
+ def _reduce_134(val, _values)
1441
+ ast(:cdefn, val[1], val[0], val[2])
1442
+ end
1443
+ .,.,
1444
+
1445
+ module_eval(<<'.,.,', 'builder.racc', 435)
1446
+ def _reduce_135(val, _values)
1447
+ ast(:str, val[0], val[0][1])
1448
+ end
1449
+ .,.,
1450
+
1451
+ module_eval(<<'.,.,', 'builder.racc', 440)
1452
+ def _reduce_136(val, _values)
1453
+ ast(:declstr, val[1], val[0], val[2])
1454
+ end
1455
+ .,.,
1456
+
1457
+ module_eval(<<'.,.,', 'builder.racc', 447)
1458
+ def _reduce_137(val, _values)
1459
+ val[1]
1460
+ end
1461
+ .,.,
1462
+
1463
+ module_eval(<<'.,.,', 'builder.racc', 448)
1464
+ def _reduce_138(val, _values)
1465
+ nil
1466
+ end
1467
+ .,.,
1468
+
1469
+ module_eval(<<'.,.,', 'builder.racc', 452)
1470
+ def _reduce_139(val, _values)
1471
+ [*val[0], val[1]].compact
1472
+ end
1473
+ .,.,
1474
+
1475
+ module_eval(<<'.,.,', 'builder.racc', 453)
1476
+ def _reduce_140(val, _values)
1477
+ val.compact
1478
+ end
1479
+ .,.,
1480
+
1481
+ module_eval(<<'.,.,', 'builder.racc', 457)
1482
+ def _reduce_141(val, _values)
1483
+ ast(:block, val[0], [val[0], *val[1]])
1484
+ end
1485
+ .,.,
1486
+
1487
+ module_eval(<<'.,.,', 'builder.racc', 458)
1488
+ def _reduce_142(val, _values)
1489
+ val[0].empty? ? ast(:null, val[1]) : ast(:block, val[0][0], val[0])
1490
+ end
1491
+ .,.,
1492
+
1493
+ module_eval(<<'.,.,', 'builder.racc', 459)
1494
+ def _reduce_143(val, _values)
1495
+ ast(:block, val[0], [val[0]])
1496
+ end
1497
+ .,.,
1498
+
1499
+ module_eval(<<'.,.,', 'builder.racc', 460)
1500
+ def _reduce_144(val, _values)
1501
+ ast(:null, val[0])
1502
+ end
1503
+ .,.,
1504
+
1505
+ module_eval(<<'.,.,', 'builder.racc', 464)
1506
+ def _reduce_145(val, _values)
1507
+ ast(:block, val[0], [val[0], *val[1]])
1508
+ end
1509
+ .,.,
1510
+
1511
+ module_eval(<<'.,.,', 'builder.racc', 465)
1512
+ def _reduce_146(val, _values)
1513
+ val[0].empty? ? ast(:null, val[1]) : ast(:block, val[0][0], val[0])
1514
+ end
1515
+ .,.,
1516
+
1517
+ module_eval(<<'.,.,', 'builder.racc', 466)
1518
+ def _reduce_147(val, _values)
1519
+ val[0]
1520
+ end
1521
+ .,.,
1522
+
1523
+ module_eval(<<'.,.,', 'builder.racc', 467)
1524
+ def _reduce_148(val, _values)
1525
+ ast(:null, val[0])
1526
+ end
1527
+ .,.,
1528
+
1529
+ module_eval(<<'.,.,', 'builder.racc', 471)
1530
+ def _reduce_149(val, _values)
1531
+ val[1]
1532
+ end
1533
+ .,.,
1534
+
1535
+ module_eval(<<'.,.,', 'builder.racc', 476)
1536
+ def _reduce_150(val, _values)
1537
+ ast(:cdecl, val[1], val[0], val[2])
1538
+ end
1539
+ .,.,
1540
+
1541
+ # reduce 151 omitted
1542
+
1543
+ # reduce 152 omitted
1544
+
1545
+ module_eval(<<'.,.,', 'builder.racc', 486)
1546
+ def _reduce_153(val, _values)
1547
+ ast(:meme, val[1], val[0], nil, val[1], val[3])
1548
+ end
1549
+ .,.,
1550
+
1551
+ module_eval(<<'.,.,', 'builder.racc', 488)
1552
+ def _reduce_154(val, _values)
1553
+ ast(:meme, val[1], val[0], nil, nil, val[2])
1554
+ end
1555
+ .,.,
1556
+
1557
+ module_eval(<<'.,.,', 'builder.racc', 490)
1558
+ def _reduce_155(val, _values)
1559
+ ast(:meme, val[0], val[0], nil, nil, nil)
1560
+ end
1561
+ .,.,
1562
+
1563
+ # reduce 156 omitted
1564
+
1565
+ # reduce 157 omitted
1566
+
1567
+ module_eval(<<'.,.,', 'builder.racc', 501)
1568
+ def _reduce_158(val, _values)
1569
+ val[1].decorations.body.push ast(:lit, val[0], val[0][1].to_sym)
1570
+ val[1]
1571
+
1572
+ end
1573
+ .,.,
1574
+
1575
+ module_eval(<<'.,.,', 'builder.racc', 508)
1576
+ def _reduce_159(val, _values)
1577
+ ast(:declid, val[0], ast(:lit, val[1], val[1][1].to_sym))
1578
+ end
1579
+ .,.,
1580
+
1581
+ module_eval(<<'.,.,', 'builder.racc', 513)
1582
+ def _reduce_160(val, _values)
1583
+ ast(:category, val[0], ast(:lit, val[1], val[1][1].to_sym))
1584
+ end
1585
+ .,.,
1586
+
1587
+ def _reduce_none(val, _values)
1588
+ val[0]
1589
+ end
1590
+
1591
+ end # class Builder
1592
+ end # module CodeTools