Skip to content

Commit e79ea4d

Browse files
aardvark179eregon
authored andcommitted
Tidy up proxy foreign object.
1 parent bb7a23d commit e79ea4d

File tree

1 file changed

+3
-11
lines changed

1 file changed

+3
-11
lines changed

src/main/java/org/truffleruby/interop/ProxyForeignObject.java

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
import com.oracle.truffle.api.library.Message;
1919
import com.oracle.truffle.api.library.ReflectionLibrary;
2020

21+
import org.truffleruby.core.array.ArrayUtils;
2122
import org.truffleruby.language.dispatch.CallDispatchHeadNode;
2223

2324
@ExportLibrary(ReflectionLibrary.class)
@@ -49,21 +50,12 @@ protected Object send(Message message, Object[] rawArgs,
4950
if (message == EXECUTABLE || message == INSTANTIATE) {
5051
args = (Object[]) rawArgs[0];
5152
} else if (message == INVOKE) {
52-
Object[] invokeArgs = (Object[]) rawArgs[1];
53-
args = new Object[invokeArgs.length + 1];
54-
args[0] = rawArgs[0];
55-
System.arraycopy(invokeArgs, 0, args, 1, invokeArgs.length);
53+
args = ArrayUtils.unshift((Object[])rawArgs[1], rawArgs[0]);
5654
} else {
5755
args = rawArgs;
5856
}
59-
Object[] loggingArgs = new Object[args.length + 1];
60-
loggingArgs[0] = message.getSimpleName();
61-
System.arraycopy(args, 0, loggingArgs, 1, args.length);
57+
Object[] loggingArgs = ArrayUtils.unshift(args, message.getSimpleName());
6258
Object[] convertedArgs = foreignToRubyArgumentsNode.executeConvert(loggingArgs);
63-
for (int i = 0; i < convertedArgs.length; i++) {
64-
if (convertedArgs[i] instanceof Object[]) {
65-
}
66-
}
6759
dispatchNode.call(logger, "log", convertedArgs);
6860
}
6961

0 commit comments

Comments
 (0)