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.
Files changed (164) hide show
  1. checksums.yaml +5 -5
  2. data/LICENSE.txt +21 -0
  3. data/README.md +7 -0
  4. data/lib/refract/basic_visitor.rb +40 -0
  5. data/lib/refract/converter.rb +1032 -0
  6. data/lib/refract/formatter.rb +1271 -0
  7. data/lib/refract/mutation_visitor.rb +899 -0
  8. data/lib/refract/nodes/alias_global_variable_node.rb +12 -0
  9. data/lib/refract/nodes/alias_method_node.rb +12 -0
  10. data/lib/refract/nodes/alternation_pattern_node.rb +12 -0
  11. data/lib/refract/nodes/and_node.rb +13 -0
  12. data/lib/refract/nodes/arguments_node.rb +11 -0
  13. data/lib/refract/nodes/array_node.rb +11 -0
  14. data/lib/refract/nodes/array_pattern_node.rb +14 -0
  15. data/lib/refract/nodes/assoc_node.rb +12 -0
  16. data/lib/refract/nodes/assoc_splat_node.rb +11 -0
  17. data/lib/refract/nodes/back_reference_read_node.rb +11 -0
  18. data/lib/refract/nodes/begin_node.rb +14 -0
  19. data/lib/refract/nodes/block_argument_node.rb +11 -0
  20. data/lib/refract/nodes/block_local_variable_node.rb +11 -0
  21. data/lib/refract/nodes/block_node.rb +12 -0
  22. data/lib/refract/nodes/block_parameter_node.rb +11 -0
  23. data/lib/refract/nodes/block_parameters_node.rb +12 -0
  24. data/lib/refract/nodes/break_node.rb +11 -0
  25. data/lib/refract/nodes/call_and_write_node.rb +13 -0
  26. data/lib/refract/nodes/call_node.rb +14 -0
  27. data/lib/refract/nodes/call_operator_write_node.rb +14 -0
  28. data/lib/refract/nodes/call_or_write_node.rb +13 -0
  29. data/lib/refract/nodes/call_target_node.rb +12 -0
  30. data/lib/refract/nodes/capture_pattern_node.rb +12 -0
  31. data/lib/refract/nodes/case_match_node.rb +13 -0
  32. data/lib/refract/nodes/case_node.rb +13 -0
  33. data/lib/refract/nodes/class_node.rb +13 -0
  34. data/lib/refract/nodes/class_variable_and_write_node.rb +12 -0
  35. data/lib/refract/nodes/class_variable_operator_write_node.rb +13 -0
  36. data/lib/refract/nodes/class_variable_or_write_node.rb +12 -0
  37. data/lib/refract/nodes/class_variable_read_node.rb +11 -0
  38. data/lib/refract/nodes/class_variable_target_node.rb +11 -0
  39. data/lib/refract/nodes/class_variable_write_node.rb +12 -0
  40. data/lib/refract/nodes/constant_and_write_node.rb +12 -0
  41. data/lib/refract/nodes/constant_operator_write_node.rb +13 -0
  42. data/lib/refract/nodes/constant_or_write_node.rb +12 -0
  43. data/lib/refract/nodes/constant_path.rb +12 -0
  44. data/lib/refract/nodes/constant_path_and_write_node.rb +12 -0
  45. data/lib/refract/nodes/constant_path_operator_write_node.rb +13 -0
  46. data/lib/refract/nodes/constant_path_or_write_node.rb +12 -0
  47. data/lib/refract/nodes/constant_path_target_node.rb +12 -0
  48. data/lib/refract/nodes/constant_path_write_node.rb +12 -0
  49. data/lib/refract/nodes/constant_read_node.rb +11 -0
  50. data/lib/refract/nodes/constant_target_node.rb +11 -0
  51. data/lib/refract/nodes/constant_write_node.rb +12 -0
  52. data/lib/refract/nodes/def_node.rb +14 -0
  53. data/lib/refract/nodes/defined_node.rb +11 -0
  54. data/lib/refract/nodes/else_node.rb +11 -0
  55. data/lib/refract/nodes/embedded_statements_node.rb +11 -0
  56. data/lib/refract/nodes/embedded_variable_node.rb +11 -0
  57. data/lib/refract/nodes/ensure_node.rb +11 -0
  58. data/lib/refract/nodes/false_node.rb +6 -0
  59. data/lib/refract/nodes/find_pattern_node.rb +14 -0
  60. data/lib/refract/nodes/flip_flop_node.rb +13 -0
  61. data/lib/refract/nodes/float_node.rb +11 -0
  62. data/lib/refract/nodes/for_node.rb +13 -0
  63. data/lib/refract/nodes/forwarding_arguments_node.rb +6 -0
  64. data/lib/refract/nodes/forwarding_parameter_node.rb +6 -0
  65. data/lib/refract/nodes/forwarding_super_node.rb +11 -0
  66. data/lib/refract/nodes/global_variable_and_write_node.rb +12 -0
  67. data/lib/refract/nodes/global_variable_operator_write_node.rb +13 -0
  68. data/lib/refract/nodes/global_variable_or_write_node.rb +12 -0
  69. data/lib/refract/nodes/global_variable_read_node.rb +11 -0
  70. data/lib/refract/nodes/global_variable_target_node.rb +11 -0
  71. data/lib/refract/nodes/global_variable_write_node.rb +12 -0
  72. data/lib/refract/nodes/hash_node.rb +11 -0
  73. data/lib/refract/nodes/hash_pattern_node.rb +12 -0
  74. data/lib/refract/nodes/if_node.rb +13 -0
  75. data/lib/refract/nodes/imaginary_node.rb +11 -0
  76. data/lib/refract/nodes/implicit_node.rb +11 -0
  77. data/lib/refract/nodes/implicit_rest_node.rb +6 -0
  78. data/lib/refract/nodes/in_node.rb +12 -0
  79. data/lib/refract/nodes/index_and_write_node.rb +14 -0
  80. data/lib/refract/nodes/index_operator_write_node.rb +15 -0
  81. data/lib/refract/nodes/index_or_write_node.rb +14 -0
  82. data/lib/refract/nodes/index_target_node.rb +13 -0
  83. data/lib/refract/nodes/instance_variable_and_write_node.rb +12 -0
  84. data/lib/refract/nodes/instance_variable_operator_write_node.rb +13 -0
  85. data/lib/refract/nodes/instance_variable_or_write_node.rb +12 -0
  86. data/lib/refract/nodes/instance_variable_read_node.rb +11 -0
  87. data/lib/refract/nodes/instance_variable_target_node.rb +11 -0
  88. data/lib/refract/nodes/instance_variable_write_node.rb +12 -0
  89. data/lib/refract/nodes/integer_node.rb +11 -0
  90. data/lib/refract/nodes/interpolated_match_last_line_node.rb +15 -0
  91. data/lib/refract/nodes/interpolated_regular_expression_node.rb +15 -0
  92. data/lib/refract/nodes/interpolated_string_node.rb +11 -0
  93. data/lib/refract/nodes/interpolated_symbol_node.rb +11 -0
  94. data/lib/refract/nodes/interpolated_x_string_node.rb +11 -0
  95. data/lib/refract/nodes/it_local_variable_read_node.rb +6 -0
  96. data/lib/refract/nodes/it_parameters_node.rb +6 -0
  97. data/lib/refract/nodes/keyword_hash_node.rb +11 -0
  98. data/lib/refract/nodes/keyword_rest_parameter_node.rb +11 -0
  99. data/lib/refract/nodes/lambda_node.rb +12 -0
  100. data/lib/refract/nodes/local_variable_and_write_node.rb +13 -0
  101. data/lib/refract/nodes/local_variable_operator_write_node.rb +14 -0
  102. data/lib/refract/nodes/local_variable_or_write_node.rb +13 -0
  103. data/lib/refract/nodes/local_variable_read_node.rb +11 -0
  104. data/lib/refract/nodes/local_variable_target_node.rb +11 -0
  105. data/lib/refract/nodes/local_variable_write_node.rb +12 -0
  106. data/lib/refract/nodes/match_last_line_node.rb +15 -0
  107. data/lib/refract/nodes/match_predicate_node.rb +12 -0
  108. data/lib/refract/nodes/match_required_node.rb +12 -0
  109. data/lib/refract/nodes/match_write_node.rb +12 -0
  110. data/lib/refract/nodes/missing_node.rb +6 -0
  111. data/lib/refract/nodes/module_node.rb +12 -0
  112. data/lib/refract/nodes/multi_target_node.rb +13 -0
  113. data/lib/refract/nodes/multi_write_node.rb +14 -0
  114. data/lib/refract/nodes/next_node.rb +11 -0
  115. data/lib/refract/nodes/nil_node.rb +6 -0
  116. data/lib/refract/nodes/no_keywords_parameter_node.rb +6 -0
  117. data/lib/refract/nodes/numbered_parameters_node.rb +6 -0
  118. data/lib/refract/nodes/numbered_reference_read_node.rb +11 -0
  119. data/lib/refract/nodes/optional_keyword_parameter_node.rb +12 -0
  120. data/lib/refract/nodes/optional_parameter_node.rb +12 -0
  121. data/lib/refract/nodes/or_node.rb +13 -0
  122. data/lib/refract/nodes/parameters_node.rb +17 -0
  123. data/lib/refract/nodes/parentheses_node.rb +11 -0
  124. data/lib/refract/nodes/pinned_expression_node.rb +11 -0
  125. data/lib/refract/nodes/pinned_variable_node.rb +11 -0
  126. data/lib/refract/nodes/post_execution_node.rb +11 -0
  127. data/lib/refract/nodes/pre_execution_node.rb +11 -0
  128. data/lib/refract/nodes/program_node.rb +11 -0
  129. data/lib/refract/nodes/range_node.rb +13 -0
  130. data/lib/refract/nodes/rational_node.rb +12 -0
  131. data/lib/refract/nodes/redo_node.rb +6 -0
  132. data/lib/refract/nodes/regular_expression_node.rb +15 -0
  133. data/lib/refract/nodes/required_keyword_parameter_node.rb +11 -0
  134. data/lib/refract/nodes/required_parameter_node.rb +11 -0
  135. data/lib/refract/nodes/rescue_modifier_node.rb +12 -0
  136. data/lib/refract/nodes/rescue_node.rb +14 -0
  137. data/lib/refract/nodes/rest_parameter_node.rb +11 -0
  138. data/lib/refract/nodes/retry_node.rb +6 -0
  139. data/lib/refract/nodes/return_node.rb +11 -0
  140. data/lib/refract/nodes/self_node.rb +6 -0
  141. data/lib/refract/nodes/shareable_constant_node.rb +11 -0
  142. data/lib/refract/nodes/singleton_class_node.rb +12 -0
  143. data/lib/refract/nodes/source_encoding_node.rb +6 -0
  144. data/lib/refract/nodes/source_file_node.rb +6 -0
  145. data/lib/refract/nodes/source_line_node.rb +6 -0
  146. data/lib/refract/nodes/splat_node.rb +11 -0
  147. data/lib/refract/nodes/statements_node.rb +11 -0
  148. data/lib/refract/nodes/string_node.rb +11 -0
  149. data/lib/refract/nodes/super_node.rb +12 -0
  150. data/lib/refract/nodes/symbol_node.rb +11 -0
  151. data/lib/refract/nodes/true_node.rb +6 -0
  152. data/lib/refract/nodes/undef_node.rb +11 -0
  153. data/lib/refract/nodes/unless_node.rb +13 -0
  154. data/lib/refract/nodes/until_node.rb +12 -0
  155. data/lib/refract/nodes/when_node.rb +12 -0
  156. data/lib/refract/nodes/while_node.rb +12 -0
  157. data/lib/refract/nodes/x_string_node.rb +11 -0
  158. data/lib/refract/nodes/yield_node.rb +11 -0
  159. data/lib/refract/version.rb +5 -0
  160. data/lib/refract/visitor.rb +689 -0
  161. data/lib/refract.rb +36 -50
  162. data/lib/rubocop/cop/refract/ordered_visit_methods.rb +107 -0
  163. data/lib/rubocop/cop/refract_cops.rb +3 -0
  164. 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