LuaLS / LuaLS/lua-language-server
generic in the loop
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
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, Type Checking
Expected Behaviour
Actual Behaviour
Reproduction steps
---@generic T
---@param t T[]
---@return fun(): { first: integer, second: T }
local function test_function(t)
local ending = #t
local begining = 1
local j = begining
return function()
if ending < j then
return nil
end
local i = t[j]
j = j + 1
if i then return { first = j - 1, second = i } end
end
end
---@type integer[]
local test_table = {}
local test_result = test_function(test_table)()
local test1 = test_result.second
for itr in test_function(test_table) do
local test2 = itr.first;
local test3 = itr.second;
end
Additional Notes
No response
Log File
No response
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
Führe zunächst die Lua-Reproduktion im Issue aus und vergleiche die abgeleiteten Typen mit den Screenshots zu Expected Behaviour und Actual Behaviour. Verfolge anschließend die Einstiegspunkte des Language Servers für Annotationen und Typprüfung bei generischen Funktionen und Iterator-Rückgabewerten und überprüfe dann, ob die gemeldeten Typen dem erwarteten Ergebnis entsprechen.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- lua, vscode
- Bereich
- tooling
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100