refract 0.0.2 → 1.0.0.beta1
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.
- checksums.yaml +5 -5
- data/LICENSE.txt +21 -0
- data/README.md +7 -0
- data/lib/refract/basic_visitor.rb +40 -0
- data/lib/refract/converter.rb +1032 -0
- data/lib/refract/formatter.rb +1271 -0
- data/lib/refract/mutation_visitor.rb +899 -0
- data/lib/refract/nodes/alias_global_variable_node.rb +12 -0
- data/lib/refract/nodes/alias_method_node.rb +12 -0
- data/lib/refract/nodes/alternation_pattern_node.rb +12 -0
- data/lib/refract/nodes/and_node.rb +13 -0
- data/lib/refract/nodes/arguments_node.rb +11 -0
- data/lib/refract/nodes/array_node.rb +11 -0
- data/lib/refract/nodes/array_pattern_node.rb +14 -0
- data/lib/refract/nodes/assoc_node.rb +12 -0
- data/lib/refract/nodes/assoc_splat_node.rb +11 -0
- data/lib/refract/nodes/back_reference_read_node.rb +11 -0
- data/lib/refract/nodes/begin_node.rb +14 -0
- data/lib/refract/nodes/block_argument_node.rb +11 -0
- data/lib/refract/nodes/block_local_variable_node.rb +11 -0
- data/lib/refract/nodes/block_node.rb +12 -0
- data/lib/refract/nodes/block_parameter_node.rb +11 -0
- data/lib/refract/nodes/block_parameters_node.rb +12 -0
- data/lib/refract/nodes/break_node.rb +11 -0
- data/lib/refract/nodes/call_and_write_node.rb +13 -0
- data/lib/refract/nodes/call_node.rb +14 -0
- data/lib/refract/nodes/call_operator_write_node.rb +14 -0
- data/lib/refract/nodes/call_or_write_node.rb +13 -0
- data/lib/refract/nodes/call_target_node.rb +12 -0
- data/lib/refract/nodes/capture_pattern_node.rb +12 -0
- data/lib/refract/nodes/case_match_node.rb +13 -0
- data/lib/refract/nodes/case_node.rb +13 -0
- data/lib/refract/nodes/class_node.rb +13 -0
- data/lib/refract/nodes/class_variable_and_write_node.rb +12 -0
- data/lib/refract/nodes/class_variable_operator_write_node.rb +13 -0
- data/lib/refract/nodes/class_variable_or_write_node.rb +12 -0
- data/lib/refract/nodes/class_variable_read_node.rb +11 -0
- data/lib/refract/nodes/class_variable_target_node.rb +11 -0
- data/lib/refract/nodes/class_variable_write_node.rb +12 -0
- data/lib/refract/nodes/constant_and_write_node.rb +12 -0
- data/lib/refract/nodes/constant_operator_write_node.rb +13 -0
- data/lib/refract/nodes/constant_or_write_node.rb +12 -0
- data/lib/refract/nodes/constant_path.rb +12 -0
- data/lib/refract/nodes/constant_path_and_write_node.rb +12 -0
- data/lib/refract/nodes/constant_path_operator_write_node.rb +13 -0
- data/lib/refract/nodes/constant_path_or_write_node.rb +12 -0
- data/lib/refract/nodes/constant_path_target_node.rb +12 -0
- data/lib/refract/nodes/constant_path_write_node.rb +12 -0
- data/lib/refract/nodes/constant_read_node.rb +11 -0
- data/lib/refract/nodes/constant_target_node.rb +11 -0
- data/lib/refract/nodes/constant_write_node.rb +12 -0
- data/lib/refract/nodes/def_node.rb +14 -0
- data/lib/refract/nodes/defined_node.rb +11 -0
- data/lib/refract/nodes/else_node.rb +11 -0
- data/lib/refract/nodes/embedded_statements_node.rb +11 -0
- data/lib/refract/nodes/embedded_variable_node.rb +11 -0
- data/lib/refract/nodes/ensure_node.rb +11 -0
- data/lib/refract/nodes/false_node.rb +6 -0
- data/lib/refract/nodes/find_pattern_node.rb +14 -0
- data/lib/refract/nodes/flip_flop_node.rb +13 -0
- data/lib/refract/nodes/float_node.rb +11 -0
- data/lib/refract/nodes/for_node.rb +13 -0
- data/lib/refract/nodes/forwarding_arguments_node.rb +6 -0
- data/lib/refract/nodes/forwarding_parameter_node.rb +6 -0
- data/lib/refract/nodes/forwarding_super_node.rb +11 -0
- data/lib/refract/nodes/global_variable_and_write_node.rb +12 -0
- data/lib/refract/nodes/global_variable_operator_write_node.rb +13 -0
- data/lib/refract/nodes/global_variable_or_write_node.rb +12 -0
- data/lib/refract/nodes/global_variable_read_node.rb +11 -0
- data/lib/refract/nodes/global_variable_target_node.rb +11 -0
- data/lib/refract/nodes/global_variable_write_node.rb +12 -0
- data/lib/refract/nodes/hash_node.rb +11 -0
- data/lib/refract/nodes/hash_pattern_node.rb +12 -0
- data/lib/refract/nodes/if_node.rb +13 -0
- data/lib/refract/nodes/imaginary_node.rb +11 -0
- data/lib/refract/nodes/implicit_node.rb +11 -0
- data/lib/refract/nodes/implicit_rest_node.rb +6 -0
- data/lib/refract/nodes/in_node.rb +12 -0
- data/lib/refract/nodes/index_and_write_node.rb +14 -0
- data/lib/refract/nodes/index_operator_write_node.rb +15 -0
- data/lib/refract/nodes/index_or_write_node.rb +14 -0
- data/lib/refract/nodes/index_target_node.rb +13 -0
- data/lib/refract/nodes/instance_variable_and_write_node.rb +12 -0
- data/lib/refract/nodes/instance_variable_operator_write_node.rb +13 -0
- data/lib/refract/nodes/instance_variable_or_write_node.rb +12 -0
- data/lib/refract/nodes/instance_variable_read_node.rb +11 -0
- data/lib/refract/nodes/instance_variable_target_node.rb +11 -0
- data/lib/refract/nodes/instance_variable_write_node.rb +12 -0
- data/lib/refract/nodes/integer_node.rb +11 -0
- data/lib/refract/nodes/interpolated_match_last_line_node.rb +15 -0
- data/lib/refract/nodes/interpolated_regular_expression_node.rb +15 -0
- data/lib/refract/nodes/interpolated_string_node.rb +11 -0
- data/lib/refract/nodes/interpolated_symbol_node.rb +11 -0
- data/lib/refract/nodes/interpolated_x_string_node.rb +11 -0
- data/lib/refract/nodes/it_local_variable_read_node.rb +6 -0
- data/lib/refract/nodes/it_parameters_node.rb +6 -0
- data/lib/refract/nodes/keyword_hash_node.rb +11 -0
- data/lib/refract/nodes/keyword_rest_parameter_node.rb +11 -0
- data/lib/refract/nodes/lambda_node.rb +12 -0
- data/lib/refract/nodes/local_variable_and_write_node.rb +13 -0
- data/lib/refract/nodes/local_variable_operator_write_node.rb +14 -0
- data/lib/refract/nodes/local_variable_or_write_node.rb +13 -0
- data/lib/refract/nodes/local_variable_read_node.rb +11 -0
- data/lib/refract/nodes/local_variable_target_node.rb +11 -0
- data/lib/refract/nodes/local_variable_write_node.rb +12 -0
- data/lib/refract/nodes/match_last_line_node.rb +15 -0
- data/lib/refract/nodes/match_predicate_node.rb +12 -0
- data/lib/refract/nodes/match_required_node.rb +12 -0
- data/lib/refract/nodes/match_write_node.rb +12 -0
- data/lib/refract/nodes/missing_node.rb +6 -0
- data/lib/refract/nodes/module_node.rb +12 -0
- data/lib/refract/nodes/multi_target_node.rb +13 -0
- data/lib/refract/nodes/multi_write_node.rb +14 -0
- data/lib/refract/nodes/next_node.rb +11 -0
- data/lib/refract/nodes/nil_node.rb +6 -0
- data/lib/refract/nodes/no_keywords_parameter_node.rb +6 -0
- data/lib/refract/nodes/numbered_parameters_node.rb +6 -0
- data/lib/refract/nodes/numbered_reference_read_node.rb +11 -0
- data/lib/refract/nodes/optional_keyword_parameter_node.rb +12 -0
- data/lib/refract/nodes/optional_parameter_node.rb +12 -0
- data/lib/refract/nodes/or_node.rb +13 -0
- data/lib/refract/nodes/parameters_node.rb +17 -0
- data/lib/refract/nodes/parentheses_node.rb +11 -0
- data/lib/refract/nodes/pinned_expression_node.rb +11 -0
- data/lib/refract/nodes/pinned_variable_node.rb +11 -0
- data/lib/refract/nodes/post_execution_node.rb +11 -0
- data/lib/refract/nodes/pre_execution_node.rb +11 -0
- data/lib/refract/nodes/program_node.rb +11 -0
- data/lib/refract/nodes/range_node.rb +13 -0
- data/lib/refract/nodes/rational_node.rb +12 -0
- data/lib/refract/nodes/redo_node.rb +6 -0
- data/lib/refract/nodes/regular_expression_node.rb +15 -0
- data/lib/refract/nodes/required_keyword_parameter_node.rb +11 -0
- data/lib/refract/nodes/required_parameter_node.rb +11 -0
- data/lib/refract/nodes/rescue_modifier_node.rb +12 -0
- data/lib/refract/nodes/rescue_node.rb +14 -0
- data/lib/refract/nodes/rest_parameter_node.rb +11 -0
- data/lib/refract/nodes/retry_node.rb +6 -0
- data/lib/refract/nodes/return_node.rb +11 -0
- data/lib/refract/nodes/self_node.rb +6 -0
- data/lib/refract/nodes/shareable_constant_node.rb +11 -0
- data/lib/refract/nodes/singleton_class_node.rb +12 -0
- data/lib/refract/nodes/source_encoding_node.rb +6 -0
- data/lib/refract/nodes/source_file_node.rb +6 -0
- data/lib/refract/nodes/source_line_node.rb +6 -0
- data/lib/refract/nodes/splat_node.rb +11 -0
- data/lib/refract/nodes/statements_node.rb +11 -0
- data/lib/refract/nodes/string_node.rb +11 -0
- data/lib/refract/nodes/super_node.rb +12 -0
- data/lib/refract/nodes/symbol_node.rb +11 -0
- data/lib/refract/nodes/true_node.rb +6 -0
- data/lib/refract/nodes/undef_node.rb +11 -0
- data/lib/refract/nodes/unless_node.rb +13 -0
- data/lib/refract/nodes/until_node.rb +12 -0
- data/lib/refract/nodes/when_node.rb +12 -0
- data/lib/refract/nodes/while_node.rb +12 -0
- data/lib/refract/nodes/x_string_node.rb +11 -0
- data/lib/refract/nodes/yield_node.rb +11 -0
- data/lib/refract/version.rb +5 -0
- data/lib/refract/visitor.rb +689 -0
- data/lib/refract.rb +36 -50
- data/lib/rubocop/cop/refract/ordered_visit_methods.rb +107 -0
- data/lib/rubocop/cop/refract_cops.rb +3 -0
- metadata +189 -26
@@ -0,0 +1,689 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Refract
|
4
|
+
class Visitor < BasicVisitor
|
5
|
+
visit AliasGlobalVariableNode do |node|
|
6
|
+
visit node.new_name
|
7
|
+
visit node.old_name
|
8
|
+
end
|
9
|
+
|
10
|
+
visit AliasMethodNode do |node|
|
11
|
+
visit node.new_name
|
12
|
+
visit node.old_name
|
13
|
+
end
|
14
|
+
|
15
|
+
visit AlternationPatternNode do |node|
|
16
|
+
visit node.left
|
17
|
+
visit node.right
|
18
|
+
end
|
19
|
+
|
20
|
+
visit AndNode do |node|
|
21
|
+
visit node.left
|
22
|
+
visit node.right
|
23
|
+
end
|
24
|
+
|
25
|
+
visit ArgumentsNode do |node|
|
26
|
+
visit_each node.arguments
|
27
|
+
end
|
28
|
+
|
29
|
+
visit ArrayNode do |node|
|
30
|
+
visit_each node.elements
|
31
|
+
end
|
32
|
+
|
33
|
+
visit ArrayPatternNode do |node|
|
34
|
+
visit node.constant
|
35
|
+
visit_each node.requireds
|
36
|
+
visit node.rest
|
37
|
+
end
|
38
|
+
|
39
|
+
visit AssocNode do |node|
|
40
|
+
visit node.key
|
41
|
+
visit node.value
|
42
|
+
end
|
43
|
+
|
44
|
+
visit AssocSplatNode do |node|
|
45
|
+
visit node.value
|
46
|
+
end
|
47
|
+
|
48
|
+
visit BackReferenceReadNode do |node|
|
49
|
+
nil
|
50
|
+
end
|
51
|
+
|
52
|
+
visit BeginNode do |node|
|
53
|
+
visit node.statements
|
54
|
+
visit node.rescue_clause
|
55
|
+
visit node.else_clause
|
56
|
+
visit node.ensure_clause
|
57
|
+
end
|
58
|
+
|
59
|
+
visit BlockArgumentNode do |node|
|
60
|
+
visit node.expression
|
61
|
+
end
|
62
|
+
|
63
|
+
visit BlockLocalVariableNode do |node|
|
64
|
+
nil
|
65
|
+
end
|
66
|
+
|
67
|
+
visit BlockNode do |node|
|
68
|
+
visit node.parameters
|
69
|
+
visit node.body
|
70
|
+
end
|
71
|
+
|
72
|
+
visit BlockParameterNode do |node|
|
73
|
+
nil
|
74
|
+
end
|
75
|
+
|
76
|
+
visit BlockParametersNode do |node|
|
77
|
+
visit node.parameters
|
78
|
+
visit_each node.locals
|
79
|
+
end
|
80
|
+
|
81
|
+
visit BreakNode do |node|
|
82
|
+
visit node.arguments
|
83
|
+
end
|
84
|
+
|
85
|
+
visit CallAndWriteNode do |node|
|
86
|
+
visit node.receiver
|
87
|
+
visit node.value
|
88
|
+
end
|
89
|
+
|
90
|
+
visit CallNode do |node|
|
91
|
+
visit node.receiver
|
92
|
+
visit node.arguments
|
93
|
+
visit node.block
|
94
|
+
end
|
95
|
+
|
96
|
+
visit CallOperatorWriteNode do |node|
|
97
|
+
visit node.receiver
|
98
|
+
visit node.value
|
99
|
+
end
|
100
|
+
|
101
|
+
visit CallOrWriteNode do |node|
|
102
|
+
visit node.receiver
|
103
|
+
visit node.value
|
104
|
+
end
|
105
|
+
|
106
|
+
visit CallTargetNode do |node|
|
107
|
+
visit node.receiver
|
108
|
+
end
|
109
|
+
|
110
|
+
visit CapturePatternNode do |node|
|
111
|
+
visit node.value
|
112
|
+
visit node.target
|
113
|
+
end
|
114
|
+
|
115
|
+
visit CaseMatchNode do |node|
|
116
|
+
visit node.predicate
|
117
|
+
visit_each node.conditions
|
118
|
+
visit node.else_clause
|
119
|
+
end
|
120
|
+
|
121
|
+
visit CaseNode do |node|
|
122
|
+
visit node.predicate
|
123
|
+
visit_each node.conditions
|
124
|
+
visit node.else_clause
|
125
|
+
end
|
126
|
+
|
127
|
+
visit ClassNode do |node|
|
128
|
+
visit node.constant_path
|
129
|
+
visit node.superclass
|
130
|
+
visit node.body
|
131
|
+
end
|
132
|
+
|
133
|
+
visit ClassVariableAndWriteNode do |node|
|
134
|
+
visit node.value
|
135
|
+
end
|
136
|
+
|
137
|
+
visit ClassVariableOperatorWriteNode do |node|
|
138
|
+
visit node.value
|
139
|
+
end
|
140
|
+
|
141
|
+
visit ClassVariableOrWriteNode do |node|
|
142
|
+
visit node.value
|
143
|
+
end
|
144
|
+
|
145
|
+
visit ClassVariableReadNode do |node|
|
146
|
+
push node.name
|
147
|
+
end
|
148
|
+
|
149
|
+
visit ClassVariableTargetNode do |node|
|
150
|
+
push node.name
|
151
|
+
end
|
152
|
+
|
153
|
+
visit ClassVariableWriteNode do |node|
|
154
|
+
visit node.value
|
155
|
+
end
|
156
|
+
|
157
|
+
visit ConstantAndWriteNode do |node|
|
158
|
+
visit node.value
|
159
|
+
end
|
160
|
+
|
161
|
+
visit ConstantOperatorWriteNode do |node|
|
162
|
+
visit node.value
|
163
|
+
end
|
164
|
+
|
165
|
+
visit ConstantOrWriteNode do |node|
|
166
|
+
visit node.value
|
167
|
+
end
|
168
|
+
|
169
|
+
visit ConstantPath do |node|
|
170
|
+
visit node.parent
|
171
|
+
end
|
172
|
+
|
173
|
+
visit ConstantPathAndWriteNode do |node|
|
174
|
+
visit node.target
|
175
|
+
visit node.value
|
176
|
+
end
|
177
|
+
|
178
|
+
visit ConstantPathOperatorWriteNode do |node|
|
179
|
+
visit node.target
|
180
|
+
visit node.value
|
181
|
+
end
|
182
|
+
|
183
|
+
visit ConstantPathOrWriteNode do |node|
|
184
|
+
visit node.target
|
185
|
+
visit node.value
|
186
|
+
end
|
187
|
+
|
188
|
+
visit ConstantPathTargetNode do |node|
|
189
|
+
visit node.parent
|
190
|
+
end
|
191
|
+
|
192
|
+
visit ConstantPathWriteNode do |node|
|
193
|
+
visit node.target
|
194
|
+
visit node.value
|
195
|
+
end
|
196
|
+
|
197
|
+
visit ConstantReadNode do |node|
|
198
|
+
nil
|
199
|
+
end
|
200
|
+
|
201
|
+
visit ConstantTargetNode do |node|
|
202
|
+
nil
|
203
|
+
end
|
204
|
+
|
205
|
+
visit ConstantWriteNode do |node|
|
206
|
+
visit node.value
|
207
|
+
end
|
208
|
+
|
209
|
+
visit DefNode do |node|
|
210
|
+
visit node.receiver
|
211
|
+
visit node.parameters
|
212
|
+
visit node.body
|
213
|
+
end
|
214
|
+
|
215
|
+
visit DefinedNode do |node|
|
216
|
+
visit node.value
|
217
|
+
end
|
218
|
+
|
219
|
+
visit ElseNode do |node|
|
220
|
+
visit node.statements
|
221
|
+
end
|
222
|
+
|
223
|
+
visit EmbeddedStatementsNode do |node|
|
224
|
+
visit node.statements
|
225
|
+
end
|
226
|
+
|
227
|
+
visit EmbeddedVariableNode do |node|
|
228
|
+
visit node.variable
|
229
|
+
end
|
230
|
+
|
231
|
+
visit EnsureNode do |node|
|
232
|
+
visit node.statements
|
233
|
+
end
|
234
|
+
|
235
|
+
visit FalseNode do |node|
|
236
|
+
nil
|
237
|
+
end
|
238
|
+
|
239
|
+
visit FindPatternNode do |node|
|
240
|
+
visit node.constant
|
241
|
+
visit node.left
|
242
|
+
visit_each node.requireds
|
243
|
+
visit node.right
|
244
|
+
end
|
245
|
+
|
246
|
+
visit FlipFlopNode do |node|
|
247
|
+
visit node.left
|
248
|
+
visit node.right
|
249
|
+
end
|
250
|
+
|
251
|
+
visit FloatNode do |node|
|
252
|
+
nil
|
253
|
+
end
|
254
|
+
|
255
|
+
visit ForNode do |node|
|
256
|
+
visit node.index
|
257
|
+
visit node.collection
|
258
|
+
visit node.statements
|
259
|
+
end
|
260
|
+
|
261
|
+
visit ForwardingArgumentsNode do |node|
|
262
|
+
nil
|
263
|
+
end
|
264
|
+
|
265
|
+
visit ForwardingParameterNode do |node|
|
266
|
+
nil
|
267
|
+
end
|
268
|
+
|
269
|
+
visit ForwardingSuperNode do |node|
|
270
|
+
visit node.block
|
271
|
+
end
|
272
|
+
|
273
|
+
visit GlobalVariableAndWriteNode do |node|
|
274
|
+
visit node.value
|
275
|
+
end
|
276
|
+
|
277
|
+
visit GlobalVariableOperatorWriteNode do |node|
|
278
|
+
visit node.value
|
279
|
+
end
|
280
|
+
|
281
|
+
visit GlobalVariableOrWriteNode do |node|
|
282
|
+
visit node.value
|
283
|
+
end
|
284
|
+
|
285
|
+
visit GlobalVariableReadNode do |node|
|
286
|
+
nil
|
287
|
+
end
|
288
|
+
|
289
|
+
visit GlobalVariableTargetNode do |node|
|
290
|
+
nil
|
291
|
+
end
|
292
|
+
|
293
|
+
visit GlobalVariableWriteNode do |node|
|
294
|
+
visit node.value
|
295
|
+
end
|
296
|
+
|
297
|
+
visit HashNode do |node|
|
298
|
+
visit_each node.elements
|
299
|
+
end
|
300
|
+
|
301
|
+
visit HashPatternNode do |node|
|
302
|
+
visit_each node.elements
|
303
|
+
visit node.rest
|
304
|
+
end
|
305
|
+
|
306
|
+
visit IfNode do |node|
|
307
|
+
visit node.predicate
|
308
|
+
visit node.statements
|
309
|
+
visit node.subsequent
|
310
|
+
end
|
311
|
+
|
312
|
+
visit ImaginaryNode do |node|
|
313
|
+
visit node.numeric
|
314
|
+
end
|
315
|
+
|
316
|
+
visit ImplicitNode do |node|
|
317
|
+
nil
|
318
|
+
end
|
319
|
+
|
320
|
+
visit ImplicitRestNode do |node|
|
321
|
+
nil
|
322
|
+
end
|
323
|
+
|
324
|
+
visit InNode do |node|
|
325
|
+
visit node.pattern
|
326
|
+
visit node.statements
|
327
|
+
end
|
328
|
+
|
329
|
+
visit IndexAndWriteNode do |node|
|
330
|
+
visit node.receiver
|
331
|
+
visit node.arguments
|
332
|
+
visit node.block
|
333
|
+
visit node.value
|
334
|
+
end
|
335
|
+
|
336
|
+
visit IndexOperatorWriteNode do |node|
|
337
|
+
visit node.receiver
|
338
|
+
visit node.arguments
|
339
|
+
visit node.block
|
340
|
+
visit node.value
|
341
|
+
end
|
342
|
+
|
343
|
+
visit IndexOrWriteNode do |node|
|
344
|
+
visit node.receiver
|
345
|
+
visit node.arguments
|
346
|
+
visit node.block
|
347
|
+
visit node.value
|
348
|
+
end
|
349
|
+
|
350
|
+
visit IndexTargetNode do |node|
|
351
|
+
visit node.receiver
|
352
|
+
visit node.arguments
|
353
|
+
visit node.block
|
354
|
+
end
|
355
|
+
|
356
|
+
visit InstanceVariableAndWriteNode do |node|
|
357
|
+
visit node.value
|
358
|
+
end
|
359
|
+
|
360
|
+
visit InstanceVariableOperatorWriteNode do |node|
|
361
|
+
visit node.value
|
362
|
+
end
|
363
|
+
|
364
|
+
visit InstanceVariableOrWriteNode do |node|
|
365
|
+
visit node.value
|
366
|
+
end
|
367
|
+
|
368
|
+
visit InstanceVariableReadNode do |node|
|
369
|
+
nil
|
370
|
+
end
|
371
|
+
|
372
|
+
visit InstanceVariableTargetNode do |node|
|
373
|
+
nil
|
374
|
+
end
|
375
|
+
|
376
|
+
visit InstanceVariableWriteNode do |node|
|
377
|
+
visit node.value
|
378
|
+
end
|
379
|
+
|
380
|
+
visit IntegerNode do |node|
|
381
|
+
nil
|
382
|
+
end
|
383
|
+
|
384
|
+
visit InterpolatedMatchLastLineNode do |node|
|
385
|
+
visit_each node.parts
|
386
|
+
end
|
387
|
+
|
388
|
+
visit InterpolatedRegularExpressionNode do |node|
|
389
|
+
visit_each node.parts
|
390
|
+
end
|
391
|
+
|
392
|
+
visit InterpolatedStringNode do |node|
|
393
|
+
visit_each node.parts
|
394
|
+
end
|
395
|
+
|
396
|
+
visit InterpolatedSymbolNode do |node|
|
397
|
+
visit_each node.parts
|
398
|
+
end
|
399
|
+
|
400
|
+
visit InterpolatedXStringNode do |node|
|
401
|
+
visit_each node.parts
|
402
|
+
end
|
403
|
+
|
404
|
+
visit ItLocalVariableReadNode do |node|
|
405
|
+
nil
|
406
|
+
end
|
407
|
+
|
408
|
+
visit ItParametersNode do |node|
|
409
|
+
nil
|
410
|
+
end
|
411
|
+
|
412
|
+
visit KeywordHashNode do |node|
|
413
|
+
visit_each node.elements
|
414
|
+
end
|
415
|
+
|
416
|
+
visit KeywordRestParameterNode do |node|
|
417
|
+
nil
|
418
|
+
end
|
419
|
+
|
420
|
+
visit LambdaNode do |node|
|
421
|
+
visit node.parameters
|
422
|
+
visit node.body
|
423
|
+
end
|
424
|
+
|
425
|
+
visit LocalVariableAndWriteNode do |node|
|
426
|
+
visit node.value
|
427
|
+
end
|
428
|
+
|
429
|
+
visit LocalVariableOperatorWriteNode do |node|
|
430
|
+
visit node.value
|
431
|
+
end
|
432
|
+
|
433
|
+
visit LocalVariableOrWriteNode do |node|
|
434
|
+
visit node.value
|
435
|
+
end
|
436
|
+
|
437
|
+
visit LocalVariableReadNode do |node|
|
438
|
+
nil
|
439
|
+
end
|
440
|
+
|
441
|
+
visit LocalVariableTargetNode do |node|
|
442
|
+
nil
|
443
|
+
end
|
444
|
+
|
445
|
+
visit LocalVariableWriteNode do |node|
|
446
|
+
visit node.value
|
447
|
+
end
|
448
|
+
|
449
|
+
visit MatchLastLineNode do |node|
|
450
|
+
nil
|
451
|
+
end
|
452
|
+
|
453
|
+
visit MatchPredicateNode do |node|
|
454
|
+
visit node.value
|
455
|
+
visit node.pattern
|
456
|
+
end
|
457
|
+
|
458
|
+
visit MatchRequiredNode do |node|
|
459
|
+
visit node.value
|
460
|
+
visit node.pattern
|
461
|
+
end
|
462
|
+
|
463
|
+
visit MatchWriteNode do |node|
|
464
|
+
visit node.call
|
465
|
+
visit_each node.targets
|
466
|
+
end
|
467
|
+
|
468
|
+
visit MissingNode do |node|
|
469
|
+
nil
|
470
|
+
end
|
471
|
+
|
472
|
+
visit ModuleNode do |node|
|
473
|
+
visit node.constant_path
|
474
|
+
visit node.body
|
475
|
+
end
|
476
|
+
|
477
|
+
visit MultiTargetNode do |node|
|
478
|
+
visit_each node.lefts
|
479
|
+
visit node.rest
|
480
|
+
visit_each node.rights
|
481
|
+
end
|
482
|
+
|
483
|
+
visit MultiWriteNode do |node|
|
484
|
+
visit_each node.lefts
|
485
|
+
visit node.rest
|
486
|
+
visit_each node.rights
|
487
|
+
visit node.value
|
488
|
+
end
|
489
|
+
|
490
|
+
visit NextNode do |node|
|
491
|
+
visit node.arguments
|
492
|
+
end
|
493
|
+
|
494
|
+
visit NilNode do |node|
|
495
|
+
nil
|
496
|
+
end
|
497
|
+
|
498
|
+
visit NoKeywordsParameterNode do |node|
|
499
|
+
nil
|
500
|
+
end
|
501
|
+
|
502
|
+
visit NumberedParametersNode do |node|
|
503
|
+
nil
|
504
|
+
end
|
505
|
+
|
506
|
+
visit NumberedReferenceReadNode do |node|
|
507
|
+
nil
|
508
|
+
end
|
509
|
+
|
510
|
+
visit OptionalKeywordParameterNode do |node|
|
511
|
+
visit node.value
|
512
|
+
end
|
513
|
+
|
514
|
+
visit OptionalParameterNode do |node|
|
515
|
+
visit node.value
|
516
|
+
end
|
517
|
+
|
518
|
+
visit OrNode do |node|
|
519
|
+
visit node.left
|
520
|
+
visit node.right
|
521
|
+
end
|
522
|
+
|
523
|
+
visit ParametersNode do |node|
|
524
|
+
visit_each node.requireds
|
525
|
+
visit_each node.optionals
|
526
|
+
visit node.rest
|
527
|
+
visit_each node.posts
|
528
|
+
visit_each node.keywords
|
529
|
+
visit node.keyword_rest
|
530
|
+
visit node.block
|
531
|
+
end
|
532
|
+
|
533
|
+
visit ParenthesesNode do |node|
|
534
|
+
visit node.body
|
535
|
+
end
|
536
|
+
|
537
|
+
visit PinnedExpressionNode do |node|
|
538
|
+
visit node.expression
|
539
|
+
end
|
540
|
+
|
541
|
+
visit PinnedVariableNode do |node|
|
542
|
+
visit node.variable
|
543
|
+
end
|
544
|
+
|
545
|
+
visit PostExecutionNode do |node|
|
546
|
+
visit node.statements
|
547
|
+
end
|
548
|
+
|
549
|
+
visit PreExecutionNode do |node|
|
550
|
+
visit node.statements
|
551
|
+
end
|
552
|
+
|
553
|
+
visit ProgramNode do |node|
|
554
|
+
visit node.statements
|
555
|
+
end
|
556
|
+
|
557
|
+
visit RangeNode do |node|
|
558
|
+
visit node.left
|
559
|
+
visit node.right
|
560
|
+
end
|
561
|
+
|
562
|
+
visit RationalNode do |node|
|
563
|
+
nil
|
564
|
+
end
|
565
|
+
|
566
|
+
visit RedoNode do |node|
|
567
|
+
nil
|
568
|
+
end
|
569
|
+
|
570
|
+
visit RegularExpressionNode do |node|
|
571
|
+
nil
|
572
|
+
end
|
573
|
+
|
574
|
+
visit RequiredKeywordParameterNode do |node|
|
575
|
+
nil
|
576
|
+
end
|
577
|
+
|
578
|
+
visit RequiredParameterNode do |node|
|
579
|
+
nil
|
580
|
+
end
|
581
|
+
|
582
|
+
visit RescueModifierNode do |node|
|
583
|
+
visit node.expression
|
584
|
+
visit node.rescue_expression
|
585
|
+
end
|
586
|
+
|
587
|
+
visit RescueNode do |node|
|
588
|
+
visit_each node.exceptions
|
589
|
+
visit node.reference
|
590
|
+
visit node.statements
|
591
|
+
visit node.subsequent
|
592
|
+
end
|
593
|
+
|
594
|
+
visit RestParameterNode do |node|
|
595
|
+
nil
|
596
|
+
end
|
597
|
+
|
598
|
+
visit RetryNode do |node|
|
599
|
+
nil
|
600
|
+
end
|
601
|
+
|
602
|
+
visit ReturnNode do |node|
|
603
|
+
visit node.arguments
|
604
|
+
end
|
605
|
+
|
606
|
+
visit SelfNode do |node|
|
607
|
+
nil
|
608
|
+
end
|
609
|
+
|
610
|
+
visit ShareableConstantNode do |node|
|
611
|
+
visit node.write
|
612
|
+
end
|
613
|
+
|
614
|
+
visit SingletonClassNode do |node|
|
615
|
+
visit node.expression
|
616
|
+
visit node.body
|
617
|
+
end
|
618
|
+
|
619
|
+
visit SourceEncodingNode do |node|
|
620
|
+
nil
|
621
|
+
end
|
622
|
+
|
623
|
+
visit SourceFileNode do |node|
|
624
|
+
nil
|
625
|
+
end
|
626
|
+
|
627
|
+
visit SourceLineNode do |node|
|
628
|
+
nil
|
629
|
+
end
|
630
|
+
|
631
|
+
visit SplatNode do |node|
|
632
|
+
visit node.expression
|
633
|
+
end
|
634
|
+
|
635
|
+
visit StatementsNode do |node|
|
636
|
+
visit_each node.body
|
637
|
+
end
|
638
|
+
|
639
|
+
visit StringNode do |node|
|
640
|
+
nil
|
641
|
+
end
|
642
|
+
|
643
|
+
visit SuperNode do |node|
|
644
|
+
visit node.arguments
|
645
|
+
visit node.block
|
646
|
+
end
|
647
|
+
|
648
|
+
visit SymbolNode do |node|
|
649
|
+
nil
|
650
|
+
end
|
651
|
+
|
652
|
+
visit TrueNode do |node|
|
653
|
+
nil
|
654
|
+
end
|
655
|
+
|
656
|
+
visit UndefNode do |node|
|
657
|
+
visit_each node.names
|
658
|
+
end
|
659
|
+
|
660
|
+
visit UnlessNode do |node|
|
661
|
+
visit node.predicate
|
662
|
+
visit node.statements
|
663
|
+
visit node.else_clause
|
664
|
+
end
|
665
|
+
|
666
|
+
visit UntilNode do |node|
|
667
|
+
visit node.predicate
|
668
|
+
visit node.statements
|
669
|
+
end
|
670
|
+
|
671
|
+
visit WhenNode do |node|
|
672
|
+
visit_each node.conditions
|
673
|
+
visit node.statements
|
674
|
+
end
|
675
|
+
|
676
|
+
visit WhileNode do |node|
|
677
|
+
visit node.predicate
|
678
|
+
visit node.statements
|
679
|
+
end
|
680
|
+
|
681
|
+
visit XStringNode do |node|
|
682
|
+
nil
|
683
|
+
end
|
684
|
+
|
685
|
+
visit YieldNode do |node|
|
686
|
+
visit node.arguments
|
687
|
+
end
|
688
|
+
end
|
689
|
+
end
|