ed-precompiled_prism 1.5.2-arm64-darwin

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 (159) hide show
  1. checksums.yaml +7 -0
  2. data/BSDmakefile +58 -0
  3. data/CHANGELOG.md +723 -0
  4. data/CODE_OF_CONDUCT.md +76 -0
  5. data/CONTRIBUTING.md +58 -0
  6. data/LICENSE.md +7 -0
  7. data/Makefile +110 -0
  8. data/README.md +143 -0
  9. data/config.yml +4714 -0
  10. data/docs/build_system.md +119 -0
  11. data/docs/configuration.md +68 -0
  12. data/docs/cruby_compilation.md +27 -0
  13. data/docs/design.md +53 -0
  14. data/docs/encoding.md +121 -0
  15. data/docs/fuzzing.md +88 -0
  16. data/docs/heredocs.md +36 -0
  17. data/docs/javascript.md +118 -0
  18. data/docs/local_variable_depth.md +229 -0
  19. data/docs/mapping.md +117 -0
  20. data/docs/parser_translation.md +24 -0
  21. data/docs/parsing_rules.md +22 -0
  22. data/docs/releasing.md +98 -0
  23. data/docs/relocation.md +34 -0
  24. data/docs/ripper_translation.md +72 -0
  25. data/docs/ruby_api.md +44 -0
  26. data/docs/ruby_parser_translation.md +19 -0
  27. data/docs/serialization.md +233 -0
  28. data/docs/testing.md +55 -0
  29. data/ext/prism/api_node.c +6941 -0
  30. data/ext/prism/api_pack.c +276 -0
  31. data/ext/prism/extconf.rb +127 -0
  32. data/ext/prism/extension.c +1419 -0
  33. data/ext/prism/extension.h +19 -0
  34. data/include/prism/ast.h +8220 -0
  35. data/include/prism/defines.h +260 -0
  36. data/include/prism/diagnostic.h +456 -0
  37. data/include/prism/encoding.h +283 -0
  38. data/include/prism/node.h +129 -0
  39. data/include/prism/options.h +482 -0
  40. data/include/prism/pack.h +163 -0
  41. data/include/prism/parser.h +933 -0
  42. data/include/prism/prettyprint.h +34 -0
  43. data/include/prism/regexp.h +43 -0
  44. data/include/prism/static_literals.h +121 -0
  45. data/include/prism/util/pm_buffer.h +236 -0
  46. data/include/prism/util/pm_char.h +204 -0
  47. data/include/prism/util/pm_constant_pool.h +218 -0
  48. data/include/prism/util/pm_integer.h +130 -0
  49. data/include/prism/util/pm_list.h +103 -0
  50. data/include/prism/util/pm_memchr.h +29 -0
  51. data/include/prism/util/pm_newline_list.h +113 -0
  52. data/include/prism/util/pm_string.h +200 -0
  53. data/include/prism/util/pm_strncasecmp.h +32 -0
  54. data/include/prism/util/pm_strpbrk.h +46 -0
  55. data/include/prism/version.h +29 -0
  56. data/include/prism.h +408 -0
  57. data/lib/prism/3.0/prism.bundle +0 -0
  58. data/lib/prism/3.1/prism.bundle +0 -0
  59. data/lib/prism/3.2/prism.bundle +0 -0
  60. data/lib/prism/3.3/prism.bundle +0 -0
  61. data/lib/prism/3.4/prism.bundle +0 -0
  62. data/lib/prism/compiler.rb +801 -0
  63. data/lib/prism/desugar_compiler.rb +392 -0
  64. data/lib/prism/dispatcher.rb +2210 -0
  65. data/lib/prism/dot_visitor.rb +4762 -0
  66. data/lib/prism/dsl.rb +1003 -0
  67. data/lib/prism/ffi.rb +570 -0
  68. data/lib/prism/inspect_visitor.rb +2392 -0
  69. data/lib/prism/lex_compat.rb +928 -0
  70. data/lib/prism/mutation_compiler.rb +772 -0
  71. data/lib/prism/node.rb +18816 -0
  72. data/lib/prism/node_ext.rb +511 -0
  73. data/lib/prism/pack.rb +230 -0
  74. data/lib/prism/parse_result/comments.rb +188 -0
  75. data/lib/prism/parse_result/errors.rb +66 -0
  76. data/lib/prism/parse_result/newlines.rb +155 -0
  77. data/lib/prism/parse_result.rb +911 -0
  78. data/lib/prism/pattern.rb +269 -0
  79. data/lib/prism/polyfill/append_as_bytes.rb +15 -0
  80. data/lib/prism/polyfill/byteindex.rb +13 -0
  81. data/lib/prism/polyfill/scan_byte.rb +14 -0
  82. data/lib/prism/polyfill/unpack1.rb +14 -0
  83. data/lib/prism/polyfill/warn.rb +36 -0
  84. data/lib/prism/reflection.rb +416 -0
  85. data/lib/prism/relocation.rb +505 -0
  86. data/lib/prism/serialize.rb +2398 -0
  87. data/lib/prism/string_query.rb +31 -0
  88. data/lib/prism/translation/parser/builder.rb +62 -0
  89. data/lib/prism/translation/parser/compiler.rb +2234 -0
  90. data/lib/prism/translation/parser/lexer.rb +820 -0
  91. data/lib/prism/translation/parser.rb +374 -0
  92. data/lib/prism/translation/parser33.rb +13 -0
  93. data/lib/prism/translation/parser34.rb +13 -0
  94. data/lib/prism/translation/parser35.rb +13 -0
  95. data/lib/prism/translation/parser_current.rb +24 -0
  96. data/lib/prism/translation/ripper/sexp.rb +126 -0
  97. data/lib/prism/translation/ripper/shim.rb +5 -0
  98. data/lib/prism/translation/ripper.rb +3474 -0
  99. data/lib/prism/translation/ruby_parser.rb +1929 -0
  100. data/lib/prism/translation.rb +16 -0
  101. data/lib/prism/visitor.rb +813 -0
  102. data/lib/prism.rb +97 -0
  103. data/prism.gemspec +174 -0
  104. data/rbi/prism/compiler.rbi +12 -0
  105. data/rbi/prism/dsl.rbi +524 -0
  106. data/rbi/prism/inspect_visitor.rbi +12 -0
  107. data/rbi/prism/node.rbi +8734 -0
  108. data/rbi/prism/node_ext.rbi +107 -0
  109. data/rbi/prism/parse_result.rbi +404 -0
  110. data/rbi/prism/reflection.rbi +58 -0
  111. data/rbi/prism/string_query.rbi +12 -0
  112. data/rbi/prism/translation/parser.rbi +11 -0
  113. data/rbi/prism/translation/parser33.rbi +6 -0
  114. data/rbi/prism/translation/parser34.rbi +6 -0
  115. data/rbi/prism/translation/parser35.rbi +6 -0
  116. data/rbi/prism/translation/ripper.rbi +15 -0
  117. data/rbi/prism/visitor.rbi +473 -0
  118. data/rbi/prism.rbi +66 -0
  119. data/sig/prism/compiler.rbs +9 -0
  120. data/sig/prism/dispatcher.rbs +19 -0
  121. data/sig/prism/dot_visitor.rbs +6 -0
  122. data/sig/prism/dsl.rbs +351 -0
  123. data/sig/prism/inspect_visitor.rbs +22 -0
  124. data/sig/prism/lex_compat.rbs +10 -0
  125. data/sig/prism/mutation_compiler.rbs +159 -0
  126. data/sig/prism/node.rbs +4028 -0
  127. data/sig/prism/node_ext.rbs +149 -0
  128. data/sig/prism/pack.rbs +43 -0
  129. data/sig/prism/parse_result/comments.rbs +38 -0
  130. data/sig/prism/parse_result.rbs +196 -0
  131. data/sig/prism/pattern.rbs +13 -0
  132. data/sig/prism/reflection.rbs +50 -0
  133. data/sig/prism/relocation.rbs +185 -0
  134. data/sig/prism/serialize.rbs +8 -0
  135. data/sig/prism/string_query.rbs +11 -0
  136. data/sig/prism/visitor.rbs +169 -0
  137. data/sig/prism.rbs +254 -0
  138. data/src/diagnostic.c +850 -0
  139. data/src/encoding.c +5235 -0
  140. data/src/node.c +8676 -0
  141. data/src/options.c +328 -0
  142. data/src/pack.c +509 -0
  143. data/src/prettyprint.c +8941 -0
  144. data/src/prism.c +23361 -0
  145. data/src/regexp.c +790 -0
  146. data/src/serialize.c +2268 -0
  147. data/src/static_literals.c +617 -0
  148. data/src/token_type.c +703 -0
  149. data/src/util/pm_buffer.c +357 -0
  150. data/src/util/pm_char.c +318 -0
  151. data/src/util/pm_constant_pool.c +342 -0
  152. data/src/util/pm_integer.c +670 -0
  153. data/src/util/pm_list.c +49 -0
  154. data/src/util/pm_memchr.c +35 -0
  155. data/src/util/pm_newline_list.c +125 -0
  156. data/src/util/pm_string.c +381 -0
  157. data/src/util/pm_strncasecmp.c +36 -0
  158. data/src/util/pm_strpbrk.c +206 -0
  159. metadata +202 -0
