List<PsiClassType> (@NotNull PsiElement element) { if (element instanceof PsiEnumConstant) { final PsiMethod method = ((PsiEnumConstant)element).resolveMethod(); if (method != null) { return getUnhandledExceptions(method, element, null, () -> PsiSubstitutor.EMPTY); } return Collections.emptyList(); } if (element instanceof PsiCallExpression) { return getUnhandledExceptions((PsiCallExpression)element, null); } if (element instanceof PsiThrowStatement) { return getUnhandledExceptions((PsiThrowStatement)element, null); } if (element instanceof PsiMethodReferenceExpression) { return getUnhandledExceptions((PsiMethodReferenceExpression)element, null); } if (element instanceof PsiResourceListElement) { return getUnhandledCloserExceptions((PsiResourceListElement)element, null); } if (element instanceof PsiTemplateExpression) { return getUnhandledProcessorExceptions((PsiTemplateExpression)element, null); } return Collections.emptyList(); }