Repository navigation
进一步对泛型能力的推导进行增强
1、修复了类成员中定义泛型方法时,由于成员函数默认的第一个传参类型为self,从而导致推断错误的问题:
例如在GameFacade.lua 中有如下定义:
---@class GameFacade
local GameFacade = class('GameFacade')
---@return GameFacade
function GameFacade:GetInstans()
end
---@generic T
---@param managerName `T`
---@return T
function GameFacade:GetManager(managerName)
end
return GameManager在GameManager.lua中的定义:
---@class GameManager
local GameManager = class('GameManager')
function GameManager:GetPlayerId()
end
return GameManager在业务代码中:
local gameMgr = GameFacade:GetInstance():GetManager('GameManager')
print('playerId = ', gameMgr:GetPlayerId()) -- GetPlayerId 方法能够正确提示及跳转以上是类似 pureMVC 中挺常见的使用场景
2、进一步加强了推导的能力,修复了推导嵌套导致不准确的情况,可参考工程实例
../luahelper-lsp/testdata/hover/hover_generic.lua
使用方法
将以下文件按需下载,然后解压放入 .vscode/extensions/yinfei.luahelper-0.2.28/server 目录中,覆盖即可(以防万一请做好备份)
armmaclualsp.zip
lualsp.exe.zip
maclualsp.zip
linux 环境未编译
Ps:如有最新版,请使用最新版