LuaLS / LuaLS/lua-language-server

Adding an overload to an @class changes the result and gives type errors.

Đang mở
#2,978 5 bình luận 3 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

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ả

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

Expected Behaviour

Adding an Overload under ---@class should not change anything about how the type is handled.

Actual Behaviour

image

Here we have a class declaration and it's exactly how I want.

image

Adding an overload for the constructor generates warnings? Doesn't really make any sense.

Reproduction steps

Use ---@class to define a class.
Add ---@overload.
Make sure the class library you're using returns anything but any when extending or creating a new class.

Additional Notes

No response

Log File

No response

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. 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.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Hướng nghiên cứu

Payload không nêu tệp nguồn hay bài kiểm thử nào; trước tiên hãy tái hiện trường hợp này trong extension Visual Studio Code bằng khai báo Lua ---@class---@overload, sau đó so sánh kết quả kiểm tra kiểu khi có và không có overload. Theo dõi phần xử lý lớp và hàm khởi tạo có liên quan, và coi vấn đề đã được giải quyết khi việc thêm overload không còn làm thay đổi cách xử lý kiểu hợp lệ hoặc tạo ra các cảnh báo đã nê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, vscode
Lĩnh vực
devtools
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

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.