LuaLS / LuaLS/lua-language-server
Allow type `T1?|T2?`
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Lua
- Sterne
- 4.4k
- Forks
- 442
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
`T1?|T2?` is now parsed as `T1?`, whose correct form should be `(T1|T2)?` or `T1|T2|nil` or `field? T1|T2`.
But many libraries (e.g. neovim plugins) are using this incorrect form.
This misuse is so prevalent that should we consider making this form legal?
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
Das Issue nennt keine Datei, keinen Test und keinen Einstiegspunkt. Beginne damit, die Parser-Verarbeitung für `T1?|T2?` zu lokalisieren, und ermittle dann, ob die Sprache diese Form akzeptieren sollte und wie sie sich zu `(T1|T2)?`, `T1|T2|nil` und `field? T1|T2` verhalten sollte; abgeschlossen ist die Arbeit erst mit einer expliziten Syntaxentscheidung und der entsprechenden Parser-Abdeckung.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- lua
- Bereich
- devtools
- Issue-Typ
- Feature
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Aktivitätsstatus
- Veraltet
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 25/100