LuaLS / LuaLS/lua-language-server
hexdecimal literals not being parsed properly
未关闭
还没有人认领这个 Issue。
- 主要语言
- Lua
- 星标
- 4.4k
- 派生
- 442
- PR 合并指标
- 30 天内没有已合并 PR
描述
How are you using the lua-language-server?
Visual Studio Code Extension (sumneko.lua)
Which OS are you using?
Linux
What is the issue affecting?
Type Checking, Completion
Expected Behaviour
---@alias intent_value
---|0x1
---|0x2
---|0x4
---|0x8
---|0x10
---|0x20
---|0x40
---|0x80
---|0x100
---|0x200
---|0x400
---|0x800
---|0x1000
---|0x2000
---|0x4000
---|0x8000
---|0x10000
---|0x100000
---|0x200000
---@param t intent_value
local function a(t) end
a(<??>) -- expected suggestions: the hexadecimal literals
Actual Behaviour
Reproduction steps
- copy the above code
- try a completion for the
afunction.
Additional Notes
I am somewhat confused at this because... it is doing something but not exactly?
The linter seems to understand this is a numeric literal, but the language server seems to only take the 0 value, and the actual value seems to be treated as a comment instead of a value, probably because it is not parsing it properly?
Log File
No response
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
从提供的 Lua 复现开始,检查语言服务器如何解析 @alias 中的十六进制值,并将其用于 a(...) 处的补全。在 Visual Studio Code 扩展中复现缺失的十六进制字面量建议,然后验证列出的值是否被识别为不同的数值选项,以及类型检查是否仍然接受 intent_value 参数。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- lua
- 领域
- devtools
- Issue 类型
- 缺陷
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 42/100