BytecodeUtils.pushClassType(code, declaringClass);
// now we have the class on the stack
code.ldc(methodName);
// now we need to load the parameter types into an array
code.iconst(parameterTypes.length);
code.anewarray(Class.class.getName());
for (int i = 0; i < parameterTypes.length; ++i) {
code.dup(); // duplicate the array reference
code.iconst(i);
// now load the class object
String type = parameterTypes[i];