aboutsummaryrefslogtreecommitdiff
path: root/runtime/lua/vim/lsp/_meta.lua
diff options
context:
space:
mode:
authorChristian Clason <c.clason@uni-graz.at>2023-08-09 11:06:13 +0200
committerGitHub <noreply@github.com>2023-08-09 11:06:13 +0200
commitc43c745a14dced87a23227d7be4f1c33d4455193 (patch)
tree0cd5cf1cbbfa20be7fffbad696ba5ee97181847e /runtime/lua/vim/lsp/_meta.lua
parent8afdc1f3867a620c8235b3d3964b019b94657190 (diff)
downloadrneovim-c43c745a14dced87a23227d7be4f1c33d4455193.tar.gz
rneovim-c43c745a14dced87a23227d7be4f1c33d4455193.tar.bz2
rneovim-c43c745a14dced87a23227d7be4f1c33d4455193.zip
fix(lua): improve annotations for stricter luals diagnostics (#24609)
Problem: luals returns stricter diagnostics with bundled luarc.json Solution: Improve some function and type annotations: * use recognized uv.* types * disable diagnostic for global `vim` in shared.lua * docs: don't start comment lines with taglink (otherwise LuaLS will interpret it as a type) * add type alias for lpeg pattern * fix return annotation for `vim.secure.trust` * rename local Range object in vim.version (shadows `Range` in vim.treesitter) * fix some "missing fields" warnings * add missing required fields for test functions in eval.lua * rename lsp meta files for consistency
Diffstat (limited to 'runtime/lua/vim/lsp/_meta.lua')
-rw-r--r--runtime/lua/vim/lsp/_meta.lua22
1 files changed, 22 insertions, 0 deletions
diff --git a/runtime/lua/vim/lsp/_meta.lua b/runtime/lua/vim/lsp/_meta.lua
new file mode 100644
index 0000000000..acf799264e
--- /dev/null
+++ b/runtime/lua/vim/lsp/_meta.lua
@@ -0,0 +1,22 @@
+---@meta
+error('Cannot require a meta file')
+
+---@alias lsp-handler fun(err: lsp.ResponseError|nil, result: any, context: lsp.HandlerContext, config: table|nil): any?
+
+---@class lsp.HandlerContext
+---@field method string
+---@field client_id integer
+---@field bufnr? integer
+---@field params? any
+
+---@class lsp.ResponseError
+---@field code integer
+---@field message string
+---@field data string|number|boolean|table[]|table|nil
+
+--- @class lsp.DocumentFilter
+--- @field language? string
+--- @field scheme? string
+--- @field pattern? string
+
+--- @alias lsp.RegisterOptions any | lsp.StaticRegistrationOptions | lsp.TextDocumentRegistrationOptions