LuaLS / LuaLS/lua-language-server

[Feature Request] Allow mark any as @enum

Ouverte
#2,820 2 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

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

Issue Description
---@enum Type
local Type = {
	A = 1,
	B = 2,
	-- ...
}

---@return {[string]: integer}
function Generate_enum()
	return {}
end

---@enum (partial) Type
local Type2 = {}

for k, v in pairs(Generate_enum()) do
	Type2[k] = v
end

---@enum (partial) Type
local Type3 = Generate_enum()

image

image

The point is to achieve the same behavior for Type3 as for Type2.

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.

Piste de recherche

Commencez par reproduire les exemples Lua de l’issue et examinez la gestion existante de @enum par le language server ainsi que l’inférence de types pour les affectations. Comparez Type2 et Type3, puis ajoutez des tests afin qu’un enum partiel affecté directement depuis Generate_enum() bénéficie du même comportement que l’affectation incrémentale ; le travail est terminé lorsque leurs diagnostics et leurs informations de type correspondent.

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

Évaluation

Stack technique
lua
Domaine
devtools
Type d'issue
Fonctionnalité
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
42/100

Recevez les nouvelles issues par e-mail

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