`[.]Type` completion for `(any P).` shows it will produce an existential metatype

Ouverte
#65,843 32 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
3/5
Temps estimé
1-2 jours
Accessibilité débutants
45/100
Type d'issue
Bug
Clarté
Clairement spécifiée
Activité
À l'abandon
Stack technique
swift
Domaine
tooling

Piste de recherche

Commencez par le cas de complétion de code batch swift-ide-test fourni et comparez sa sortie actuelle avec l'attendu de FileCheck pour (any P).Type. C'est terminé lorsque la sortie de complétion identifie le résultat comme le métatype singleton (any P).Type, plutôt que comme le métatype existentiel any P.Type.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

bug code completion existentials good first issue IDE support metatypes swift 5.9 types unexpected behavior

Test case:

// RUN: %empty-directory(%t)
// RUN: %target-swift-ide-test -batch-code-completion -source-filename %s -filecheck %raw-FileCheck -completion-output-dir %t
protocol P {}

(any P).#^COMPLETE?check=META^# 
// META: Keyword/CurrNominal:  Type[#(any P).Type#]; name=Type

This test will fail, because the current completion is Type[#any P.Type#]; name=Type. Notice how it thinks the completion will produce an existential metatype any P.Type, whereas the actual result is the singleton metatype (any P).Type.

Note
any syntax was proposed in SE-0335.

Environment

  • Swift 5.9-dev (c1d5118c21da49a9c2194734cbf9b6970bc63056)
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

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de swiftlang/swift

Toutes les issues de swiftlang/swift

Issues similaires

Plus d'issues Swift

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.