@@ -985,7 +985,7 @@ public RubyNode visitCaseNode(Nodes.CaseNode node) {
985
985
// so `when a, *b, c` is translated into `[a, *b, c].any?`
986
986
final RubyNode whenConditionNode = translateExpressionsList (whenConditions );
987
987
final RubyNode receiver = whenConditionNode ;
988
- final RubyNode predicateNode = createCallNode (receiver , "any?" );
988
+ final RubyNode predicateNode = createCallNode (receiver , "any?" , RubyNode . EMPTY_ARRAY );
989
989
990
990
// create `if` node
991
991
final RubyNode thenNode = translateNodeOrNil (when .statements );
@@ -1729,10 +1729,9 @@ public RubyNode visitImaginaryNode(Nodes.ImaginaryNode node) {
1729
1729
final ReadConstantNode complexModuleNode = new ReadConstantNode (objectClassNode , "Complex" );
1730
1730
final RubyNode realComponentNode = new IntegerFixnumLiteralNode (0 );
1731
1731
final RubyNode imaginaryComponentNode = node .numeric .accept (this );
1732
-
1733
1732
RubyNode [] arguments = new RubyNode []{ realComponentNode , imaginaryComponentNode };
1734
- RubyNode rubyNode = createCallNode (complexModuleNode , "convert" , arguments );
1735
1733
1734
+ RubyNode rubyNode = createCallNode (complexModuleNode , "convert" , arguments );
1736
1735
return assignPositionAndFlags (node , rubyNode );
1737
1736
}
1738
1737
@@ -2003,11 +2002,9 @@ public RubyNode visitInterpolatedMatchLastLineNode(Nodes.InterpolatedMatchLastLi
2003
2002
final var regexp = new Nodes .InterpolatedRegularExpressionNode (node .parts , node .flags , node .startOffset ,
2004
2003
node .length );
2005
2004
final var regexpNode = regexp .accept (this );
2006
-
2007
2005
final var lastLineNode = ReadGlobalVariableNodeGen .create ("$_" );
2008
- final RubyNode [] arguments = new RubyNode []{ lastLineNode };
2009
2006
2010
- final RubyNode rubyNode = createCallNode (false , regexpNode , "=~" , arguments );
2007
+ final RubyNode rubyNode = createCallNode (false , regexpNode , "=~" , lastLineNode );
2011
2008
return assignPositionAndFlags (node , rubyNode );
2012
2009
}
2013
2010
@@ -2051,8 +2048,8 @@ public RubyNode visitInterpolatedSymbolNode(Nodes.InterpolatedSymbolNode node) {
2051
2048
public RubyNode visitInterpolatedXStringNode (Nodes .InterpolatedXStringNode node ) {
2052
2049
var stringNode = new Nodes .InterpolatedStringNode (node .parts , node .startOffset , node .length );
2053
2050
final RubyNode string = stringNode .accept (this );
2054
- final RubyNode rubyNode = createCallNode (new SelfNode (), "`" , string );
2055
2051
2052
+ final RubyNode rubyNode = createCallNode (new SelfNode (), "`" , string );
2056
2053
return assignPositionAndFlags (node , rubyNode );
2057
2054
}
2058
2055
@@ -2213,11 +2210,9 @@ public RubyNode visitMatchLastLineNode(Nodes.MatchLastLineNode node) {
2213
2210
2214
2211
final var regexp = new Nodes .RegularExpressionNode (node .unescaped , node .flags , node .startOffset , node .length );
2215
2212
final var regexpNode = regexp .accept (this );
2216
-
2217
2213
final var lastLineNode = ReadGlobalVariableNodeGen .create ("$_" );
2218
- final RubyNode [] arguments = new RubyNode []{ lastLineNode };
2219
2214
2220
- final RubyNode rubyNode = createCallNode (false , regexpNode , "=~" , arguments );
2215
+ final RubyNode rubyNode = createCallNode (false , regexpNode , "=~" , lastLineNode );
2221
2216
return assignPositionAndFlags (node , rubyNode );
2222
2217
}
2223
2218
@@ -2464,8 +2459,8 @@ public RubyNode visitRationalNode(Nodes.RationalNode node) {
2464
2459
}
2465
2460
2466
2461
RubyNode [] arguments = new RubyNode []{ numeratorNode , denominatorNode };
2467
- RubyNode rubyNode = createCallNode (rationalModuleNode , "convert" , arguments );
2468
2462
2463
+ RubyNode rubyNode = createCallNode (rationalModuleNode , "convert" , arguments );
2469
2464
return assignPositionAndFlags (node , rubyNode );
2470
2465
}
2471
2466
@@ -2782,8 +2777,8 @@ public RubyNode visitXStringNode(Nodes.XStringNode node) {
2782
2777
// TODO: pass flags, needs https://github.com/ruby/yarp/issues/1567
2783
2778
var stringNode = new Nodes .StringNode ((short ) 0 , node .unescaped , node .startOffset , node .length );
2784
2779
final RubyNode string = stringNode .accept (this );
2785
- final RubyNode rubyNode = createCallNode (new SelfNode (), "`" , string );
2786
2780
2781
+ final RubyNode rubyNode = createCallNode (new SelfNode (), "`" , string );
2787
2782
return assignPositionAndFlags (node , rubyNode );
2788
2783
}
2789
2784
0 commit comments