refract 1.0.0.beta1 → 1.0.0
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 +4 -4
- data/README.md +1 -1
- data/lib/refract/basic_visitor.rb +7 -2
- data/lib/refract/converter.rb +195 -23
- data/lib/refract/formatter.rb +83 -50
- data/lib/refract/mutation_visitor.rb +111 -115
- data/lib/refract/nodes/alias_global_variable_node.rb +3 -1
- data/lib/refract/nodes/alias_method_node.rb +3 -1
- data/lib/refract/nodes/alternation_pattern_node.rb +3 -1
- data/lib/refract/nodes/and_node.rb +3 -1
- data/lib/refract/nodes/arguments_node.rb +3 -1
- data/lib/refract/nodes/array_node.rb +3 -1
- data/lib/refract/nodes/array_pattern_node.rb +3 -1
- data/lib/refract/nodes/assoc_node.rb +3 -1
- data/lib/refract/nodes/assoc_splat_node.rb +3 -1
- data/lib/refract/nodes/back_reference_read_node.rb +3 -1
- data/lib/refract/nodes/begin_node.rb +3 -1
- data/lib/refract/nodes/block_argument_node.rb +3 -1
- data/lib/refract/nodes/block_local_variable_node.rb +3 -1
- data/lib/refract/nodes/block_node.rb +3 -1
- data/lib/refract/nodes/block_parameter_node.rb +3 -1
- data/lib/refract/nodes/block_parameters_node.rb +3 -1
- data/lib/refract/nodes/break_node.rb +3 -1
- data/lib/refract/nodes/call_and_write_node.rb +3 -1
- data/lib/refract/nodes/call_node.rb +5 -3
- data/lib/refract/nodes/call_operator_write_node.rb +3 -1
- data/lib/refract/nodes/call_or_write_node.rb +3 -1
- data/lib/refract/nodes/call_target_node.rb +3 -1
- data/lib/refract/nodes/capture_pattern_node.rb +3 -1
- data/lib/refract/nodes/case_match_node.rb +3 -1
- data/lib/refract/nodes/case_node.rb +3 -1
- data/lib/refract/nodes/class_node.rb +3 -1
- data/lib/refract/nodes/class_variable_and_write_node.rb +3 -1
- data/lib/refract/nodes/class_variable_operator_write_node.rb +3 -1
- data/lib/refract/nodes/class_variable_or_write_node.rb +3 -1
- data/lib/refract/nodes/class_variable_read_node.rb +3 -1
- data/lib/refract/nodes/class_variable_target_node.rb +3 -1
- data/lib/refract/nodes/class_variable_write_node.rb +3 -1
- data/lib/refract/nodes/constant_and_write_node.rb +3 -1
- data/lib/refract/nodes/constant_operator_write_node.rb +3 -1
- data/lib/refract/nodes/constant_or_write_node.rb +3 -1
- data/lib/refract/nodes/constant_path_and_write_node.rb +3 -1
- data/lib/refract/nodes/constant_path_node.rb +14 -0
- data/lib/refract/nodes/constant_path_operator_write_node.rb +3 -1
- data/lib/refract/nodes/constant_path_or_write_node.rb +3 -1
- data/lib/refract/nodes/constant_path_target_node.rb +3 -1
- data/lib/refract/nodes/constant_path_write_node.rb +3 -1
- data/lib/refract/nodes/constant_read_node.rb +3 -1
- data/lib/refract/nodes/constant_target_node.rb +3 -1
- data/lib/refract/nodes/constant_write_node.rb +3 -1
- data/lib/refract/nodes/def_node.rb +3 -1
- data/lib/refract/nodes/defined_node.rb +3 -1
- data/lib/refract/nodes/else_node.rb +3 -1
- data/lib/refract/nodes/embedded_statements_node.rb +3 -1
- data/lib/refract/nodes/embedded_variable_node.rb +3 -1
- data/lib/refract/nodes/ensure_node.rb +3 -1
- data/lib/refract/nodes/false_node.rb +3 -0
- data/lib/refract/nodes/find_pattern_node.rb +3 -1
- data/lib/refract/nodes/flip_flop_node.rb +3 -1
- data/lib/refract/nodes/float_node.rb +3 -1
- data/lib/refract/nodes/for_node.rb +3 -1
- data/lib/refract/nodes/forwarding_arguments_node.rb +3 -0
- data/lib/refract/nodes/forwarding_parameter_node.rb +3 -0
- data/lib/refract/nodes/forwarding_super_node.rb +3 -1
- data/lib/refract/nodes/global_variable_and_write_node.rb +3 -1
- data/lib/refract/nodes/global_variable_operator_write_node.rb +3 -1
- data/lib/refract/nodes/global_variable_or_write_node.rb +3 -1
- data/lib/refract/nodes/global_variable_read_node.rb +3 -1
- data/lib/refract/nodes/global_variable_target_node.rb +3 -1
- data/lib/refract/nodes/global_variable_write_node.rb +3 -1
- data/lib/refract/nodes/hash_node.rb +3 -1
- data/lib/refract/nodes/hash_pattern_node.rb +3 -1
- data/lib/refract/nodes/if_node.rb +5 -2
- data/lib/refract/nodes/imaginary_node.rb +3 -1
- data/lib/refract/nodes/implicit_node.rb +3 -1
- data/lib/refract/nodes/implicit_rest_node.rb +3 -0
- data/lib/refract/nodes/in_node.rb +3 -1
- data/lib/refract/nodes/index_and_write_node.rb +3 -1
- data/lib/refract/nodes/index_operator_write_node.rb +3 -1
- data/lib/refract/nodes/index_or_write_node.rb +3 -1
- data/lib/refract/nodes/index_target_node.rb +4 -2
- data/lib/refract/nodes/instance_variable_and_write_node.rb +3 -1
- data/lib/refract/nodes/instance_variable_operator_write_node.rb +3 -1
- data/lib/refract/nodes/instance_variable_or_write_node.rb +3 -1
- data/lib/refract/nodes/instance_variable_read_node.rb +3 -1
- data/lib/refract/nodes/instance_variable_target_node.rb +3 -1
- data/lib/refract/nodes/instance_variable_write_node.rb +3 -1
- data/lib/refract/nodes/integer_node.rb +3 -1
- data/lib/refract/nodes/interpolated_match_last_line_node.rb +3 -1
- data/lib/refract/nodes/interpolated_regular_expression_node.rb +3 -1
- data/lib/refract/nodes/interpolated_string_node.rb +3 -1
- data/lib/refract/nodes/interpolated_symbol_node.rb +3 -1
- data/lib/refract/nodes/interpolated_x_string_node.rb +3 -1
- data/lib/refract/nodes/it_local_variable_read_node.rb +3 -0
- data/lib/refract/nodes/it_parameters_node.rb +3 -0
- data/lib/refract/nodes/keyword_hash_node.rb +3 -1
- data/lib/refract/nodes/keyword_rest_parameter_node.rb +3 -1
- data/lib/refract/nodes/lambda_node.rb +3 -1
- data/lib/refract/nodes/local_variable_and_write_node.rb +3 -1
- data/lib/refract/nodes/local_variable_operator_write_node.rb +3 -1
- data/lib/refract/nodes/local_variable_or_write_node.rb +3 -1
- data/lib/refract/nodes/local_variable_read_node.rb +3 -1
- data/lib/refract/nodes/local_variable_target_node.rb +3 -1
- data/lib/refract/nodes/local_variable_write_node.rb +3 -1
- data/lib/refract/nodes/match_last_line_node.rb +3 -1
- data/lib/refract/nodes/match_predicate_node.rb +3 -1
- data/lib/refract/nodes/match_required_node.rb +3 -1
- data/lib/refract/nodes/match_write_node.rb +3 -1
- data/lib/refract/nodes/missing_node.rb +3 -0
- data/lib/refract/nodes/module_node.rb +3 -1
- data/lib/refract/nodes/multi_target_node.rb +3 -1
- data/lib/refract/nodes/multi_write_node.rb +3 -1
- data/lib/refract/nodes/next_node.rb +3 -1
- data/lib/refract/nodes/nil_node.rb +3 -0
- data/lib/refract/nodes/no_keywords_parameter_node.rb +3 -0
- data/lib/refract/nodes/numbered_parameters_node.rb +3 -0
- data/lib/refract/nodes/numbered_reference_read_node.rb +3 -1
- data/lib/refract/nodes/optional_keyword_parameter_node.rb +3 -1
- data/lib/refract/nodes/optional_parameter_node.rb +3 -1
- data/lib/refract/nodes/or_node.rb +3 -1
- data/lib/refract/nodes/parameters_node.rb +3 -1
- data/lib/refract/nodes/parentheses_node.rb +3 -1
- data/lib/refract/nodes/pinned_expression_node.rb +3 -1
- data/lib/refract/nodes/pinned_variable_node.rb +3 -1
- data/lib/refract/nodes/post_execution_node.rb +3 -1
- data/lib/refract/nodes/pre_execution_node.rb +3 -1
- data/lib/refract/nodes/program_node.rb +4 -2
- data/lib/refract/nodes/range_node.rb +3 -1
- data/lib/refract/nodes/rational_node.rb +3 -1
- data/lib/refract/nodes/redo_node.rb +3 -0
- data/lib/refract/nodes/regular_expression_node.rb +3 -1
- data/lib/refract/nodes/required_keyword_parameter_node.rb +3 -1
- data/lib/refract/nodes/required_parameter_node.rb +3 -1
- data/lib/refract/nodes/rescue_modifier_node.rb +3 -1
- data/lib/refract/nodes/rescue_node.rb +3 -1
- data/lib/refract/nodes/rest_parameter_node.rb +3 -1
- data/lib/refract/nodes/retry_node.rb +3 -0
- data/lib/refract/nodes/return_node.rb +3 -1
- data/lib/refract/nodes/self_node.rb +3 -0
- data/lib/refract/nodes/shareable_constant_node.rb +3 -1
- data/lib/refract/nodes/singleton_class_node.rb +3 -1
- data/lib/refract/nodes/source_encoding_node.rb +3 -0
- data/lib/refract/nodes/source_file_node.rb +3 -0
- data/lib/refract/nodes/source_line_node.rb +3 -0
- data/lib/refract/nodes/splat_node.rb +3 -1
- data/lib/refract/nodes/statements_node.rb +3 -1
- data/lib/refract/nodes/string_node.rb +3 -1
- data/lib/refract/nodes/super_node.rb +3 -1
- data/lib/refract/nodes/symbol_node.rb +3 -1
- data/lib/refract/nodes/true_node.rb +3 -0
- data/lib/refract/nodes/undef_node.rb +3 -1
- data/lib/refract/nodes/unless_node.rb +5 -2
- data/lib/refract/nodes/until_node.rb +5 -2
- data/lib/refract/nodes/when_node.rb +3 -1
- data/lib/refract/nodes/while_node.rb +5 -2
- data/lib/refract/nodes/x_string_node.rb +3 -1
- data/lib/refract/nodes/yield_node.rb +3 -1
- data/lib/refract/version.rb +1 -1
- data/lib/refract/visitor.rb +4 -4
- data/lib/refract.rb +11 -2
- metadata +2 -2
- data/lib/refract/nodes/constant_path.rb +0 -12
data/lib/refract/converter.rb
CHANGED
@@ -16,6 +16,7 @@ module Refract
|
|
16
16
|
|
17
17
|
visit Prism::AliasGlobalVariableNode do |node|
|
18
18
|
AliasGlobalVariableNode.new(
|
19
|
+
prism_node: node,
|
19
20
|
new_name: visit(node.new_name),
|
20
21
|
old_name: visit(node.old_name),
|
21
22
|
)
|
@@ -23,6 +24,7 @@ module Refract
|
|
23
24
|
|
24
25
|
visit Prism::AliasMethodNode do |node|
|
25
26
|
AliasMethodNode.new(
|
27
|
+
prism_node: node,
|
26
28
|
new_name: visit(node.new_name),
|
27
29
|
old_name: visit(node.old_name),
|
28
30
|
)
|
@@ -30,6 +32,7 @@ module Refract
|
|
30
32
|
|
31
33
|
visit Prism::AlternationPatternNode do |node|
|
32
34
|
AlternationPatternNode.new(
|
35
|
+
prism_node: node,
|
33
36
|
left: visit(node.left),
|
34
37
|
right: visit(node.right),
|
35
38
|
)
|
@@ -37,26 +40,30 @@ module Refract
|
|
37
40
|
|
38
41
|
visit Prism::AndNode do |node|
|
39
42
|
AndNode.new(
|
43
|
+
prism_node: node,
|
40
44
|
left: visit(node.left),
|
41
|
-
operator: node.
|
45
|
+
operator: node.operator,
|
42
46
|
right: visit(node.right),
|
43
47
|
)
|
44
48
|
end
|
45
49
|
|
46
50
|
visit Prism::ArgumentsNode do |node|
|
47
51
|
ArgumentsNode.new(
|
52
|
+
prism_node: node,
|
48
53
|
arguments: node.arguments&.map { |n| visit(n) },
|
49
54
|
)
|
50
55
|
end
|
51
56
|
|
52
57
|
visit Prism::ArrayNode do |node|
|
53
58
|
ArrayNode.new(
|
59
|
+
prism_node: node,
|
54
60
|
elements: node.elements&.map { |n| visit(n) },
|
55
61
|
)
|
56
62
|
end
|
57
63
|
|
58
64
|
visit Prism::ArrayPatternNode do |node|
|
59
65
|
ArrayPatternNode.new(
|
66
|
+
prism_node: node,
|
60
67
|
constant: visit(node.constant),
|
61
68
|
requireds: node.requireds&.map { |n| visit(n) },
|
62
69
|
rest: visit(node.rest),
|
@@ -66,6 +73,7 @@ module Refract
|
|
66
73
|
|
67
74
|
visit Prism::AssocNode do |node|
|
68
75
|
AssocNode.new(
|
76
|
+
prism_node: node,
|
69
77
|
key: visit(node.key),
|
70
78
|
value: visit(node.value),
|
71
79
|
)
|
@@ -73,18 +81,21 @@ module Refract
|
|
73
81
|
|
74
82
|
visit Prism::AssocSplatNode do |node|
|
75
83
|
AssocSplatNode.new(
|
84
|
+
prism_node: node,
|
76
85
|
value: visit(node.value),
|
77
86
|
)
|
78
87
|
end
|
79
88
|
|
80
89
|
visit Prism::BackReferenceReadNode do |node|
|
81
90
|
BackReferenceReadNode.new(
|
91
|
+
prism_node: node,
|
82
92
|
name: node.name,
|
83
93
|
)
|
84
94
|
end
|
85
95
|
|
86
96
|
visit Prism::BeginNode do |node|
|
87
97
|
BeginNode.new(
|
98
|
+
prism_node: node,
|
88
99
|
statements: visit(node.statements),
|
89
100
|
rescue_clause: visit(node.rescue_clause),
|
90
101
|
else_clause: visit(node.else_clause),
|
@@ -94,18 +105,21 @@ module Refract
|
|
94
105
|
|
95
106
|
visit Prism::BlockArgumentNode do |node|
|
96
107
|
BlockArgumentNode.new(
|
108
|
+
prism_node: node,
|
97
109
|
expression: visit(node.expression),
|
98
110
|
)
|
99
111
|
end
|
100
112
|
|
101
113
|
visit Prism::BlockLocalVariableNode do |node|
|
102
114
|
BlockLocalVariableNode.new(
|
115
|
+
prism_node: node,
|
103
116
|
name: node.name,
|
104
117
|
)
|
105
118
|
end
|
106
119
|
|
107
120
|
visit Prism::BlockNode do |node|
|
108
121
|
BlockNode.new(
|
122
|
+
prism_node: node,
|
109
123
|
parameters: visit(node.parameters),
|
110
124
|
body: visit(node.body),
|
111
125
|
)
|
@@ -113,12 +127,14 @@ module Refract
|
|
113
127
|
|
114
128
|
visit Prism::BlockParameterNode do |node|
|
115
129
|
BlockParameterNode.new(
|
130
|
+
prism_node: node,
|
116
131
|
name: node.name,
|
117
132
|
)
|
118
133
|
end
|
119
134
|
|
120
135
|
visit Prism::BlockParametersNode do |node|
|
121
136
|
BlockParametersNode.new(
|
137
|
+
prism_node: node,
|
122
138
|
parameters: visit(node.parameters),
|
123
139
|
locals: node.locals&.map { |n| visit(n) },
|
124
140
|
)
|
@@ -126,12 +142,14 @@ module Refract
|
|
126
142
|
|
127
143
|
visit Prism::BreakNode do |node|
|
128
144
|
BreakNode.new(
|
145
|
+
prism_node: node,
|
129
146
|
arguments: visit(node.arguments),
|
130
147
|
)
|
131
148
|
end
|
132
149
|
|
133
150
|
visit Prism::CallAndWriteNode do |node|
|
134
151
|
CallAndWriteNode.new(
|
152
|
+
prism_node: node,
|
135
153
|
receiver: visit(node.receiver),
|
136
154
|
read_name: node.read_name,
|
137
155
|
value: visit(node.value),
|
@@ -140,8 +158,9 @@ module Refract
|
|
140
158
|
|
141
159
|
visit Prism::CallNode do |node|
|
142
160
|
CallNode.new(
|
161
|
+
prism_node: node,
|
143
162
|
receiver: visit(node.receiver),
|
144
|
-
|
163
|
+
name: node.name,
|
145
164
|
arguments: visit(node.arguments),
|
146
165
|
block: visit(node.block),
|
147
166
|
)
|
@@ -149,6 +168,7 @@ module Refract
|
|
149
168
|
|
150
169
|
visit Prism::CallOperatorWriteNode do |node|
|
151
170
|
CallOperatorWriteNode.new(
|
171
|
+
prism_node: node,
|
152
172
|
receiver: visit(node.receiver),
|
153
173
|
read_name: node.read_name,
|
154
174
|
binary_operator: node.binary_operator,
|
@@ -158,6 +178,7 @@ module Refract
|
|
158
178
|
|
159
179
|
visit Prism::CallOrWriteNode do |node|
|
160
180
|
CallOrWriteNode.new(
|
181
|
+
prism_node: node,
|
161
182
|
receiver: visit(node.receiver),
|
162
183
|
read_name: node.read_name,
|
163
184
|
value: visit(node.value),
|
@@ -166,6 +187,7 @@ module Refract
|
|
166
187
|
|
167
188
|
visit Prism::CallTargetNode do |node|
|
168
189
|
CallTargetNode.new(
|
190
|
+
prism_node: node,
|
169
191
|
receiver: visit(node.receiver),
|
170
192
|
name: node.name,
|
171
193
|
)
|
@@ -173,6 +195,7 @@ module Refract
|
|
173
195
|
|
174
196
|
visit Prism::CapturePatternNode do |node|
|
175
197
|
CapturePatternNode.new(
|
198
|
+
prism_node: node,
|
176
199
|
value: visit(node.value),
|
177
200
|
target: visit(node.target),
|
178
201
|
)
|
@@ -180,6 +203,7 @@ module Refract
|
|
180
203
|
|
181
204
|
visit Prism::CaseMatchNode do |node|
|
182
205
|
CaseMatchNode.new(
|
206
|
+
prism_node: node,
|
183
207
|
predicate: visit(node.predicate),
|
184
208
|
conditions: node.conditions&.map { |n| visit(n) },
|
185
209
|
else_clause: visit(node.else_clause),
|
@@ -188,6 +212,7 @@ module Refract
|
|
188
212
|
|
189
213
|
visit Prism::CaseNode do |node|
|
190
214
|
CaseNode.new(
|
215
|
+
prism_node: node,
|
191
216
|
predicate: visit(node.predicate),
|
192
217
|
conditions: node.conditions&.map { |n| visit(n) },
|
193
218
|
else_clause: visit(node.else_clause),
|
@@ -196,6 +221,7 @@ module Refract
|
|
196
221
|
|
197
222
|
visit Prism::ClassNode do |node|
|
198
223
|
ClassNode.new(
|
224
|
+
prism_node: node,
|
199
225
|
constant_path: visit(node.constant_path),
|
200
226
|
superclass: visit(node.superclass),
|
201
227
|
body: visit(node.body),
|
@@ -204,6 +230,7 @@ module Refract
|
|
204
230
|
|
205
231
|
visit Prism::ClassVariableAndWriteNode do |node|
|
206
232
|
ClassVariableAndWriteNode.new(
|
233
|
+
prism_node: node,
|
207
234
|
name: node.name,
|
208
235
|
value: visit(node.value),
|
209
236
|
)
|
@@ -211,6 +238,7 @@ module Refract
|
|
211
238
|
|
212
239
|
visit Prism::ClassVariableOperatorWriteNode do |node|
|
213
240
|
ClassVariableOperatorWriteNode.new(
|
241
|
+
prism_node: node,
|
214
242
|
name: node.name,
|
215
243
|
value: visit(node.value),
|
216
244
|
binary_operator: node.binary_operator,
|
@@ -219,6 +247,7 @@ module Refract
|
|
219
247
|
|
220
248
|
visit Prism::ClassVariableOrWriteNode do |node|
|
221
249
|
ClassVariableOrWriteNode.new(
|
250
|
+
prism_node: node,
|
222
251
|
name: node.name,
|
223
252
|
value: visit(node.value),
|
224
253
|
)
|
@@ -226,18 +255,21 @@ module Refract
|
|
226
255
|
|
227
256
|
visit Prism::ClassVariableReadNode do |node|
|
228
257
|
ClassVariableReadNode.new(
|
258
|
+
prism_node: node,
|
229
259
|
name: node.name,
|
230
260
|
)
|
231
261
|
end
|
232
262
|
|
233
263
|
visit Prism::ClassVariableTargetNode do |node|
|
234
264
|
ClassVariableTargetNode.new(
|
265
|
+
prism_node: node,
|
235
266
|
name: node.name,
|
236
267
|
)
|
237
268
|
end
|
238
269
|
|
239
270
|
visit Prism::ClassVariableWriteNode do |node|
|
240
271
|
ClassVariableWriteNode.new(
|
272
|
+
prism_node: node,
|
241
273
|
name: node.name,
|
242
274
|
value: visit(node.value),
|
243
275
|
)
|
@@ -245,6 +277,7 @@ module Refract
|
|
245
277
|
|
246
278
|
visit Prism::ConstantAndWriteNode do |node|
|
247
279
|
ConstantAndWriteNode.new(
|
280
|
+
prism_node: node,
|
248
281
|
name: node.name,
|
249
282
|
value: visit(node.value),
|
250
283
|
)
|
@@ -252,6 +285,7 @@ module Refract
|
|
252
285
|
|
253
286
|
visit Prism::ConstantOperatorWriteNode do |node|
|
254
287
|
ConstantOperatorWriteNode.new(
|
288
|
+
prism_node: node,
|
255
289
|
name: node.name,
|
256
290
|
value: visit(node.value),
|
257
291
|
binary_operator: node.binary_operator,
|
@@ -260,6 +294,7 @@ module Refract
|
|
260
294
|
|
261
295
|
visit Prism::ConstantOrWriteNode do |node|
|
262
296
|
ConstantOrWriteNode.new(
|
297
|
+
prism_node: node,
|
263
298
|
name: node.name,
|
264
299
|
value: visit(node.value),
|
265
300
|
)
|
@@ -267,13 +302,15 @@ module Refract
|
|
267
302
|
|
268
303
|
visit Prism::ConstantPathAndWriteNode do |node|
|
269
304
|
ConstantPathAndWriteNode.new(
|
305
|
+
prism_node: node,
|
270
306
|
target: visit(node.target),
|
271
307
|
value: visit(node.value),
|
272
308
|
)
|
273
309
|
end
|
274
310
|
|
275
311
|
visit Prism::ConstantPathNode do |node|
|
276
|
-
|
312
|
+
ConstantPathNode.new(
|
313
|
+
prism_node: node,
|
277
314
|
parent: visit(node.parent),
|
278
315
|
name: node.name,
|
279
316
|
)
|
@@ -281,6 +318,7 @@ module Refract
|
|
281
318
|
|
282
319
|
visit Prism::ConstantPathOperatorWriteNode do |node|
|
283
320
|
ConstantPathOperatorWriteNode.new(
|
321
|
+
prism_node: node,
|
284
322
|
target: visit(node.target),
|
285
323
|
value: visit(node.value),
|
286
324
|
binary_operator: node.binary_operator,
|
@@ -289,6 +327,7 @@ module Refract
|
|
289
327
|
|
290
328
|
visit Prism::ConstantPathOrWriteNode do |node|
|
291
329
|
ConstantPathOrWriteNode.new(
|
330
|
+
prism_node: node,
|
292
331
|
target: visit(node.target),
|
293
332
|
value: visit(node.value),
|
294
333
|
)
|
@@ -296,6 +335,7 @@ module Refract
|
|
296
335
|
|
297
336
|
visit Prism::ConstantPathTargetNode do |node|
|
298
337
|
ConstantPathTargetNode.new(
|
338
|
+
prism_node: node,
|
299
339
|
parent: visit(node.parent),
|
300
340
|
name: node.name,
|
301
341
|
)
|
@@ -303,6 +343,7 @@ module Refract
|
|
303
343
|
|
304
344
|
visit Prism::ConstantPathWriteNode do |node|
|
305
345
|
ConstantPathWriteNode.new(
|
346
|
+
prism_node: node,
|
306
347
|
target: visit(node.target),
|
307
348
|
value: visit(node.value),
|
308
349
|
)
|
@@ -310,18 +351,21 @@ module Refract
|
|
310
351
|
|
311
352
|
visit Prism::ConstantReadNode do |node|
|
312
353
|
ConstantReadNode.new(
|
313
|
-
|
314
|
-
|
354
|
+
prism_node: node,
|
355
|
+
name: node.name,
|
356
|
+
)
|
315
357
|
end
|
316
358
|
|
317
359
|
visit Prism::ConstantTargetNode do |node|
|
318
360
|
ConstantTargetNode.new(
|
361
|
+
prism_node: node,
|
319
362
|
name: node.name,
|
320
363
|
)
|
321
364
|
end
|
322
365
|
|
323
366
|
visit Prism::ConstantWriteNode do |node|
|
324
367
|
ConstantWriteNode.new(
|
368
|
+
prism_node: node,
|
325
369
|
name: node.name,
|
326
370
|
value: visit(node.value),
|
327
371
|
)
|
@@ -329,6 +373,7 @@ module Refract
|
|
329
373
|
|
330
374
|
visit Prism::DefNode do |node|
|
331
375
|
DefNode.new(
|
376
|
+
prism_node: node,
|
332
377
|
name: node.name,
|
333
378
|
receiver: visit(node.receiver),
|
334
379
|
parameters: visit(node.parameters),
|
@@ -338,40 +383,48 @@ module Refract
|
|
338
383
|
|
339
384
|
visit Prism::DefinedNode do |node|
|
340
385
|
DefinedNode.new(
|
386
|
+
prism_node: node,
|
341
387
|
value: visit(node.value),
|
342
388
|
)
|
343
389
|
end
|
344
390
|
|
345
391
|
visit Prism::ElseNode do |node|
|
346
392
|
ElseNode.new(
|
393
|
+
prism_node: node,
|
347
394
|
statements: visit(node.statements),
|
348
395
|
)
|
349
396
|
end
|
350
397
|
|
351
398
|
visit Prism::EmbeddedStatementsNode do |node|
|
352
399
|
EmbeddedStatementsNode.new(
|
400
|
+
prism_node: node,
|
353
401
|
statements: visit(node.statements),
|
354
402
|
)
|
355
403
|
end
|
356
404
|
|
357
405
|
visit Prism::EmbeddedVariableNode do |node|
|
358
406
|
EmbeddedVariableNode.new(
|
407
|
+
prism_node: node,
|
359
408
|
variable: visit(node.variable),
|
360
409
|
)
|
361
410
|
end
|
362
411
|
|
363
412
|
visit Prism::EnsureNode do |node|
|
364
413
|
EnsureNode.new(
|
414
|
+
prism_node: node,
|
365
415
|
statements: visit(node.statements),
|
366
416
|
)
|
367
417
|
end
|
368
418
|
|
369
419
|
visit Prism::FalseNode do |node|
|
370
|
-
FalseNode.new
|
420
|
+
FalseNode.new(
|
421
|
+
prism_node: node,
|
422
|
+
)
|
371
423
|
end
|
372
424
|
|
373
425
|
visit Prism::FindPatternNode do |node|
|
374
426
|
FindPatternNode.new(
|
427
|
+
prism_node: node,
|
375
428
|
constant: visit(node.constant),
|
376
429
|
left: visit(node.left),
|
377
430
|
requireds: node.requireds.map { |n| visit(n) },
|
@@ -381,6 +434,7 @@ module Refract
|
|
381
434
|
|
382
435
|
visit Prism::FlipFlopNode do |node|
|
383
436
|
FlipFlopNode.new(
|
437
|
+
prism_node: node,
|
384
438
|
left: visit(node.left),
|
385
439
|
right: visit(node.right),
|
386
440
|
exclude_end: node.exclude_end?,
|
@@ -389,12 +443,14 @@ module Refract
|
|
389
443
|
|
390
444
|
visit Prism::FloatNode do |node|
|
391
445
|
FloatNode.new(
|
446
|
+
prism_node: node,
|
392
447
|
value: node.slice,
|
393
448
|
)
|
394
449
|
end
|
395
450
|
|
396
451
|
visit Prism::ForNode do |node|
|
397
452
|
ForNode.new(
|
453
|
+
prism_node: node,
|
398
454
|
index: visit(node.index),
|
399
455
|
collection: visit(node.collection),
|
400
456
|
statements: visit(node.statements),
|
@@ -402,21 +458,27 @@ module Refract
|
|
402
458
|
end
|
403
459
|
|
404
460
|
visit Prism::ForwardingArgumentsNode do |node|
|
405
|
-
ForwardingArgumentsNode.new
|
461
|
+
ForwardingArgumentsNode.new(
|
462
|
+
prism_node: node,
|
463
|
+
)
|
406
464
|
end
|
407
465
|
|
408
466
|
visit Prism::ForwardingParameterNode do |node|
|
409
|
-
ForwardingParameterNode.new
|
467
|
+
ForwardingParameterNode.new(
|
468
|
+
prism_node: node,
|
469
|
+
)
|
410
470
|
end
|
411
471
|
|
412
472
|
visit Prism::ForwardingSuperNode do |node|
|
413
473
|
ForwardingSuperNode.new(
|
474
|
+
prism_node: node,
|
414
475
|
block: visit(node.block),
|
415
476
|
)
|
416
477
|
end
|
417
478
|
|
418
479
|
visit Prism::GlobalVariableAndWriteNode do |node|
|
419
480
|
GlobalVariableAndWriteNode.new(
|
481
|
+
prism_node: node,
|
420
482
|
name: node.name,
|
421
483
|
value: visit(node.value),
|
422
484
|
)
|
@@ -424,6 +486,7 @@ module Refract
|
|
424
486
|
|
425
487
|
visit Prism::GlobalVariableOperatorWriteNode do |node|
|
426
488
|
GlobalVariableOperatorWriteNode.new(
|
489
|
+
prism_node: node,
|
427
490
|
name: node.name,
|
428
491
|
value: visit(node.value),
|
429
492
|
binary_operator: node.binary_operator,
|
@@ -432,6 +495,7 @@ module Refract
|
|
432
495
|
|
433
496
|
visit Prism::GlobalVariableOrWriteNode do |node|
|
434
497
|
GlobalVariableOrWriteNode.new(
|
498
|
+
prism_node: node,
|
435
499
|
name: node.name,
|
436
500
|
value: visit(node.value),
|
437
501
|
)
|
@@ -439,18 +503,21 @@ module Refract
|
|
439
503
|
|
440
504
|
visit Prism::GlobalVariableReadNode do |node|
|
441
505
|
GlobalVariableReadNode.new(
|
506
|
+
prism_node: node,
|
442
507
|
name: node.name,
|
443
508
|
)
|
444
509
|
end
|
445
510
|
|
446
511
|
visit Prism::GlobalVariableTargetNode do |node|
|
447
512
|
GlobalVariableTargetNode.new(
|
513
|
+
prism_node: node,
|
448
514
|
name: node.name,
|
449
515
|
)
|
450
516
|
end
|
451
517
|
|
452
518
|
visit Prism::GlobalVariableWriteNode do |node|
|
453
519
|
GlobalVariableWriteNode.new(
|
520
|
+
prism_node: node,
|
454
521
|
name: node.name,
|
455
522
|
value: visit(node.value),
|
456
523
|
)
|
@@ -458,12 +525,14 @@ module Refract
|
|
458
525
|
|
459
526
|
visit Prism::HashNode do |node|
|
460
527
|
HashNode.new(
|
528
|
+
prism_node: node,
|
461
529
|
elements: node.elements&.map { |n| visit(n) },
|
462
530
|
)
|
463
531
|
end
|
464
532
|
|
465
533
|
visit Prism::HashPatternNode do |node|
|
466
534
|
HashPatternNode.new(
|
535
|
+
prism_node: node,
|
467
536
|
elements: node.elements&.map { |n| visit(n) },
|
468
537
|
rest: visit(node.rest),
|
469
538
|
)
|
@@ -471,30 +540,37 @@ module Refract
|
|
471
540
|
|
472
541
|
visit Prism::IfNode do |node|
|
473
542
|
IfNode.new(
|
543
|
+
prism_node: node,
|
474
544
|
predicate: visit(node.predicate),
|
475
545
|
statements: visit(node.statements),
|
476
546
|
subsequent: visit(node.subsequent),
|
547
|
+
inline: (node.predicate && node.statements && node.predicate.location.start_offset > node.statements.location.start_offset),
|
477
548
|
)
|
478
549
|
end
|
479
550
|
|
480
551
|
visit Prism::ImaginaryNode do |node|
|
481
552
|
ImaginaryNode.new(
|
553
|
+
prism_node: node,
|
482
554
|
numeric: visit(node.numeric),
|
483
555
|
)
|
484
556
|
end
|
485
557
|
|
486
558
|
visit Prism::ImplicitNode do |node|
|
487
559
|
ImplicitNode.new(
|
560
|
+
prism_node: node,
|
488
561
|
value: visit(node.value),
|
489
562
|
)
|
490
563
|
end
|
491
564
|
|
492
565
|
visit Prism::ImplicitRestNode do |node|
|
493
|
-
ImplicitRestNode.new
|
566
|
+
ImplicitRestNode.new(
|
567
|
+
prism_node: node,
|
568
|
+
)
|
494
569
|
end
|
495
570
|
|
496
571
|
visit Prism::InNode do |node|
|
497
572
|
InNode.new(
|
573
|
+
prism_node: node,
|
498
574
|
pattern: visit(node.pattern),
|
499
575
|
statements: visit(node.statements),
|
500
576
|
)
|
@@ -502,6 +578,7 @@ module Refract
|
|
502
578
|
|
503
579
|
visit Prism::IndexAndWriteNode do |node|
|
504
580
|
IndexAndWriteNode.new(
|
581
|
+
prism_node: node,
|
505
582
|
receiver: visit(node.receiver),
|
506
583
|
arguments: visit(node.arguments),
|
507
584
|
block: visit(node.block),
|
@@ -511,6 +588,7 @@ module Refract
|
|
511
588
|
|
512
589
|
visit Prism::IndexOperatorWriteNode do |node|
|
513
590
|
IndexOperatorWriteNode.new(
|
591
|
+
prism_node: node,
|
514
592
|
receiver: visit(node.receiver),
|
515
593
|
arguments: visit(node.arguments),
|
516
594
|
block: visit(node.block),
|
@@ -521,6 +599,7 @@ module Refract
|
|
521
599
|
|
522
600
|
visit Prism::IndexOrWriteNode do |node|
|
523
601
|
IndexOrWriteNode.new(
|
602
|
+
prism_node: node,
|
524
603
|
receiver: visit(node.receiver),
|
525
604
|
arguments: visit(node.arguments),
|
526
605
|
block: visit(node.block),
|
@@ -530,6 +609,7 @@ module Refract
|
|
530
609
|
|
531
610
|
visit Prism::IndexTargetNode do |node|
|
532
611
|
IndexTargetNode.new(
|
612
|
+
prism_node: node,
|
533
613
|
receiver: visit(node.receiver),
|
534
614
|
arguments: visit(node.arguments),
|
535
615
|
block: visit(node.block),
|
@@ -538,6 +618,7 @@ module Refract
|
|
538
618
|
|
539
619
|
visit Prism::InstanceVariableAndWriteNode do |node|
|
540
620
|
InstanceVariableAndWriteNode.new(
|
621
|
+
prism_node: node,
|
541
622
|
name: node.name,
|
542
623
|
value: visit(node.value),
|
543
624
|
)
|
@@ -545,6 +626,7 @@ module Refract
|
|
545
626
|
|
546
627
|
visit Prism::InstanceVariableOperatorWriteNode do |node|
|
547
628
|
InstanceVariableOperatorWriteNode.new(
|
629
|
+
prism_node: node,
|
548
630
|
name: node.name,
|
549
631
|
value: visit(node.value),
|
550
632
|
binary_operator: node.binary_operator,
|
@@ -553,6 +635,7 @@ module Refract
|
|
553
635
|
|
554
636
|
visit Prism::InstanceVariableOrWriteNode do |node|
|
555
637
|
InstanceVariableOrWriteNode.new(
|
638
|
+
prism_node: node,
|
556
639
|
name: node.name,
|
557
640
|
value: visit(node.value),
|
558
641
|
)
|
@@ -560,18 +643,21 @@ module Refract
|
|
560
643
|
|
561
644
|
visit Prism::InstanceVariableReadNode do |node|
|
562
645
|
InstanceVariableReadNode.new(
|
646
|
+
prism_node: node,
|
563
647
|
name: node.name,
|
564
648
|
)
|
565
649
|
end
|
566
650
|
|
567
651
|
visit Prism::InstanceVariableTargetNode do |node|
|
568
652
|
InstanceVariableTargetNode.new(
|
653
|
+
prism_node: node,
|
569
654
|
name: node.name,
|
570
655
|
)
|
571
656
|
end
|
572
657
|
|
573
658
|
visit Prism::InstanceVariableWriteNode do |node|
|
574
659
|
InstanceVariableWriteNode.new(
|
660
|
+
prism_node: node,
|
575
661
|
name: node.name,
|
576
662
|
value: visit(node.value),
|
577
663
|
)
|
@@ -579,12 +665,14 @@ module Refract
|
|
579
665
|
|
580
666
|
visit Prism::IntegerNode do |node|
|
581
667
|
IntegerNode.new(
|
668
|
+
prism_node: node,
|
582
669
|
value: node.value,
|
583
670
|
)
|
584
671
|
end
|
585
672
|
|
586
673
|
visit Prism::InterpolatedMatchLastLineNode do |node|
|
587
674
|
InterpolatedMatchLastLineNode.new(
|
675
|
+
prism_node: node,
|
588
676
|
parts: node.parts&.map { |n| visit(n) },
|
589
677
|
ignore_case: node.ignore_case?,
|
590
678
|
multi_line: node.multi_line?,
|
@@ -595,6 +683,7 @@ module Refract
|
|
595
683
|
|
596
684
|
visit Prism::InterpolatedRegularExpressionNode do |node|
|
597
685
|
InterpolatedRegularExpressionNode.new(
|
686
|
+
prism_node: node,
|
598
687
|
parts: node.parts.map { |part| visit(part) },
|
599
688
|
ignore_case: node.ignore_case?,
|
600
689
|
multi_line: node.multi_line?,
|
@@ -605,44 +694,54 @@ module Refract
|
|
605
694
|
|
606
695
|
visit Prism::InterpolatedStringNode do |node|
|
607
696
|
InterpolatedStringNode.new(
|
697
|
+
prism_node: node,
|
608
698
|
parts: node.parts&.map { |n| visit(n) },
|
609
699
|
)
|
610
700
|
end
|
611
701
|
|
612
702
|
visit Prism::InterpolatedSymbolNode do |node|
|
613
703
|
InterpolatedSymbolNode.new(
|
704
|
+
prism_node: node,
|
614
705
|
parts: node.parts.map { |part| visit(part) },
|
615
706
|
)
|
616
707
|
end
|
617
708
|
|
618
709
|
visit Prism::InterpolatedXStringNode do |node|
|
619
710
|
InterpolatedXStringNode.new(
|
711
|
+
prism_node: node,
|
620
712
|
parts: node.parts.map { |part| visit(part) },
|
621
713
|
)
|
622
714
|
end
|
623
715
|
|
624
716
|
visit Prism::ItLocalVariableReadNode do |node|
|
625
|
-
ItLocalVariableReadNode.new
|
717
|
+
ItLocalVariableReadNode.new(
|
718
|
+
prism_node: node,
|
719
|
+
)
|
626
720
|
end
|
627
721
|
|
628
722
|
visit Prism::ItParametersNode do |node|
|
629
|
-
ItParametersNode.new
|
723
|
+
ItParametersNode.new(
|
724
|
+
prism_node: node,
|
725
|
+
)
|
630
726
|
end
|
631
727
|
|
632
728
|
visit Prism::KeywordHashNode do |node|
|
633
729
|
KeywordHashNode.new(
|
730
|
+
prism_node: node,
|
634
731
|
elements: node.elements&.map { |n| visit(n) },
|
635
732
|
)
|
636
733
|
end
|
637
734
|
|
638
735
|
visit Prism::KeywordRestParameterNode do |node|
|
639
736
|
KeywordRestParameterNode.new(
|
737
|
+
prism_node: node,
|
640
738
|
name: node.name,
|
641
739
|
)
|
642
740
|
end
|
643
741
|
|
644
742
|
visit Prism::LambdaNode do |node|
|
645
743
|
LambdaNode.new(
|
744
|
+
prism_node: node,
|
646
745
|
parameters: visit(node.parameters),
|
647
746
|
body: visit(node.body),
|
648
747
|
)
|
@@ -650,6 +749,7 @@ module Refract
|
|
650
749
|
|
651
750
|
visit Prism::LocalVariableAndWriteNode do |node|
|
652
751
|
LocalVariableAndWriteNode.new(
|
752
|
+
prism_node: node,
|
653
753
|
name: node.name,
|
654
754
|
value: visit(node.value),
|
655
755
|
depth: node.depth,
|
@@ -658,6 +758,7 @@ module Refract
|
|
658
758
|
|
659
759
|
visit Prism::LocalVariableOperatorWriteNode do |node|
|
660
760
|
LocalVariableOperatorWriteNode.new(
|
761
|
+
prism_node: node,
|
661
762
|
name: node.name,
|
662
763
|
value: visit(node.value),
|
663
764
|
binary_operator: node.binary_operator,
|
@@ -667,6 +768,7 @@ module Refract
|
|
667
768
|
|
668
769
|
visit Prism::LocalVariableOrWriteNode do |node|
|
669
770
|
LocalVariableOrWriteNode.new(
|
771
|
+
prism_node: node,
|
670
772
|
name: node.name,
|
671
773
|
value: visit(node.value),
|
672
774
|
depth: node.depth,
|
@@ -675,18 +777,21 @@ module Refract
|
|
675
777
|
|
676
778
|
visit Prism::LocalVariableReadNode do |node|
|
677
779
|
LocalVariableReadNode.new(
|
780
|
+
prism_node: node,
|
678
781
|
name: node.name,
|
679
782
|
)
|
680
783
|
end
|
681
784
|
|
682
785
|
visit Prism::LocalVariableTargetNode do |node|
|
683
786
|
LocalVariableTargetNode.new(
|
787
|
+
prism_node: node,
|
684
788
|
name: node.name,
|
685
789
|
)
|
686
790
|
end
|
687
791
|
|
688
792
|
visit Prism::LocalVariableWriteNode do |node|
|
689
793
|
LocalVariableWriteNode.new(
|
794
|
+
prism_node: node,
|
690
795
|
name: node.name,
|
691
796
|
value: visit(node.value),
|
692
797
|
)
|
@@ -694,6 +799,7 @@ module Refract
|
|
694
799
|
|
695
800
|
visit Prism::MatchLastLineNode do |node|
|
696
801
|
MatchLastLineNode.new(
|
802
|
+
prism_node: node,
|
697
803
|
unescaped: node.unescaped,
|
698
804
|
ignore_case: node.ignore_case?,
|
699
805
|
multi_line: node.multi_line?,
|
@@ -704,6 +810,7 @@ module Refract
|
|
704
810
|
|
705
811
|
visit Prism::MatchPredicateNode do |node|
|
706
812
|
MatchPredicateNode.new(
|
813
|
+
prism_node: node,
|
707
814
|
value: visit(node.value),
|
708
815
|
pattern: visit(node.pattern),
|
709
816
|
)
|
@@ -711,6 +818,7 @@ module Refract
|
|
711
818
|
|
712
819
|
visit Prism::MatchRequiredNode do |node|
|
713
820
|
MatchRequiredNode.new(
|
821
|
+
prism_node: node,
|
714
822
|
value: visit(node.value),
|
715
823
|
pattern: visit(node.pattern),
|
716
824
|
)
|
@@ -718,17 +826,21 @@ module Refract
|
|
718
826
|
|
719
827
|
visit Prism::MatchWriteNode do |node|
|
720
828
|
MatchWriteNode.new(
|
829
|
+
prism_node: node,
|
721
830
|
call: visit(node.call),
|
722
831
|
targets: node.targets.map { |t| visit(t) },
|
723
832
|
)
|
724
833
|
end
|
725
834
|
|
726
835
|
visit Prism::MissingNode do |node|
|
727
|
-
MissingNode.new
|
836
|
+
MissingNode.new(
|
837
|
+
prism_node: node,
|
838
|
+
)
|
728
839
|
end
|
729
840
|
|
730
841
|
visit Prism::ModuleNode do |node|
|
731
842
|
ModuleNode.new(
|
843
|
+
prism_node: node,
|
732
844
|
constant_path: visit(node.constant_path),
|
733
845
|
body: visit(node.body),
|
734
846
|
)
|
@@ -736,6 +848,7 @@ module Refract
|
|
736
848
|
|
737
849
|
visit Prism::MultiTargetNode do |node|
|
738
850
|
MultiTargetNode.new(
|
851
|
+
prism_node: node,
|
739
852
|
lefts: node.lefts.map { |n| visit(n) },
|
740
853
|
rest: visit(node.rest),
|
741
854
|
rights: node.rights.map { |n| visit(n) },
|
@@ -744,6 +857,7 @@ module Refract
|
|
744
857
|
|
745
858
|
visit Prism::MultiWriteNode do |node|
|
746
859
|
MultiWriteNode.new(
|
860
|
+
prism_node: node,
|
747
861
|
lefts: node.lefts&.map { |n| visit(n) },
|
748
862
|
rest: visit(node.rest),
|
749
863
|
rights: node.rights&.map { |n| visit(n) },
|
@@ -753,30 +867,39 @@ module Refract
|
|
753
867
|
|
754
868
|
visit Prism::NextNode do |node|
|
755
869
|
NextNode.new(
|
870
|
+
prism_node: node,
|
756
871
|
arguments: visit(node.arguments),
|
757
872
|
)
|
758
873
|
end
|
759
874
|
|
760
875
|
visit Prism::NilNode do |node|
|
761
|
-
NilNode.new
|
876
|
+
NilNode.new(
|
877
|
+
prism_node: node,
|
878
|
+
)
|
762
879
|
end
|
763
880
|
|
764
881
|
visit Prism::NoKeywordsParameterNode do |node|
|
765
|
-
NoKeywordsParameterNode.new
|
882
|
+
NoKeywordsParameterNode.new(
|
883
|
+
prism_node: node,
|
884
|
+
)
|
766
885
|
end
|
767
886
|
|
768
887
|
visit Prism::NumberedParametersNode do |node|
|
769
|
-
NumberedParametersNode.new
|
888
|
+
NumberedParametersNode.new(
|
889
|
+
prism_node: node,
|
890
|
+
)
|
770
891
|
end
|
771
892
|
|
772
893
|
visit Prism::NumberedReferenceReadNode do |node|
|
773
894
|
NumberedReferenceReadNode.new(
|
895
|
+
prism_node: node,
|
774
896
|
number: node.number,
|
775
897
|
)
|
776
898
|
end
|
777
899
|
|
778
900
|
visit Prism::OptionalKeywordParameterNode do |node|
|
779
901
|
OptionalKeywordParameterNode.new(
|
902
|
+
prism_node: node,
|
780
903
|
name: node.name,
|
781
904
|
value: visit(node.value),
|
782
905
|
)
|
@@ -784,6 +907,7 @@ module Refract
|
|
784
907
|
|
785
908
|
visit Prism::OptionalParameterNode do |node|
|
786
909
|
OptionalParameterNode.new(
|
910
|
+
prism_node: node,
|
787
911
|
name: node.name,
|
788
912
|
value: visit(node.value),
|
789
913
|
)
|
@@ -791,14 +915,16 @@ module Refract
|
|
791
915
|
|
792
916
|
visit Prism::OrNode do |node|
|
793
917
|
OrNode.new(
|
918
|
+
prism_node: node,
|
794
919
|
left: visit(node.left),
|
795
|
-
operator: node.
|
920
|
+
operator: node.operator,
|
796
921
|
right: visit(node.right),
|
797
922
|
)
|
798
923
|
end
|
799
924
|
|
800
925
|
visit Prism::ParametersNode do |node|
|
801
926
|
ParametersNode.new(
|
927
|
+
prism_node: node,
|
802
928
|
requireds: node.requireds&.map { |n| visit(n) },
|
803
929
|
optionals: node.optionals&.map { |n| visit(n) },
|
804
930
|
rest: visit(node.rest),
|
@@ -811,42 +937,49 @@ module Refract
|
|
811
937
|
|
812
938
|
visit Prism::ParenthesesNode do |node|
|
813
939
|
ParenthesesNode.new(
|
940
|
+
prism_node: node,
|
814
941
|
body: visit(node.body),
|
815
942
|
)
|
816
943
|
end
|
817
944
|
|
818
945
|
visit Prism::PinnedExpressionNode do |node|
|
819
946
|
PinnedExpressionNode.new(
|
947
|
+
prism_node: node,
|
820
948
|
expression: visit(node.expression),
|
821
949
|
)
|
822
950
|
end
|
823
951
|
|
824
952
|
visit Prism::PinnedVariableNode do |node|
|
825
953
|
PinnedVariableNode.new(
|
954
|
+
prism_node: node,
|
826
955
|
variable: visit(node.variable),
|
827
956
|
)
|
828
957
|
end
|
829
958
|
|
830
959
|
visit Prism::PostExecutionNode do |node|
|
831
960
|
PostExecutionNode.new(
|
961
|
+
prism_node: node,
|
832
962
|
statements: visit(node.statements),
|
833
963
|
)
|
834
964
|
end
|
835
965
|
|
836
966
|
visit Prism::PreExecutionNode do |node|
|
837
967
|
PreExecutionNode.new(
|
968
|
+
prism_node: node,
|
838
969
|
statements: visit(node.statements),
|
839
970
|
)
|
840
971
|
end
|
841
972
|
|
842
973
|
visit Prism::ProgramNode do |node|
|
843
974
|
ProgramNode.new(
|
975
|
+
prism_node: node,
|
844
976
|
statements: visit(node.statements),
|
845
977
|
)
|
846
978
|
end
|
847
979
|
|
848
980
|
visit Prism::RangeNode do |node|
|
849
981
|
RangeNode.new(
|
982
|
+
prism_node: node,
|
850
983
|
left: visit(node.left),
|
851
984
|
right: visit(node.right),
|
852
985
|
exclude_end: node.exclude_end?,
|
@@ -855,17 +988,21 @@ module Refract
|
|
855
988
|
|
856
989
|
visit Prism::RationalNode do |node|
|
857
990
|
RationalNode.new(
|
991
|
+
prism_node: node,
|
858
992
|
numerator: node.numerator,
|
859
993
|
denominator: node.denominator,
|
860
994
|
)
|
861
995
|
end
|
862
996
|
|
863
997
|
visit Prism::RedoNode do |node|
|
864
|
-
RedoNode.new
|
998
|
+
RedoNode.new(
|
999
|
+
prism_node: node,
|
1000
|
+
)
|
865
1001
|
end
|
866
1002
|
|
867
1003
|
visit Prism::RegularExpressionNode do |node|
|
868
1004
|
RegularExpressionNode.new(
|
1005
|
+
prism_node: node,
|
869
1006
|
unescaped: node.unescaped,
|
870
1007
|
ignore_case: node.ignore_case?,
|
871
1008
|
multi_line: node.multi_line?,
|
@@ -876,18 +1013,21 @@ module Refract
|
|
876
1013
|
|
877
1014
|
visit Prism::RequiredKeywordParameterNode do |node|
|
878
1015
|
RequiredKeywordParameterNode.new(
|
1016
|
+
prism_node: node,
|
879
1017
|
name: node.name,
|
880
1018
|
)
|
881
1019
|
end
|
882
1020
|
|
883
1021
|
visit Prism::RequiredParameterNode do |node|
|
884
1022
|
RequiredParameterNode.new(
|
1023
|
+
prism_node: node,
|
885
1024
|
name: node.name,
|
886
1025
|
)
|
887
1026
|
end
|
888
1027
|
|
889
1028
|
visit Prism::RescueModifierNode do |node|
|
890
1029
|
RescueModifierNode.new(
|
1030
|
+
prism_node: node,
|
891
1031
|
expression: visit(node.expression),
|
892
1032
|
rescue_expression: visit(node.rescue_expression),
|
893
1033
|
)
|
@@ -895,6 +1035,7 @@ module Refract
|
|
895
1035
|
|
896
1036
|
visit Prism::RescueNode do |node|
|
897
1037
|
RescueNode.new(
|
1038
|
+
prism_node: node,
|
898
1039
|
exceptions: node.exceptions&.map { |n| visit(n) },
|
899
1040
|
reference: visit(node.reference),
|
900
1041
|
statements: visit(node.statements),
|
@@ -904,69 +1045,87 @@ module Refract
|
|
904
1045
|
|
905
1046
|
visit Prism::RestParameterNode do |node|
|
906
1047
|
RestParameterNode.new(
|
1048
|
+
prism_node: node,
|
907
1049
|
name: node.name,
|
908
1050
|
)
|
909
1051
|
end
|
910
1052
|
|
911
1053
|
visit Prism::RetryNode do |node|
|
912
|
-
RetryNode.new
|
1054
|
+
RetryNode.new(
|
1055
|
+
prism_node: node,
|
1056
|
+
)
|
913
1057
|
end
|
914
1058
|
|
915
1059
|
visit Prism::ReturnNode do |node|
|
916
1060
|
ReturnNode.new(
|
1061
|
+
prism_node: node,
|
917
1062
|
arguments: visit(node.arguments),
|
918
1063
|
)
|
919
1064
|
end
|
920
1065
|
|
921
1066
|
visit Prism::SelfNode do |node|
|
922
|
-
SelfNode.new
|
1067
|
+
SelfNode.new(
|
1068
|
+
prism_node: node,
|
1069
|
+
)
|
923
1070
|
end
|
924
1071
|
|
925
1072
|
visit Prism::ShareableConstantNode do |node|
|
926
1073
|
ShareableConstantNode.new(
|
1074
|
+
prism_node: node,
|
927
1075
|
write: visit(node.write),
|
928
1076
|
)
|
929
1077
|
end
|
930
1078
|
|
931
1079
|
visit Prism::SingletonClassNode do |node|
|
932
1080
|
SingletonClassNode.new(
|
1081
|
+
prism_node: node,
|
933
1082
|
expression: visit(node.expression),
|
934
1083
|
body: visit(node.body),
|
935
1084
|
)
|
936
1085
|
end
|
937
1086
|
|
938
1087
|
visit Prism::SourceEncodingNode do |node|
|
939
|
-
SourceEncodingNode.new
|
1088
|
+
SourceEncodingNode.new(
|
1089
|
+
prism_node: node,
|
1090
|
+
)
|
940
1091
|
end
|
941
1092
|
|
942
1093
|
visit Prism::SourceFileNode do |node|
|
943
|
-
SourceFileNode.new
|
1094
|
+
SourceFileNode.new(
|
1095
|
+
prism_node: node,
|
1096
|
+
)
|
944
1097
|
end
|
945
1098
|
|
946
1099
|
visit Prism::SourceLineNode do |node|
|
947
|
-
SourceLineNode.new
|
1100
|
+
SourceLineNode.new(
|
1101
|
+
prism_node: node,
|
1102
|
+
)
|
948
1103
|
end
|
949
1104
|
|
950
1105
|
visit Prism::SplatNode do |node|
|
951
1106
|
SplatNode.new(
|
1107
|
+
prism_node: node,
|
952
1108
|
expression: visit(node.expression),
|
953
1109
|
)
|
954
1110
|
end
|
955
1111
|
|
956
1112
|
visit Prism::StatementsNode do |node|
|
957
1113
|
StatementsNode.new(
|
1114
|
+
prism_node: node,
|
958
1115
|
body: node.body&.map { |n| visit(n) },
|
959
1116
|
)
|
960
1117
|
end
|
961
1118
|
|
962
1119
|
visit Prism::StringNode do |node|
|
963
1120
|
StringNode.new(
|
1121
|
+
prism_node: node,
|
964
1122
|
unescaped: node.unescaped,
|
965
1123
|
)
|
966
1124
|
end
|
967
1125
|
|
968
1126
|
visit Prism::SuperNode do |node|
|
969
1127
|
SuperNode.new(
|
1128
|
+
prism_node: node,
|
970
1129
|
arguments: visit(node.arguments),
|
971
1130
|
block: visit(node.block),
|
972
1131
|
)
|
@@ -974,37 +1133,46 @@ module Refract
|
|
974
1133
|
|
975
1134
|
visit Prism::SymbolNode do |node|
|
976
1135
|
SymbolNode.new(
|
1136
|
+
prism_node: node,
|
977
1137
|
unescaped: node.unescaped,
|
978
1138
|
)
|
979
1139
|
end
|
980
1140
|
|
981
1141
|
visit Prism::TrueNode do |node|
|
982
|
-
TrueNode.new
|
1142
|
+
TrueNode.new(
|
1143
|
+
prism_node: node,
|
1144
|
+
)
|
983
1145
|
end
|
984
1146
|
|
985
1147
|
visit Prism::UndefNode do |node|
|
986
1148
|
UndefNode.new(
|
1149
|
+
prism_node: node,
|
987
1150
|
names: node.names.map { |n| visit(n) },
|
988
1151
|
)
|
989
1152
|
end
|
990
1153
|
|
991
1154
|
visit Prism::UnlessNode do |node|
|
992
1155
|
UnlessNode.new(
|
1156
|
+
prism_node: node,
|
993
1157
|
predicate: visit(node.predicate),
|
994
1158
|
statements: visit(node.statements),
|
995
1159
|
else_clause: visit(node.else_clause),
|
1160
|
+
inline: (node.predicate && node.statements && node.predicate.location.start_offset > node.statements.location.start_offset),
|
996
1161
|
)
|
997
1162
|
end
|
998
1163
|
|
999
1164
|
visit Prism::UntilNode do |node|
|
1000
1165
|
UntilNode.new(
|
1166
|
+
prism_node: node,
|
1001
1167
|
predicate: visit(node.predicate),
|
1002
1168
|
statements: visit(node.statements),
|
1169
|
+
inline: (node.predicate && node.statements && node.predicate.location.start_offset > node.statements.location.start_offset),
|
1003
1170
|
)
|
1004
1171
|
end
|
1005
1172
|
|
1006
1173
|
visit Prism::WhenNode do |node|
|
1007
1174
|
WhenNode.new(
|
1175
|
+
prism_node: node,
|
1008
1176
|
conditions: node.conditions&.map { |n| visit(n) },
|
1009
1177
|
statements: visit(node.statements),
|
1010
1178
|
)
|
@@ -1012,19 +1180,23 @@ module Refract
|
|
1012
1180
|
|
1013
1181
|
visit Prism::WhileNode do |node|
|
1014
1182
|
WhileNode.new(
|
1183
|
+
prism_node: node,
|
1015
1184
|
predicate: visit(node.predicate),
|
1016
1185
|
statements: visit(node.statements),
|
1186
|
+
inline: (node.predicate && node.statements && node.predicate.location.start_offset > node.statements.location.start_offset),
|
1017
1187
|
)
|
1018
1188
|
end
|
1019
1189
|
|
1020
1190
|
visit Prism::XStringNode do |node|
|
1021
1191
|
XStringNode.new(
|
1192
|
+
prism_node: node,
|
1022
1193
|
unescaped: node.unescaped,
|
1023
1194
|
)
|
1024
1195
|
end
|
1025
1196
|
|
1026
1197
|
visit Prism::YieldNode do |node|
|
1027
1198
|
YieldNode.new(
|
1199
|
+
prism_node: node,
|
1028
1200
|
arguments: visit(node.arguments),
|
1029
1201
|
)
|
1030
1202
|
end
|