LuaLS / LuaLS/lua-language-server
@enum 不能检测不存在的字段
Personne n'a encore pris cette issue.
- Langage dominant
- Lua
- Étoiles
- 4.4k
- Forks
- 442
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
### How are you using the lua-language-server?
Visual Studio Code Extension (sumneko.lua)
### Which OS are you using?
Windows
### What is the issue affecting?
Type Checking
### Expected Behaviour
枚举无法检测不存在的字段,见代码及截图;版本V3.6.4
```
---@enum ETestEnum
local ETestEnum = {
A = 1,
B = 2,
C = 3
}
---@param param ETestEnum
function Test(param)
print(param)
end
Test(ETestEnum.D);
```

### Actual Behaviour
[狗头]
### Reproduction steps
[狗头]
### Additional Notes
_No response_
### Log File
_No response_
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.
Piste de recherche
Reproduisez le rapport dans la LuaLS Visual Studio Code extension en utilisant le snippet ETestEnum fourni, puis examinez le chemin de vérification des types pour l’accès aux membres d’un enum. C’est terminé lorsque l’utilisation de ETestEnum.D, qui n’existe pas, est diagnostiquée tandis que les membres existants restent valides ; ajoutez ou exécutez un test de régression ciblé si le dépôt fournit le point d’entrée de test correspondant.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- lua
- Domaine
- devtools
- Type d'issue
- Bug
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100