/** * Get superclasses of the named subclass. * * @param subclassName * The name of the subclass. * @return A list of superclasses of the named subclass, or the empty list if none. */ public ClassInfoList getSuperclasses(final String subclassName) { if (closed.get()) { throw new IllegalArgumentException("Cannot use a ScanResult after it has been closed"); } if (!scanSpec.enableClassInfo) { throw new IllegalArgumentException("Please call ClassGraph#enableClassInfo() before #scan()"); } final ClassInfo subclass = classNameToClassInfo.get(subclassName); return subclass == null ? ClassInfoList.EMPTY_LIST : subclass.getSuperclasses(); }
/** * @param superclassName * The name of a superclass. * @return true if this class extends the named superclass. */ public boolean extendsSuperclass(final String superclassName) { return getSuperclasses().containsName(superclassName); }
for (final ClassInfo superclass : getSuperclasses()) { for (final ClassInfo superclassAnnotationClass : superclass.filterClassInfo(RelType.CLASS_ANNOTATIONS, /* strictWhitelist = */ false).reachableClasses) {
for (final ClassInfo directSuperclassNode : classNode.getSuperclasses().directOnly()) { if (directSuperclassNode != null && allVisibleNodes.contains(directSuperclassNode.getName()) && !directSuperclassNode.getName().equals("java.lang.Object")) {
for (final ClassInfo superclass : annotatedClass.getSuperclasses()) { if (superclass.annotationInfo != null) { for (final AnnotationInfo sai : superclass.annotationInfo) {