LuaLS / LuaLS/lua-language-server

Cannot inherit from class alias

Offen
#2,623 3 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Vorherrschende Sprache
Lua
Sterne
4.4k
Forks
442
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

### 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?

Annotations

### Expected Behaviour

If I have an `@alias` for a class, I expect it to be usable in inheritance for other classes, ex. `@class MyNewClass : MyAlias`

### Actual Behaviour

The inheritance triggers `undefined-doc-class` diagnostic although the alias can still be ctrl+clicked to go to its source.

### Reproduction steps

Snippet that reproduces the issue:
```lua
---@class MyClass

---@alias MyAlias MyClass

-- Will trigger undefined-doc-class, though MyAlias can be ctrl+clicked to go to source.
---@class MyNewClass : MyAlias

```

### Additional Notes

_No response_

### Log File

[service.log](https://github.com/LuaLS/lua-language-server/files/15048879/service.log)

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne mit der mitgelieferten Lua-Reproduktion und verfolge, wie die Auflösung von @alias behandelt wird, wenn eine Klasse Vererbung deklariert. Die Aufgabe ist erledigt, wenn MyNewClass : MyAlias nicht mehr undefined-doc-class ausgibt, während der Alias weiterhin zu seiner Quelle navigierbar bleibt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
lua
Bereich
devtools
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
45/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.