boolean (@NotNull PsiClass aClass) { if (!aClass.isInterface() || aClass.isAnnotationType()) { return false; } final SearchScope useScope = aClass.getUseScope(); for (PsiClass inheritor : ClassInheritorsSearch.search(aClass, useScope, true)) { if (inheritor.isInterface()) { return false; } } return !AnnotationUtil.isAnnotated(aClass, CommonClassNames.JAVA_LANG_FUNCTIONAL_INTERFACE, 0); }