docs: public Method loadClassAndGetMethod() throws IllegalArgumentException {
          final MethodParameterInfo[] allParameterInfo = getParameterInfo();
          final List<Class<?>> parameterClasses = new ArrayList<>(allParameterInfo.length);
          for (final MethodParameterInfo mpi : allParameterInfo) {
              final TypeSignature parameterType = mpi.getTypeSignatureOrTypeDescriptor();
              parameterClasses.add(parameterType.loadClass());
          }
          final Class<?>[] parameterClassesArr = parameterClasses.toArray(new Class<?>[0]);
          try {
              return loadClass().getMethod(getName(), parameterClassesArr);
          } catch (final NoSuchMethodException e1) {
              try {
                  return loadClass().getDeclaredMethod(getName(), parameterClassesArr);
              } catch (final NoSuchMethodException es2) {
                  throw new IllegalArgumentException("No such method: " + getClassName() + "." + getName());
              }
          }
      }