@@ -0,0 +1,801 @@
1
+ # frozen_string_literal: true
2
+ # :markup: markdown
3
+
4
+ =begin
5
+ --
6
+ This file is generated by the templates/template.rb script and should not be
7
+ modified manually. See templates/lib/prism/compiler.rb.erb
8
+ if you are looking to modify the template
9
+ ++
10
+ =end
11
+
12
+ module Prism
13
+ # A compiler is a visitor that returns the value of each node as it visits.
14
+ # This is as opposed to a visitor which will only walk the tree. This can be
15
+ # useful when you are trying to compile a tree into a different format.
16
+ #
17
+ # For example, to build a representation of the tree as s-expressions, you
18
+ # could write:
19
+ #
20
+ # class SExpressions < Prism::Compiler
21
+ # def visit_arguments_node(node) = [:arguments, super]
22
+ # def visit_call_node(node) = [:call, super]
23
+ # def visit_integer_node(node) = [:integer]
24
+ # def visit_program_node(node) = [:program, super]
25
+ # end
26
+ #
27
+ # Prism.parse("1 + 2").value.accept(SExpressions.new)
28
+ # # => [:program, [[[:call, [[:integer], [:arguments, [[:integer]]]]]]]]
29
+ #
30
+ class Compiler < Visitor
31
+ # Visit an individual node.
32
+ def visit(node)
33
+ node&.accept(self)
34
+ end
35
+
36
+ # Visit a list of nodes.
37
+ def visit_all(nodes)
38
+ nodes.map { |node| node&.accept(self) }
39
+ end
40
+
41
+ # Visit the child nodes of the given node.
42
+ def visit_child_nodes(node)
43
+ node.compact_child_nodes.map { |node| node.accept(self) }
44
+ end
45
+
46
+ # Compile a AliasGlobalVariableNode node
47
+ def visit_alias_global_variable_node(node)
48
+ node.compact_child_nodes.map { |node| node.accept(self) }
49
+ end
50
+
51
+ # Compile a AliasMethodNode node
52
+ def visit_alias_method_node(node)
53
+ node.compact_child_nodes.map { |node| node.accept(self) }
54
+ end
55
+
56
+ # Compile a AlternationPatternNode node
57
+ def visit_alternation_pattern_node(node)
58
+ node.compact_child_nodes.map { |node| node.accept(self) }
59
+ end
60
+
61
+ # Compile a AndNode node
62
+ def visit_and_node(node)
63
+ node.compact_child_nodes.map { |node| node.accept(self) }
64
+ end
65
+
66
+ # Compile a ArgumentsNode node
67
+ def visit_arguments_node(node)
68
+ node.compact_child_nodes.map { |node| node.accept(self) }
69
+ end
70
+
71
+ # Compile a ArrayNode node
72
+ def visit_array_node(node)
73
+ node.compact_child_nodes.map { |node| node.accept(self) }
74
+ end
75
+
76
+ # Compile a ArrayPatternNode node
77
+ def visit_array_pattern_node(node)
78
+ node.compact_child_nodes.map { |node| node.accept(self) }
79
+ end
80
+
81
+ # Compile a AssocNode node
82
+ def visit_assoc_node(node)
83
+ node.compact_child_nodes.map { |node| node.accept(self) }
84
+ end
85
+
86
+ # Compile a AssocSplatNode node
87
+ def visit_assoc_splat_node(node)
88
+ node.compact_child_nodes.map { |node| node.accept(self) }
89
+ end
90
+
91
+ # Compile a BackReferenceReadNode node
92
+ def visit_back_reference_read_node(node)
93
+ node.compact_child_nodes.map { |node| node.accept(self) }
94
+ end
95
+
96
+ # Compile a BeginNode node
97
+ def visit_begin_node(node)
98
+ node.compact_child_nodes.map { |node| node.accept(self) }
99
+ end
100
+
101
+ # Compile a BlockArgumentNode node
102
+ def visit_block_argument_node(node)
103
+ node.compact_child_nodes.map { |node| node.accept(self) }
104
+ end
105
+
106
+ # Compile a BlockLocalVariableNode node
107
+ def visit_block_local_variable_node(node)
108
+ node.compact_child_nodes.map { |node| node.accept(self) }
109
+ end
110
+
111
+ # Compile a BlockNode node
112
+ def visit_block_node(node)
113
+ node.compact_child_nodes.map { |node| node.accept(self) }
114
+ end
115
+
116
+ # Compile a BlockParameterNode node
117
+ def visit_block_parameter_node(node)
118
+ node.compact_child_nodes.map { |node| node.accept(self) }
119
+ end
120
+
121
+ # Compile a BlockParametersNode node
122
+ def visit_block_parameters_node(node)
123
+ node.compact_child_nodes.map { |node| node.accept(self) }
124
+ end
125
+
126
+ # Compile a BreakNode node
127
+ def visit_break_node(node)
128
+ node.compact_child_nodes.map { |node| node.accept(self) }
129
+ end
130
+
131
+ # Compile a CallAndWriteNode node
132
+ def visit_call_and_write_node(node)
133
+ node.compact_child_nodes.map { |node| node.accept(self) }
134
+ end
135
+
136
+ # Compile a CallNode node
137
+ def visit_call_node(node)
138
+ node.compact_child_nodes.map { |node| node.accept(self) }
139
+ end
140
+
141
+ # Compile a CallOperatorWriteNode node
142
+ def visit_call_operator_write_node(node)
143
+ node.compact_child_nodes.map { |node| node.accept(self) }
144
+ end
145
+
146
+ # Compile a CallOrWriteNode node
147
+ def visit_call_or_write_node(node)
148
+ node.compact_child_nodes.map { |node| node.accept(self) }
149
+ end
150
+
151
+ # Compile a CallTargetNode node
152
+ def visit_call_target_node(node)
153
+ node.compact_child_nodes.map { |node| node.accept(self) }
154
+ end
155
+
156
+ # Compile a CapturePatternNode node
157
+ def visit_capture_pattern_node(node)
158
+ node.compact_child_nodes.map { |node| node.accept(self) }
159
+ end
160
+
161
+ # Compile a CaseMatchNode node
162
+ def visit_case_match_node(node)
163
+ node.compact_child_nodes.map { |node| node.accept(self) }
164
+ end
165
+
166
+ # Compile a CaseNode node
167
+ def visit_case_node(node)
168
+ node.compact_child_nodes.map { |node| node.accept(self) }
169
+ end
170
+
171
+ # Compile a ClassNode node
172
+ def visit_class_node(node)
173
+ node.compact_child_nodes.map { |node| node.accept(self) }
174
+ end
175
+
176
+ # Compile a ClassVariableAndWriteNode node
177
+ def visit_class_variable_and_write_node(node)
178
+ node.compact_child_nodes.map { |node| node.accept(self) }
179
+ end
180
+
181
+ # Compile a ClassVariableOperatorWriteNode node
182
+ def visit_class_variable_operator_write_node(node)
183
+ node.compact_child_nodes.map { |node| node.accept(self) }
184
+ end
185
+
186
+ # Compile a ClassVariableOrWriteNode node
187
+ def visit_class_variable_or_write_node(node)
188
+ node.compact_child_nodes.map { |node| node.accept(self) }
189
+ end
190
+
191
+ # Compile a ClassVariableReadNode node
192
+ def visit_class_variable_read_node(node)
193
+ node.compact_child_nodes.map { |node| node.accept(self) }
194
+ end
195
+
196
+ # Compile a ClassVariableTargetNode node
197
+ def visit_class_variable_target_node(node)
198
+ node.compact_child_nodes.map { |node| node.accept(self) }
199
+ end
200
+
201
+ # Compile a ClassVariableWriteNode node
202
+ def visit_class_variable_write_node(node)
203
+ node.compact_child_nodes.map { |node| node.accept(self) }
204
+ end
205
+
206
+ # Compile a ConstantAndWriteNode node
207
+ def visit_constant_and_write_node(node)
208
+ node.compact_child_nodes.map { |node| node.accept(self) }
209
+ end
210
+
211
+ # Compile a ConstantOperatorWriteNode node
212
+ def visit_constant_operator_write_node(node)
213
+ node.compact_child_nodes.map { |node| node.accept(self) }
214
+ end
215
+
216
+ # Compile a ConstantOrWriteNode node
217
+ def visit_constant_or_write_node(node)
218
+ node.compact_child_nodes.map { |node| node.accept(self) }
219
+ end
220
+
221
+ # Compile a ConstantPathAndWriteNode node
222
+ def visit_constant_path_and_write_node(node)
223
+ node.compact_child_nodes.map { |node| node.accept(self) }
224
+ end
225
+
226
+ # Compile a ConstantPathNode node
227
+ def visit_constant_path_node(node)
228
+ node.compact_child_nodes.map { |node| node.accept(self) }
229
+ end
230
+
231
+ # Compile a ConstantPathOperatorWriteNode node
232
+ def visit_constant_path_operator_write_node(node)
233
+ node.compact_child_nodes.map { |node| node.accept(self) }
234
+ end
235
+
236
+ # Compile a ConstantPathOrWriteNode node
237
+ def visit_constant_path_or_write_node(node)
238
+ node.compact_child_nodes.map { |node| node.accept(self) }
239
+ end
240
+
241
+ # Compile a ConstantPathTargetNode node
242
+ def visit_constant_path_target_node(node)
243
+ node.compact_child_nodes.map { |node| node.accept(self) }
244
+ end
245
+
246
+ # Compile a ConstantPathWriteNode node
247
+ def visit_constant_path_write_node(node)
248
+ node.compact_child_nodes.map { |node| node.accept(self) }
249
+ end
250
+
251
+ # Compile a ConstantReadNode node
252
+ def visit_constant_read_node(node)
253
+ node.compact_child_nodes.map { |node| node.accept(self) }
254
+ end
255
+
256
+ # Compile a ConstantTargetNode node
257
+ def visit_constant_target_node(node)
258
+ node.compact_child_nodes.map { |node| node.accept(self) }
259
+ end
260
+
261
+ # Compile a ConstantWriteNode node
262
+ def visit_constant_write_node(node)
263
+ node.compact_child_nodes.map { |node| node.accept(self) }
264
+ end
265
+
266
+ # Compile a DefNode node
267
+ def visit_def_node(node)
268
+ node.compact_child_nodes.map { |node| node.accept(self) }
269
+ end
270
+
271
+ # Compile a DefinedNode node
272
+ def visit_defined_node(node)
273
+ node.compact_child_nodes.map { |node| node.accept(self) }
274
+ end
275
+
276
+ # Compile a ElseNode node
277
+ def visit_else_node(node)
278
+ node.compact_child_nodes.map { |node| node.accept(self) }
279
+ end
280
+
281
+ # Compile a EmbeddedStatementsNode node
282
+ def visit_embedded_statements_node(node)
283
+ node.compact_child_nodes.map { |node| node.accept(self) }
284
+ end
285
+
286
+ # Compile a EmbeddedVariableNode node
287
+ def visit_embedded_variable_node(node)
288
+ node.compact_child_nodes.map { |node| node.accept(self) }
289
+ end
290
+
291
+ # Compile a EnsureNode node
292
+ def visit_ensure_node(node)
293
+ node.compact_child_nodes.map { |node| node.accept(self) }
294
+ end
295
+
296
+ # Compile a FalseNode node
297
+ def visit_false_node(node)
298
+ node.compact_child_nodes.map { |node| node.accept(self) }
299
+ end
300
+
301
+ # Compile a FindPatternNode node
302
+ def visit_find_pattern_node(node)
303
+ node.compact_child_nodes.map { |node| node.accept(self) }
304
+ end
305
+
306
+ # Compile a FlipFlopNode node
307
+ def visit_flip_flop_node(node)
308
+ node.compact_child_nodes.map { |node| node.accept(self) }
309
+ end
310
+
311
+ # Compile a FloatNode node
312
+ def visit_float_node(node)
313
+ node.compact_child_nodes.map { |node| node.accept(self) }
314
+ end
315
+
316
+ # Compile a ForNode node
317
+ def visit_for_node(node)
318
+ node.compact_child_nodes.map { |node| node.accept(self) }
319
+ end
320
+
321
+ # Compile a ForwardingArgumentsNode node
322
+ def visit_forwarding_arguments_node(node)
323
+ node.compact_child_nodes.map { |node| node.accept(self) }
324
+ end
325
+
326
+ # Compile a ForwardingParameterNode node
327
+ def visit_forwarding_parameter_node(node)
328
+ node.compact_child_nodes.map { |node| node.accept(self) }
329
+ end
330
+
331
+ # Compile a ForwardingSuperNode node
332
+ def visit_forwarding_super_node(node)
333
+ node.compact_child_nodes.map { |node| node.accept(self) }
334
+ end
335
+
336
+ # Compile a GlobalVariableAndWriteNode node
337
+ def visit_global_variable_and_write_node(node)
338
+ node.compact_child_nodes.map { |node| node.accept(self) }
339
+ end
340
+
341
+ # Compile a GlobalVariableOperatorWriteNode node
342
+ def visit_global_variable_operator_write_node(node)
343
+ node.compact_child_nodes.map { |node| node.accept(self) }
344
+ end
345
+
346
+ # Compile a GlobalVariableOrWriteNode node
347
+ def visit_global_variable_or_write_node(node)
348
+ node.compact_child_nodes.map { |node| node.accept(self) }
349
+ end
350
+
351
+ # Compile a GlobalVariableReadNode node
352
+ def visit_global_variable_read_node(node)
353
+ node.compact_child_nodes.map { |node| node.accept(self) }
354
+ end
355
+
356
+ # Compile a GlobalVariableTargetNode node
357
+ def visit_global_variable_target_node(node)
358
+ node.compact_child_nodes.map { |node| node.accept(self) }
359
+ end
360
+
361
+ # Compile a GlobalVariableWriteNode node
362
+ def visit_global_variable_write_node(node)
363
+ node.compact_child_nodes.map { |node| node.accept(self) }
364
+ end
365
+
366
+ # Compile a HashNode node
367
+ def visit_hash_node(node)
368
+ node.compact_child_nodes.map { |node| node.accept(self) }
369
+ end
370
+
371
+ # Compile a HashPatternNode node
372
+ def visit_hash_pattern_node(node)
373
+ node.compact_child_nodes.map { |node| node.accept(self) }
374
+ end
375
+
376
+ # Compile a IfNode node
377
+ def visit_if_node(node)
378
+ node.compact_child_nodes.map { |node| node.accept(self) }
379
+ end
380
+
381
+ # Compile a ImaginaryNode node
382
+ def visit_imaginary_node(node)
383
+ node.compact_child_nodes.map { |node| node.accept(self) }
384
+ end
385
+
386
+ # Compile a ImplicitNode node
387
+ def visit_implicit_node(node)
388
+ node.compact_child_nodes.map { |node| node.accept(self) }
389
+ end
390
+
391
+ # Compile a ImplicitRestNode node
392
+ def visit_implicit_rest_node(node)
393
+ node.compact_child_nodes.map { |node| node.accept(self) }
394
+ end
395
+
396
+ # Compile a InNode node
397
+ def visit_in_node(node)
398
+ node.compact_child_nodes.map { |node| node.accept(self) }
399
+ end
400
+
401
+ # Compile a IndexAndWriteNode node
402
+ def visit_index_and_write_node(node)
403
+ node.compact_child_nodes.map { |node| node.accept(self) }
404
+ end
405
+
406
+ # Compile a IndexOperatorWriteNode node
407
+ def visit_index_operator_write_node(node)
408
+ node.compact_child_nodes.map { |node| node.accept(self) }
409
+ end
410
+
411
+ # Compile a IndexOrWriteNode node
412
+ def visit_index_or_write_node(node)
413
+ node.compact_child_nodes.map { |node| node.accept(self) }
414
+ end
415
+
416
+ # Compile a IndexTargetNode node
417
+ def visit_index_target_node(node)
418
+ node.compact_child_nodes.map { |node| node.accept(self) }
419
+ end
420
+
421
+ # Compile a InstanceVariableAndWriteNode node
422
+ def visit_instance_variable_and_write_node(node)
423
+ node.compact_child_nodes.map { |node| node.accept(self) }
424
+ end
425
+
426
+ # Compile a InstanceVariableOperatorWriteNode node
427
+ def visit_instance_variable_operator_write_node(node)
428
+ node.compact_child_nodes.map { |node| node.accept(self) }
429
+ end
430
+
431
+ # Compile a InstanceVariableOrWriteNode node
432
+ def visit_instance_variable_or_write_node(node)
433
+ node.compact_child_nodes.map { |node| node.accept(self) }
434
+ end
435
+
436
+ # Compile a InstanceVariableReadNode node
437
+ def visit_instance_variable_read_node(node)
438
+ node.compact_child_nodes.map { |node| node.accept(self) }
439
+ end
440
+
441
+ # Compile a InstanceVariableTargetNode node
442
+ def visit_instance_variable_target_node(node)
443
+ node.compact_child_nodes.map { |node| node.accept(self) }
444
+ end
445
+
446
+ # Compile a InstanceVariableWriteNode node
447
+ def visit_instance_variable_write_node(node)
448
+ node.compact_child_nodes.map { |node| node.accept(self) }
449
+ end
450
+
451
+ # Compile a IntegerNode node
452
+ def visit_integer_node(node)
453
+ node.compact_child_nodes.map { |node| node.accept(self) }
454
+ end
455
+
456
+ # Compile a InterpolatedMatchLastLineNode node
457
+ def visit_interpolated_match_last_line_node(node)
458
+ node.compact_child_nodes.map { |node| node.accept(self) }
459
+ end
460
+
461
+ # Compile a InterpolatedRegularExpressionNode node
462
+ def visit_interpolated_regular_expression_node(node)
463
+ node.compact_child_nodes.map { |node| node.accept(self) }
464
+ end
465
+
466
+ # Compile a InterpolatedStringNode node
467
+ def visit_interpolated_string_node(node)
468
+ node.compact_child_nodes.map { |node| node.accept(self) }
469
+ end
470
+
471
+ # Compile a InterpolatedSymbolNode node
472
+ def visit_interpolated_symbol_node(node)
473
+ node.compact_child_nodes.map { |node| node.accept(self) }
474
+ end
475
+
476
+ # Compile a InterpolatedXStringNode node
477
+ def visit_interpolated_x_string_node(node)
478
+ node.compact_child_nodes.map { |node| node.accept(self) }
479
+ end
480
+
481
+ # Compile a ItLocalVariableReadNode node
482
+ def visit_it_local_variable_read_node(node)
483
+ node.compact_child_nodes.map { |node| node.accept(self) }
484
+ end
485
+
486
+ # Compile a ItParametersNode node
487
+ def visit_it_parameters_node(node)
488
+ node.compact_child_nodes.map { |node| node.accept(self) }
489
+ end
490
+
491
+ # Compile a KeywordHashNode node
492
+ def visit_keyword_hash_node(node)
493
+ node.compact_child_nodes.map { |node| node.accept(self) }
494
+ end
495
+
496
+ # Compile a KeywordRestParameterNode node
497
+ def visit_keyword_rest_parameter_node(node)
498
+ node.compact_child_nodes.map { |node| node.accept(self) }
499
+ end
500
+
501
+ # Compile a LambdaNode node
502
+ def visit_lambda_node(node)
503
+ node.compact_child_nodes.map { |node| node.accept(self) }
504
+ end
505
+
506
+ # Compile a LocalVariableAndWriteNode node
507
+ def visit_local_variable_and_write_node(node)
508
+ node.compact_child_nodes.map { |node| node.accept(self) }
509
+ end
510
+
511
+ # Compile a LocalVariableOperatorWriteNode node
512
+ def visit_local_variable_operator_write_node(node)
513
+ node.compact_child_nodes.map { |node| node.accept(self) }
514
+ end
515
+
516
+ # Compile a LocalVariableOrWriteNode node
517
+ def visit_local_variable_or_write_node(node)
518
+ node.compact_child_nodes.map { |node| node.accept(self) }
519
+ end
520
+
521
+ # Compile a LocalVariableReadNode node
522
+ def visit_local_variable_read_node(node)
523
+ node.compact_child_nodes.map { |node| node.accept(self) }
524
+ end
525
+
526
+ # Compile a LocalVariableTargetNode node
527
+ def visit_local_variable_target_node(node)
528
+ node.compact_child_nodes.map { |node| node.accept(self) }
529
+ end
530
+
531
+ # Compile a LocalVariableWriteNode node
532
+ def visit_local_variable_write_node(node)
533
+ node.compact_child_nodes.map { |node| node.accept(self) }
534
+ end
535
+
536
+ # Compile a MatchLastLineNode node
537
+ def visit_match_last_line_node(node)
538
+ node.compact_child_nodes.map { |node| node.accept(self) }
539
+ end
540
+
541
+ # Compile a MatchPredicateNode node
542
+ def visit_match_predicate_node(node)
543
+ node.compact_child_nodes.map { |node| node.accept(self) }
544
+ end
545
+
546
+ # Compile a MatchRequiredNode node
547
+ def visit_match_required_node(node)
548
+ node.compact_child_nodes.map { |node| node.accept(self) }
549
+ end
550
+
551
+ # Compile a MatchWriteNode node
552
+ def visit_match_write_node(node)
553
+ node.compact_child_nodes.map { |node| node.accept(self) }
554
+ end
555
+
556
+ # Compile a MissingNode node
557
+ def visit_missing_node(node)
558
+ node.compact_child_nodes.map { |node| node.accept(self) }
559
+ end
560
+
561
+ # Compile a ModuleNode node
562
+ def visit_module_node(node)
563
+ node.compact_child_nodes.map { |node| node.accept(self) }
564
+ end
565
+
566
+ # Compile a MultiTargetNode node
567
+ def visit_multi_target_node(node)
568
+ node.compact_child_nodes.map { |node| node.accept(self) }
569
+ end
570
+
571
+ # Compile a MultiWriteNode node
572
+ def visit_multi_write_node(node)
573
+ node.compact_child_nodes.map { |node| node.accept(self) }
574
+ end
575
+
576
+ # Compile a NextNode node
577
+ def visit_next_node(node)
578
+ node.compact_child_nodes.map { |node| node.accept(self) }
579
+ end
580
+
581
+ # Compile a NilNode node
582
+ def visit_nil_node(node)
583
+ node.compact_child_nodes.map { |node| node.accept(self) }
584
+ end
585
+
586
+ # Compile a NoKeywordsParameterNode node
587
+ def visit_no_keywords_parameter_node(node)
588
+ node.compact_child_nodes.map { |node| node.accept(self) }
589
+ end
590
+
591
+ # Compile a NumberedParametersNode node
592
+ def visit_numbered_parameters_node(node)
593
+ node.compact_child_nodes.map { |node| node.accept(self) }
594
+ end
595
+
596
+ # Compile a NumberedReferenceReadNode node
597
+ def visit_numbered_reference_read_node(node)
598
+ node.compact_child_nodes.map { |node| node.accept(self) }
599
+ end
600
+
601
+ # Compile a OptionalKeywordParameterNode node
602
+ def visit_optional_keyword_parameter_node(node)
603
+ node.compact_child_nodes.map { |node| node.accept(self) }
604
+ end
605
+
606
+ # Compile a OptionalParameterNode node
607
+ def visit_optional_parameter_node(node)
608
+ node.compact_child_nodes.map { |node| node.accept(self) }
609
+ end
610
+
611
+ # Compile a OrNode node
612
+ def visit_or_node(node)
613
+ node.compact_child_nodes.map { |node| node.accept(self) }
614
+ end
615
+
616
+ # Compile a ParametersNode node
617
+ def visit_parameters_node(node)
618
+ node.compact_child_nodes.map { |node| node.accept(self) }
619
+ end
620
+
621
+ # Compile a ParenthesesNode node
622
+ def visit_parentheses_node(node)
623
+ node.compact_child_nodes.map { |node| node.accept(self) }
624
+ end
625
+
626
+ # Compile a PinnedExpressionNode node
627
+ def visit_pinned_expression_node(node)
628
+ node.compact_child_nodes.map { |node| node.accept(self) }
629
+ end
630
+
631
+ # Compile a PinnedVariableNode node
632
+ def visit_pinned_variable_node(node)
633
+ node.compact_child_nodes.map { |node| node.accept(self) }
634
+ end
635
+
636
+ # Compile a PostExecutionNode node
637
+ def visit_post_execution_node(node)
638
+ node.compact_child_nodes.map { |node| node.accept(self) }
639
+ end
640
+
641
+ # Compile a PreExecutionNode node
642
+ def visit_pre_execution_node(node)
643
+ node.compact_child_nodes.map { |node| node.accept(self) }
644
+ end
645
+
646
+ # Compile a ProgramNode node
647
+ def visit_program_node(node)
648
+ node.compact_child_nodes.map { |node| node.accept(self) }
649
+ end
650
+
651
+ # Compile a RangeNode node
652
+ def visit_range_node(node)
653
+ node.compact_child_nodes.map { |node| node.accept(self) }
654
+ end
655
+
656
+ # Compile a RationalNode node
657
+ def visit_rational_node(node)
658
+ node.compact_child_nodes.map { |node| node.accept(self) }
659
+ end
660
+
661
+ # Compile a RedoNode node
662
+ def visit_redo_node(node)
663
+ node.compact_child_nodes.map { |node| node.accept(self) }
664
+ end
665
+
666
+ # Compile a RegularExpressionNode node
667
+ def visit_regular_expression_node(node)
668
+ node.compact_child_nodes.map { |node| node.accept(self) }
669
+ end
670
+
671
+ # Compile a RequiredKeywordParameterNode node
672
+ def visit_required_keyword_parameter_node(node)
673
+ node.compact_child_nodes.map { |node| node.accept(self) }
674
+ end
675
+
676
+ # Compile a RequiredParameterNode node
677
+ def visit_required_parameter_node(node)
678
+ node.compact_child_nodes.map { |node| node.accept(self) }
679
+ end
680
+
681
+ # Compile a RescueModifierNode node
682
+ def visit_rescue_modifier_node(node)
683
+ node.compact_child_nodes.map { |node| node.accept(self) }
684
+ end
685
+
686
+ # Compile a RescueNode node
687
+ def visit_rescue_node(node)
688
+ node.compact_child_nodes.map { |node| node.accept(self) }
689
+ end
690
+
691
+ # Compile a RestParameterNode node
692
+ def visit_rest_parameter_node(node)
693
+ node.compact_child_nodes.map { |node| node.accept(self) }
694
+ end
695
+
696
+ # Compile a RetryNode node
697
+ def visit_retry_node(node)
698
+ node.compact_child_nodes.map { |node| node.accept(self) }
699
+ end
700
+
701
+ # Compile a ReturnNode node
702
+ def visit_return_node(node)
703
+ node.compact_child_nodes.map { |node| node.accept(self) }
704
+ end
705
+
706
+ # Compile a SelfNode node
707
+ def visit_self_node(node)
708
+ node.compact_child_nodes.map { |node| node.accept(self) }
709
+ end
710
+
711
+ # Compile a ShareableConstantNode node
712
+ def visit_shareable_constant_node(node)
713
+ node.compact_child_nodes.map { |node| node.accept(self) }
714
+ end
715
+
716
+ # Compile a SingletonClassNode node
717
+ def visit_singleton_class_node(node)
718
+ node.compact_child_nodes.map { |node| node.accept(self) }
719
+ end
720
+
721
+ # Compile a SourceEncodingNode node
722
+ def visit_source_encoding_node(node)
723
+ node.compact_child_nodes.map { |node| node.accept(self) }
724
+ end
725
+
726
+ # Compile a SourceFileNode node
727
+ def visit_source_file_node(node)
728
+ node.compact_child_nodes.map { |node| node.accept(self) }
729
+ end
730
+
731
+ # Compile a SourceLineNode node
732
+ def visit_source_line_node(node)
733
+ node.compact_child_nodes.map { |node| node.accept(self) }
734
+ end
735
+
736
+ # Compile a SplatNode node
737
+ def visit_splat_node(node)
738
+ node.compact_child_nodes.map { |node| node.accept(self) }
739
+ end
740
+
741
+ # Compile a StatementsNode node
742
+ def visit_statements_node(node)
743
+ node.compact_child_nodes.map { |node| node.accept(self) }
744
+ end
745
+
746
+ # Compile a StringNode node
747
+ def visit_string_node(node)
748
+ node.compact_child_nodes.map { |node| node.accept(self) }
749
+ end
750
+
751
+ # Compile a SuperNode node
752
+ def visit_super_node(node)
753
+ node.compact_child_nodes.map { |node| node.accept(self) }
754
+ end
755
+
756
+ # Compile a SymbolNode node
757
+ def visit_symbol_node(node)
758
+ node.compact_child_nodes.map { |node| node.accept(self) }
759
+ end
760
+
761
+ # Compile a TrueNode node
762
+ def visit_true_node(node)
763
+ node.compact_child_nodes.map { |node| node.accept(self) }
764
+ end
765
+
766
+ # Compile a UndefNode node
767
+ def visit_undef_node(node)
768
+ node.compact_child_nodes.map { |node| node.accept(self) }
769
+ end
770
+
771
+ # Compile a UnlessNode node
772
+ def visit_unless_node(node)
773
+ node.compact_child_nodes.map { |node| node.accept(self) }
774
+ end
775
+
776
+ # Compile a UntilNode node
777
+ def visit_until_node(node)
778
+ node.compact_child_nodes.map { |node| node.accept(self) }
779
+ end
780
+
781
+ # Compile a WhenNode node
782
+ def visit_when_node(node)
783
+ node.compact_child_nodes.map { |node| node.accept(self) }
784
+ end
785
+
786
+ # Compile a WhileNode node
787
+ def visit_while_node(node)
788
+ node.compact_child_nodes.map { |node| node.accept(self) }
789
+ end
790
+
791
+ # Compile a XStringNode node
792
+ def visit_x_string_node(node)
793
+ node.compact_child_nodes.map { |node| node.accept(self) }
794
+ end
795
+
796
+ # Compile a YieldNode node
797
+ def visit_yield_node(node)
798
+ node.compact_child_nodes.map { |node| node.accept(self) }
799
+ end
800
+ end
801
+ end