public void buildVarArgs() { declareMethod(); ExceptionWrapper mainTryBlock = new ExceptionWrapper(codeModel, method.body(), context); JvmMethod overload = primitive.getOverloads().get(0); VarArgParser parser = new VarArgParser(this, mainTryBlock.body(), overload); // convert the positional arguments convertArguments(parser.getArgumentProcessingBlock(), parser); // finally invoke the underlying function JInvocation invocation = classRef(overload.getDeclaringClass()).staticInvoke(overload.getName()); for (JExpression argument : parser.getArguments()) { invocation.arg(argument); } CodeModelUtils.returnSexp(codeModel, mainTryBlock.body(), overload, invocation); mainTryBlock.catchEvalExceptions(); mainTryBlock.catchRuntimeExceptions(); mainTryBlock.catchExceptions(); }