VSCode-EmmyLua icon indicating copy to clipboard operation
VSCode-EmmyLua copied to clipboard

符号查找不到bug

Open luqingyang opened this issue 1 year ago • 0 comments

---@class Object
---@field __index Object @本类
---@field __name string	 @类名
---@field __instance_name string @类名
---@field __class Object @本类
---@field __super Object @基类
---@field __cacheReleased? boolean
---@field constructor? fun(...)
---@field CacheNew? fun(...)
---@field CacheRelease? fun(...)
local Object = { __name = "Object" }
Object.__index = Object


---定义类
---@generic T : Object
---@param name	`T`	类名称
---@return		T	类
function class(name)
    return inherit(Object, name)
end

---@generic T
---@param super	table	基类
---@param name	`T`	类名称
function inherit(super, name)
    local newClass   = {}
    newClass.__index = newClass
    newClass.__name  = name
    newClass.__class = newClass
    newClass.__super = super
    return setmetatable(newClass, super)
end

---@class WndBase : Object
---@field _wnd number
---@field _id number
WndBase = class("WndBase")


---@class WndObject : WndBase
WndObject = inherit(WndBase, "WndObject");

function WndObject:constructor(path, afterInit, parent, ...)
    -- prepare init param
    self._id = 0
    self._wnd = 0
end

如上代码,倒数第二行,第三行的self._id和self._wnd定位查找不到基类WndBase中的定义

luqingyang avatar Jun 05 '24 03:06 luqingyang