boolean (PsiExpression expr) { if (PsiUtil.isLanguageLevel10OrHigher(expr)) { PsiType type = getNormalizedType(expr); if (type != null && !PsiTypes.nullType().equals(type) && PsiTypesUtil.isDenotableType(type, expr)) { PsiExpression copy = (PsiExpression)(type instanceof PsiDisjunctionType ? expr.copy() : LambdaUtil.copyWithExpectedType(expr, type)); if (type.equals(getNormalizedType(copy))) { return true; } } } return false; }