LuaLS / LuaLS/lua-language-server

Be confused to Backticks

Offen
#2,949 11 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

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

Beschreibung

Issue Description

I noticed two examples about backticks.
The first is in @generic Capture with Backticks

---@class Vehicle
local Vehicle = {}
function Vehicle:drive() end

---@generic T
---@param class `T` # the type is captured using `T`
---@return T       # generic type is returned
local function new(class) end

-- obj: Vehicle
local obj = new("Vehicle")

The second is in @param Generic Function Parameter

---@class Box

---@generic T
---@param objectID integer The ID of the object to set the type of
---@param type `T` The type of object to set
---@return `T` object The object as a Lua object
local function setObjectType(objectID, type) end

--> boxObject: Box
local boxObject = setObjectType(1, "Box")

Are there any differences between them?

---@return T
---@return `T`
Additional Notes

BTW, how can I annotate this:

---@class X
---@field A integer
---@field B string
---@field C boolean[]

---@param x X
---@param key string
---@return ?
function getter(x, key)
    return x[key]
end

Is it possible to use backticks?

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

Die Issue nennt keine Repository-Dateien, Tests oder Einstiegspunkte. Beginne damit, die beiden dokumentierten Backtick-Beispiele und die Getter-Annotation zu vergleichen, und ermittle dann, ob die Dokumentation ihre Bedeutungen und die erwartete Annotation für den dynamischen Feldzugriff eindeutig definiert; abgeschlossen ist die Arbeit, wenn die Unterschiede und die unterstützte Syntax dokumentiert sind oder die Issue mit einer konkreten Dokumentationsänderung gelöst ist.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
lua
Bereich
documentation
Issue-Typ
Dokumentation
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

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