LuaLS / LuaLS/lua-language-server
hexdecimal literals not being parsed properly
オープン
まだ誰も着手していません。
- 主要言語
- 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 にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
提供された Lua の再現例から始め、言語サーバーが @alias 内の 16 進数値をどのように解析し、a(...) での補完に使用しているかを調べます。Visual Studio Code 拡張機能で欠落している 16 進リテラルの候補を再現し、その後、列挙された値が異なる数値オプションとして認識され、型チェックが引き続き intent_value 引数を受け入れることを確認します。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- lua
- 領域
- devtools
- issue の種類
- バグ
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 42/100