in tools/javac/ApiCollector.java [219:231]
private void collectAllSupertypes(TypeMirror t, Set<String> result) {
for (TypeMirror s : processingEnv.getTypeUtils().directSupertypes(t)) {
if (s.getKind() == TypeKind.DECLARED) {
encounteredSupertypes.add(((DeclaredType) s).asElement());
}
if (result != null) {
String name = s.toString();
if (!name.equals("java.lang.Object") && result.add(name)) {
collectAllSupertypes(s, result);
}
}
}
}