for (int i = startArg, j = 0; i < nJavaArgs; ++i, ++j) {
int index = i - startArg;
final JavaTypeName argTypeName = JavaTypeName.make(argTypes[index]);
ExpressionContextPair pair = generateUnboxedForeignFunctionArgument(argTypeName, basicOpExpressions.getArgument(i), variableContext);
args[index] = pair.getJavaExpression();
returnContext.addStatement(pair.getContextBlock());
argTypeNames[index] = argTypeName;
}
JavaTypeName returnType = JavaTypeName.make(method.getReturnType());