public static IRubyObject[] setupArgs(Ruby runtime, ThreadContext context, Node node, IRubyObject self, Block aBlock) {
if (node == null) return IRubyObject.NULL_ARRAY;
if (node instanceof ArrayNode) {
ArrayNode argsArrayNode = (ArrayNode) node;
String savedFile = context.getFile();
int savedLine = context.getLine();
int size = argsArrayNode.size();
IRubyObject[] argsArray = new IRubyObject[size];
for (int i = 0; i < size; i++) {
argsArray[i] = argsArrayNode.get(i).interpret(runtime, context, self, aBlock);
}
context.setFileAndLine(savedFile, savedLine);
return argsArray;