LuaLS / LuaLS/lua-language-server
Assigning an exact class field is bypassed with array notation
Offen
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Lua
- Sterne
- 4.4k
- Forks
- 442
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
Exact classes can still have fields injected using array notation (myClass['field'] = 1) without a warning.
---@class (exact) foo
---@field bar string
local foo = {}
foo.bar = "1" -- no warning (OK)
foo.baz = "2" -- warning (OK)
foo['baz'] = "3" -- no warning (not OK)
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne mit dem Lua-Reproducer im Issue und verfolge den Diagnosepfad für Feldzuweisungen an exakte Klassen. Vergleiche, wie Punktnotation und Klammernotation für denselben Feldzugriff behandelt werden. Fertig ist die Aufgabe, wenn die gezeigte Zuweisung foo['baz'] dieselbe Warnung erzeugt wie foo.baz.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- lua
- Bereich
- tooling
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Klar beschrieben
- Anfängerfreundlichkeit
- 45/100