boolean (@NotNull ControlFlow flow, @NotNull PsiVariable variable, @NotNull PsiStatement lastStatementInScope) { for (PsiStatement statement = getPrevNonEmptyStatement(lastStatementInScope, null); statement != null; statement = getPrevNonEmptyStatement(statement, null)) { if (statement instanceof PsiExpressionStatement expressionStatement) { PsiExpression expression = expressionStatement.getExpression(); if (expression instanceof PsiAssignmentExpression assignmentExpression) { if (isVariableUsed(flow, assignmentExpression.getLExpression(), variable) && isVariableUsed(flow, assignmentExpression.getRExpression(), variable)) { return true; } } } } return false; }