ProblemType (@NotNull PsiReferenceExpression optionalRef, @Nullable PsiElement trueElement, @Nullable PsiElement falseElement) { if (falseElement != null && !(falseElement instanceof PsiEmptyStatement)) return ProblemType.NONE; if (!(trueElement instanceof PsiStatement)) return ProblemType.NONE; if (trueElement instanceof PsiExpressionStatement) { PsiExpression expression = ((PsiExpressionStatement)trueElement).getExpression(); if (isOptionalGetCall(expression, optionalRef)) return ProblemType.NONE; trueElement = expression; } return getTypeByLambdaCandidate(optionalRef, trueElement, null); }