local files = require 'files' local guide = require "parser.guide" local await = require 'await' local helper = require 'core.diagnostics.helper.missing-doc-helper' ---@async local function findSetField(ast, name, callback) ---@async guide.eachSourceType(ast, 'setfield', function (source) await.delay() if source.node[1] == name then local funcPtr = source.value.node if not funcPtr then return end local func = funcPtr.value if not func then return end if funcPtr.type == 'local' and func.type == 'function' then helper.CheckFunction(func, callback, 'DIAG_MISSING_LOCAL_EXPORT_DOC_COMMENT', 'DIAG_MISSING_LOCAL_EXPORT_DOC_PARAM', 'DIAG_MISSING_LOCAL_EXPORT_DOC_RETURN') end end end) end ---@async return function (uri, callback) local state = files.getState(uri) if not state then return end if not state.ast then return end ---@async guide.eachSourceType(state.ast, 'return', function (source) await.delay() --table for i, ret in ipairs(source) do if ret.type == 'getlocal' then if ret.node.value and ret.node.value.type == 'table' then findSetField(state.ast, ret[1], callback) end end end end) end