boolean (@NotNull GrTypeDefinition aClass, @NotNull final String fqn) { PsiClass classToSearch = JavaPsiFacade.getInstance(aClass.getProject()).findClass(fqn, aClass.getResolveScope()); if (classToSearch == null) return true; Set<String> methodsToFind = new HashSet<>(); for (PsiMethod method : classToSearch.getMethods()) { methodsToFind.add(method.getName()); } for (GrMethod method : aClass.getCodeMethods()) { if (!methodsToFind.contains(method.getName())) continue; for (HierarchicalMethodSignature superSignature : method.getHierarchicalMethodSignature().getSuperSignatures()) { PsiClass superClass = superSignature.getMethod().getContainingClass(); if (superClass != null && fqn.equals(superClass.getQualifiedName())) return true; } } return false; }