void (@NotNull PsiThrowStatement statement) { super.visitThrowStatement(statement); List<PsiClassType> actualTypes = ExceptionUtil.getUnhandledExceptions(statement, place); for (PsiClassType actualType : actualTypes) { if (actualType != null && type.isAssignableFrom(actualType) && myTypeFilter.test(actualType)) { PsiExpression psiExpression = statement.getException(); if (psiExpression instanceof PsiReferenceExpression) { addUsage(psiExpression); } else if (psiExpression instanceof PsiNewExpression) { PsiJavaCodeReferenceElement ref = ((PsiNewExpression)psiExpression).getClassReference(); if (ref != null) { addUsage(ref); } } else { PsiExpression exception = statement.getException(); if (exception != null) { addUsage(exception); } } } } }