private static void loadArguments(SkinnyMethodAdapter mv, JavaMethodDescriptor desc, int specificArity) { Class[] argumentTypes; switch (specificArity) { default: case -1: mv.aload(ARGS_INDEX); break; case 0: // no args break; case 1: argumentTypes = desc.getArgumentTypes(); loadArgumentWithCast(mv, 1, argumentTypes[0]); break; case 2: argumentTypes = desc.getArgumentTypes(); loadArgumentWithCast(mv, 1, argumentTypes[0]); loadArgumentWithCast(mv, 2, argumentTypes[1]); break; case 3: argumentTypes = desc.getArgumentTypes(); loadArgumentWithCast(mv, 1, argumentTypes[0]); loadArgumentWithCast(mv, 2, argumentTypes[1]); loadArgumentWithCast(mv, 3, argumentTypes[2]); break; } }
private static void loadArguments(SkinnyMethodAdapter mv, JavaMethodDescriptor desc, int specificArity) { Class[] argumentTypes; switch (specificArity) { default: case -1: mv.aload(ARGS_INDEX); break; case 0: // no args break; case 1: argumentTypes = desc.getArgumentTypes(); loadArgumentWithCast(mv, 1, argumentTypes[0]); break; case 2: argumentTypes = desc.getArgumentTypes(); loadArgumentWithCast(mv, 1, argumentTypes[0]); loadArgumentWithCast(mv, 2, argumentTypes[1]); break; case 3: argumentTypes = desc.getArgumentTypes(); loadArgumentWithCast(mv, 1, argumentTypes[0]); loadArgumentWithCast(mv, 2, argumentTypes[1]); loadArgumentWithCast(mv, 3, argumentTypes[2]); break; } }