private boolean verifyLombokAnnotationPresent(@NotNull PsiClass psiClass) { if (PsiAnnotationUtil.checkAnnotationsSimpleNameExistsIn(psiClass, registeredAnnotationNames)) { return true; } Collection<PsiField> psiFields = PsiClassUtil.collectClassFieldsIntern(psiClass); for (PsiField psiField : psiFields) { if (PsiAnnotationUtil.checkAnnotationsSimpleNameExistsIn( psiField, registeredAnnotationNames)) { return true; } } Collection<PsiMethod> psiMethods = PsiClassUtil.collectClassMethodsIntern(psiClass); for (PsiMethod psiMethod : psiMethods) { if (PsiAnnotationUtil.checkAnnotationsSimpleNameExistsIn( psiMethod, registeredAnnotationNames)) { return true; } } final PsiElement psiClassParent = psiClass.getParent(); if (psiClassParent instanceof PsiClass) { return verifyLombokAnnotationPresent((PsiClass) psiClassParent); } return false; }