boolean (PsiForStatement forStatement, boolean ignoreUntypedCollections) { final PsiStatement initialization = forStatement.getInitialization(); final PsiVariable variable = getIterableVariable(initialization, ignoreUntypedCollections); if (variable == null) { return false; } final PsiExpression condition = forStatement.getCondition(); if (!isHasNext(condition, variable)) { return false; } final PsiStatement update = forStatement.getUpdate(); if (update != null && !(update instanceof PsiEmptyStatement)) { return false; } final PsiStatement body = forStatement.getBody(); if (body == null) { return false; } return hasSimpleNextCall(variable, body); }