LuaLS / LuaLS/lua-language-server

Be confused to Backticks

未关闭
#2,949 11 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

documentation
主要语言
Lua
星标
4.4k
派生
442
PR 合并指标
30 天内没有已合并 PR

描述

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?

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

调研方向

该 issue 没有指出任何仓库文件、测试或入口点。先比较文档中用反引号标出的两个示例和 getter 注解,然后确定文档是否清楚定义了它们的含义以及动态字段访问所需的注解;当差异和受支持的语法已记录在文档中,或该 issue 已通过具体的文档修改得到解决时,即视为完成。

由索引模型根据 Issue 内容生成。

评估

技术栈
lua
领域
documentation
Issue 类型
文档
难度
4/5
预计耗时
3-5 天
活跃度
停滞
描述清晰度
需要澄清
新手友好度
35/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。