void (@NotNull PsiReferenceExpression reference) { if (!indexVariableUsedOnlyAsIndex) { return; } super.visitReferenceExpression(reference); final PsiElement element = reference.resolve(); if (indexVariable.equals(element)) { if (!isListIndexExpression(reference)) { indexVariableUsedOnlyAsIndex = false; } else { listGetCalled = true; } } else if (collection.isDummyVariable()) { if (isListNonGetMethodCall(reference)) { indexVariableUsedOnlyAsIndex = false; } } else if (collection.getVariable().equals(element) && !isListReferenceInIndexExpression(reference)) { indexVariableUsedOnlyAsIndex = false; } }