@@ -8,7 +8,7 @@ class DesugarVisitor < MutationVisitor
8
8
#
9
9
# @@foo && @@foo = bar
10
10
def visit_class_variable_and_write_node ( node )
11
- desugar_and_write_node ( node , ClassVariableReadNode , ClassVariableWriteNode , arguments : [ node . name ] )
11
+ desugar_and_write_node ( node , ClassVariableReadNode , ClassVariableWriteNode , node . name )
12
12
end
13
13
14
14
# @@foo ||= bar
@@ -17,7 +17,7 @@ def visit_class_variable_and_write_node(node)
17
17
#
18
18
# defined?(@@foo) ? @@foo : @@foo = bar
19
19
def visit_class_variable_or_write_node ( node )
20
- desugar_or_write_defined_node ( node , ClassVariableReadNode , ClassVariableWriteNode , arguments : [ node . name ] )
20
+ desugar_or_write_defined_node ( node , ClassVariableReadNode , ClassVariableWriteNode , node . name )
21
21
end
22
22
23
23
# @@foo += bar
@@ -26,7 +26,7 @@ def visit_class_variable_or_write_node(node)
26
26
#
27
27
# @@foo = @@foo + bar
28
28
def visit_class_variable_operator_write_node ( node )
29
- desugar_operator_write_node ( node , ClassVariableReadNode , ClassVariableWriteNode , arguments : [ node . name ] )
29
+ desugar_operator_write_node ( node , ClassVariableReadNode , ClassVariableWriteNode , node . name )
30
30
end
31
31
32
32
# Foo &&= bar
@@ -35,7 +35,7 @@ def visit_class_variable_operator_write_node(node)
35
35
#
36
36
# Foo && Foo = bar
37
37
def visit_constant_and_write_node ( node )
38
- desugar_and_write_node ( node , ConstantReadNode , ConstantWriteNode )
38
+ desugar_and_write_node ( node , ConstantReadNode , ConstantWriteNode , node . name )
39
39
end
40
40
41
41
# Foo ||= bar
@@ -44,7 +44,7 @@ def visit_constant_and_write_node(node)
44
44
#
45
45
# defined?(Foo) ? Foo : Foo = bar
46
46
def visit_constant_or_write_node ( node )
47
- desugar_or_write_defined_node ( node , ConstantReadNode , ConstantWriteNode )
47
+ desugar_or_write_defined_node ( node , ConstantReadNode , ConstantWriteNode , node . name )
48
48
end
49
49
50
50
# Foo += bar
@@ -53,7 +53,7 @@ def visit_constant_or_write_node(node)
53
53
#
54
54
# Foo = Foo + bar
55
55
def visit_constant_operator_write_node ( node )
56
- desugar_operator_write_node ( node , ConstantReadNode , ConstantWriteNode )
56
+ desugar_operator_write_node ( node , ConstantReadNode , ConstantWriteNode , node . name )
57
57
end
58
58
59
59
# $foo &&= bar
@@ -62,7 +62,7 @@ def visit_constant_operator_write_node(node)
62
62
#
63
63
# $foo && $foo = bar
64
64
def visit_global_variable_and_write_node ( node )
65
- desugar_and_write_node ( node , GlobalVariableReadNode , GlobalVariableWriteNode , arguments : [ node . name ] )
65
+ desugar_and_write_node ( node , GlobalVariableReadNode , GlobalVariableWriteNode , node . name )
66
66
end
67
67
68
68
# $foo ||= bar
@@ -71,7 +71,7 @@ def visit_global_variable_and_write_node(node)
71
71
#
72
72
# defined?($foo) ? $foo : $foo = bar
73
73
def visit_global_variable_or_write_node ( node )
74
- desugar_or_write_defined_node ( node , GlobalVariableReadNode , GlobalVariableWriteNode , arguments : [ node . name ] )
74
+ desugar_or_write_defined_node ( node , GlobalVariableReadNode , GlobalVariableWriteNode , node . name )
75
75
end
76
76
77
77
# $foo += bar
@@ -80,7 +80,7 @@ def visit_global_variable_or_write_node(node)
80
80
#
81
81
# $foo = $foo + bar
82
82
def visit_global_variable_operator_write_node ( node )
83
- desugar_operator_write_node ( node , GlobalVariableReadNode , GlobalVariableWriteNode , arguments : [ node . name ] )
83
+ desugar_operator_write_node ( node , GlobalVariableReadNode , GlobalVariableWriteNode , node . name )
84
84
end
85
85
86
86
# @foo &&= bar
@@ -89,7 +89,7 @@ def visit_global_variable_operator_write_node(node)
89
89
#
90
90
# @foo && @foo = bar
91
91
def visit_instance_variable_and_write_node ( node )
92
- desugar_and_write_node ( node , InstanceVariableReadNode , InstanceVariableWriteNode , arguments : [ node . name ] )
92
+ desugar_and_write_node ( node , InstanceVariableReadNode , InstanceVariableWriteNode , node . name )
93
93
end
94
94
95
95
# @foo ||= bar
@@ -98,7 +98,7 @@ def visit_instance_variable_and_write_node(node)
98
98
#
99
99
# @foo || @foo = bar
100
100
def visit_instance_variable_or_write_node ( node )
101
- desugar_or_write_node ( node , InstanceVariableReadNode , InstanceVariableWriteNode , arguments : [ node . name ] )
101
+ desugar_or_write_node ( node , InstanceVariableReadNode , InstanceVariableWriteNode , node . name )
102
102
end
103
103
104
104
# @foo += bar
@@ -107,7 +107,7 @@ def visit_instance_variable_or_write_node(node)
107
107
#
108
108
# @foo = @foo + bar
109
109
def visit_instance_variable_operator_write_node ( node )
110
- desugar_operator_write_node ( node , InstanceVariableReadNode , InstanceVariableWriteNode , arguments : [ node . name ] )
110
+ desugar_operator_write_node ( node , InstanceVariableReadNode , InstanceVariableWriteNode , node . name )
111
111
end
112
112
113
113
# foo &&= bar
@@ -116,7 +116,7 @@ def visit_instance_variable_operator_write_node(node)
116
116
#
117
117
# foo && foo = bar
118
118
def visit_local_variable_and_write_node ( node )
119
- desugar_and_write_node ( node , LocalVariableReadNode , LocalVariableWriteNode , arguments : [ node . name , node . depth ] )
119
+ desugar_and_write_node ( node , LocalVariableReadNode , LocalVariableWriteNode , node . name , node . depth )
120
120
end
121
121
122
122
# foo ||= bar
@@ -125,7 +125,7 @@ def visit_local_variable_and_write_node(node)
125
125
#
126
126
# foo || foo = bar
127
127
def visit_local_variable_or_write_node ( node )
128
- desugar_or_write_node ( node , LocalVariableReadNode , LocalVariableWriteNode , arguments : [ node . name , node . depth ] )
128
+ desugar_or_write_node ( node , LocalVariableReadNode , LocalVariableWriteNode , node . name , node . depth )
129
129
end
130
130
131
131
# foo += bar
@@ -134,13 +134,13 @@ def visit_local_variable_or_write_node(node)
134
134
#
135
135
# foo = foo + bar
136
136
def visit_local_variable_operator_write_node ( node )
137
- desugar_operator_write_node ( node , LocalVariableReadNode , LocalVariableWriteNode , arguments : [ node . name , node . depth ] )
137
+ desugar_operator_write_node ( node , LocalVariableReadNode , LocalVariableWriteNode , node . name , node . depth )
138
138
end
139
139
140
140
private
141
141
142
142
# Desugar `x &&= y` to `x && x = y`
143
- def desugar_and_write_node ( node , read_class , write_class , arguments : [ ] )
143
+ def desugar_and_write_node ( node , read_class , write_class , * arguments )
144
144
AndNode . new (
145
145
read_class . new ( *arguments , node . name_loc ) ,
146
146
write_class . new ( *arguments , node . name_loc , node . value , node . operator_loc , node . location ) ,
@@ -150,7 +150,7 @@ def desugar_and_write_node(node, read_class, write_class, arguments: [])
150
150
end
151
151
152
152
# Desugar `x += y` to `x = x + y`
153
- def desugar_operator_write_node ( node , read_class , write_class , arguments : [ ] )
153
+ def desugar_operator_write_node ( node , read_class , write_class , * arguments )
154
154
write_class . new (
155
155
*arguments ,
156
156
node . name_loc ,
@@ -172,7 +172,7 @@ def desugar_operator_write_node(node, read_class, write_class, arguments: [])
172
172
end
173
173
174
174
# Desugar `x ||= y` to `x || x = y`
175
- def desugar_or_write_node ( node , read_class , write_class , arguments : [ ] )
175
+ def desugar_or_write_node ( node , read_class , write_class , * arguments )
176
176
OrNode . new (
177
177
read_class . new ( *arguments , node . name_loc ) ,
178
178
write_class . new ( *arguments , node . name_loc , node . value , node . operator_loc , node . location ) ,
@@ -182,7 +182,7 @@ def desugar_or_write_node(node, read_class, write_class, arguments: [])
182
182
end
183
183
184
184
# Desugar `x ||= y` to `defined?(x) ? x : x = y`
185
- def desugar_or_write_defined_node ( node , read_class , write_class , arguments : [ ] )
185
+ def desugar_or_write_defined_node ( node , read_class , write_class , * arguments )
186
186
IfNode . new (
187
187
node . operator_loc ,
188
188
DefinedNode . new ( nil , read_class . new ( *arguments , node . name_loc ) , nil , node . operator_loc , node . name_loc ) ,
0 commit comments