void (@NotNull final PsiMethod method) { getRedundantThrowsCandidates(method, myIgnoreEntryPoints) .filter(throwRefType -> !throwRefType.isThrownIn(method)) .filter(throwRefType -> !throwRefType.isInOverriddenOf(method)) .filter(throwRefType -> !throwRefType.isCaught(method)) .forEach(throwRefType -> { final PsiElement reference = throwRefType.myReference; final PsiClassType exceptionType = throwRefType.myType; final String description = JavaErrorBundle.message("exception.is.never.thrown", JavaHighlightUtil.formatType(exceptionType)); final RedundantThrowsQuickFix fix = new RedundantThrowsQuickFix(exceptionType.getCanonicalText(), PsiFormatUtil.formatSimple(method)); myHolder.registerProblem(reference, description, ProblemHighlightType.GENERIC_ERROR_OR_WARNING, fix); }); }