`PrefixSequence` and `DropFirstSequence` should propagate `underestimatedCount`
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Accessibilité débutants
- 76/100
- Type d'issue
- Bug
- Clarté
- Clairement spécifiée
- Activité
- Calme
- Stack technique
- swift
- Domaine
- performance
Piste de recherche
Commencez par localiser PrefixSequence et son extension conforme à Sequence, puis examinez comment underestimatedCount est fourni pour la séquence de base et les autres wrappers de séquence. Vérifiez que les séquences préfixes renvoient le plus petit nombre pertinent et exécutez les tests Sequence existants ou ajoutez une couverture pour le comportement de propagation.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
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
- Langage dominant
- Swift
- Étoiles
- 70.4k
- Forks
- 10.8k
- Merge moyen
- 2 j 2 h
- PR mergées (30 j)
- 461
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de swiftlang/swift
-
triage needed
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
-
triage needed
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100
-
Foundation Windows
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
-
triage needed
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
Toutes les issues de swiftlang/swift
Issues similaires
-
type: docs
Difficulté 1/5 Moins d'une heure Accessibilité débutants 95/100
googleapis/google-cloud-swift#971 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
bitcoindevkit/bdk-ffi#1125 ·
-
Move wallpaper setting Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
mozilla-mobile/firefox-ios#35743 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
manaflow-ai/cmux#13417 ·
-
triage
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
ionic-team/capacitor#8616 ·