code: private static Map<JavaClass, List<MethodInfo>> getClassDefiners(final JavaClass cls)
              throws ClassNotFoundException {
          Map<JavaClass, List<MethodInfo>> definers = new HashMap<>();
  
          for (JavaClass ci : cls.getAllInterfaces()) {
              if (cls.equals(ci) || !cls.isPublic() || "java.lang.Comparable".equals(ci.getClassName())) {
                  continue;
              }
              List<MethodInfo> methodInfos = getPublicMethodInfos(ci);
              if (!methodInfos.isEmpty()) {
                  definers.put(ci, methodInfos);
              }
          }
          return definers;
      }
docs: returns a map of method information for each public method for each interface
  this class implements
  
  @param cls the class whose interfaces to record
  
  @return a map of (method name)(method sig) by interface
  @throws ClassNotFoundException if unable to load the class