`PrefixSequence` and `DropFirstSequence` should propagate `underestimatedCount`
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Anfängerfreundlichkeit
- 76/100
- Issue-Typ
- Bug
- Klarheit
- Klar beschrieben
- Aktivitätsstatus
- Ruhig
- Tech-Stack
- swift
- Bereich
- performance
Rechercherichtung
Beginne damit, PrefixSequence und seine Sequence-konforme Erweiterung zu lokalisieren, und untersuche dann, wie underestimatedCount für die Basissequenz und andere Sequenz-Wrapper bereitgestellt wird. Verifiziere, dass Präfixsequenzen die kleinere relevante Anzahl melden, und führe die vorhandenen Sequence-Tests aus oder ergänze eine Abdeckung für das Weitergabeverhalten.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Motivation
underestimatedCount is important for allocating memory efficiently, particularly when eagerly evaluating a chain of lazy operations. However, calling Sequence.prefix(_:) will currently result in underestimatedCount defaulting to 0, which eliminates the potential for optimization.
Proposed solution
Rather than leaving the default implementation, PrefixSequence should have the following added to its Sequence-conforming extension:
@inlinable
public var underestimatedCount { Swift.min(_maxLength, _base.underestimatedCount) }
Alternatives considered
No response
Additional information
No response
- Vorherrschende Sprache
- Swift
- Sterne
- 70.4k
- Forks
- 10.8k
- Ø Merge
- 2 T. 2 Std.
- Gemergte PRs (30 T.)
- 461
Beitragsleitfaden
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus swiftlang/swift
-
triage needed
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
-
triage needed
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 88/100
-
Foundation Windows
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
-
triage needed
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
Alle Issues in swiftlang/swift
Ähnliche Issues
-
type: docs
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 95/100
googleapis/google-cloud-swift#971 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
bitcoindevkit/bdk-ffi#1125 ·
-
Move wallpaper setting Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
mozilla-mobile/firefox-ios#35743 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
manaflow-ai/cmux#13417 ·
-
triage
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
ionic-team/capacitor#8616 ·