void (@NotNull PsiMethodCallExpression call) { SimplifyForEachContext context = SimplifyForEachContext.from(call); if (context == null) return; boolean opCountChanged = context.myTerminalBlock.getOperationCount() > 1; boolean lastOpChanged = !(context.myMigration instanceof ForEachMigration); if (opCountChanged || lastOpChanged) { String customMessage = lastOpChanged ? CommonQuickFixBundle.message("fix.replace.with.x", context.myMigration.getReplacement() + "()") : JavaBundle.message("inspection.simplify.for.each.extract.intermediate.operations"); ProblemHighlightType highlightType = ProblemHighlightType.GENERIC_ERROR_OR_WARNING; holder.registerProblem(context.myMainStatement, customMessage, highlightType, getRange(call).shiftRight(-call.getTextOffset()), new SimplifyForEachFix(customMessage)); } }