myco 0.1.0.dev

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.
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