boolean (@NotNull PsiModifierListOwner psiModifierListOwner, @NotNull PsiType psiType, @NotNull PsiAnnotation psiAnnotation, @NotNull ProblemSink problemSink) { boolean result = true; if (psiModifierListOwner.hasModifierProperty(PsiModifier.STATIC)) { problemSink.addErrorMessage("inspection.message.delegate.legal.only.on.instance.fields"); result = false; } final Collection<PsiType> types = collectDelegateTypes(psiAnnotation, psiType); result &= validateTypes(types, problemSink); final Collection<PsiType> excludes = collectExcludeTypes(psiAnnotation); result &= validateTypes(excludes, problemSink); return result; }