LuaLS / LuaLS/lua-language-server
Diagnostics.(param-type-mismatch)
Đang mở
Chưa có ai nhận issue này.
enhancement
feat/type check
- Ngôn ngữ chính
- Lua
- Star
- 4.4k
- Fork
- 442
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Mô tả
---@enum Test
local Test = {
Test1 = 1,
Test2 = 2,
Test3 = 2,
}
---@type Test|Test[]
local a
---@param c Test
local function b(c) end
if type(a) == "table" then
b(a[1]);
else
b(a);
end
---@class Class
---@field a Test|Test[]
local Class = {};
function Class:Test()
if type(self.a) == "table" then
b(self.a[1]);
else
b(self.a);
end
end


Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Hướng nghiên cứu
Không có tệp nguồn hoặc bài kiểm thử nào được nêu tên. Hãy bắt đầu bằng cách tái hiện đoạn mã Lua được hiển thị và kiểm tra các chẩn đoán param-type-mismatch cho cả union cục bộ và trường của lớp; hoàn tất khi các chẩn đoán xử lý đúng kiểu được thu hẹp bởi từng phép kiểm tra kiểu.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- lua
- Lĩnh vực
- tooling
- Loại issue
- Lỗi
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Cần làm rõ
- Mức phù hợp với người mới
- 35/100