MCPcopy Index your code
hub / github.com/apache/tomcat / buildParameters

Method buildParameters

java/jakarta/el/Util.java:512–542  ·  view source on GitHub ↗
(ELContext context, Class<?>[] parameterTypes, boolean isVarArgs, Object[] params)

Source from the content-addressed store, hash-verified

510
511
512 static Object[] buildParameters(ELContext context, Class<?>[] parameterTypes, boolean isVarArgs, Object[] params) {
513 Object[] parameters = null;
514 if (parameterTypes.length > 0) {
515 parameters = new Object[parameterTypes.length];
516 int paramCount;
517 if (params == null) {
518 params = EMPTY_OBJECT_ARRAY;
519 }
520 paramCount = params.length;
521 if (isVarArgs) {
522 int varArgIndex = parameterTypes.length - 1;
523 // First argCount-1 parameters are standard
524 for (int i = 0; (i < varArgIndex); i++) {
525 parameters[i] = context.convertToType(params[i], parameterTypes[i]);
526 }
527 // Last parameter is the varargs
528 Class<?> varArgClass = parameterTypes[varArgIndex].getComponentType();
529 final Object varargs = Array.newInstance(varArgClass, (paramCount - varArgIndex));
530 for (int i = (varArgIndex); i < paramCount; i++) {
531 Array.set(varargs, i - varArgIndex, context.convertToType(params[i], varArgClass));
532 }
533 parameters[varArgIndex] = varargs;
534 } else {
535 parameters = new Object[parameterTypes.length];
536 for (int i = 0; i < parameterTypes.length; i++) {
537 parameters[i] = context.convertToType(params[i], parameterTypes[i]);
538 }
539 }
540 }
541 return parameters;
542 }
543
544
545 private abstract static class Wrapper<T> {

Callers 2

invokeMethod · 0.95
invokeMethod · 0.95

Calls 3

newInstanceMethod · 0.65
setMethod · 0.65
convertToTypeMethod · 0.45

Tested by

no test coverage detected