diff options
author | Lewis Russell <lewis6991@gmail.com> | 2023-08-17 11:10:06 +0100 |
---|---|---|
committer | Lewis Russell <me@lewisr.dev> | 2023-08-23 12:16:04 +0100 |
commit | 21152f7905b5e2f472b1a745109f6316a7e5994d (patch) | |
tree | cde59f89a28cf225fea96032f5d30d3547eb4fef /src | |
parent | c2341df64ab572457e94d214051facfb8f9fd653 (diff) | |
download | rneovim-21152f7905b5e2f472b1a745109f6316a7e5994d.tar.gz rneovim-21152f7905b5e2f472b1a745109f6316a7e5994d.tar.bz2 rneovim-21152f7905b5e2f472b1a745109f6316a7e5994d.zip |
fix(types): add more annotations to eval.lua
Diffstat (limited to 'src')
-rw-r--r-- | src/nvim/eval.lua | 111 |
1 files changed, 86 insertions, 25 deletions
diff --git a/src/nvim/eval.lua b/src/nvim/eval.lua index 886887dedb..6d12e14f3c 100644 --- a/src/nvim/eval.lua +++ b/src/nvim/eval.lua @@ -54,7 +54,7 @@ M.funcs = { name = 'abs', params = { { 'expr', 'any' } }, signature = 'abs({expr})', - returns = 'number' + returns = 'number', }, acos = { args = 1, @@ -2075,6 +2075,7 @@ M.funcs = { fast = true, name = 'executable', params = { { 'expr', 'any' } }, + returns = '0|1|-1', signature = 'executable({expr})', }, execute = { @@ -6189,7 +6190,12 @@ M.funcs = { ]=], name = 'maparg', - params = { { 'name', 'string' }, { 'mode', 'string' }, { 'abbr', 'boolean' }, { 'dict', 'boolean' } }, + params = { + { 'name', 'string' }, + { 'mode', 'string' }, + { 'abbr', 'boolean' }, + { 'dict', 'boolean' }, + }, returns = 'string|table<string,any>', signature = 'maparg({name} [, {mode} [, {abbr} [, {dict}]]])', }, @@ -10644,6 +10650,7 @@ M.funcs = { ]=], name = 'strchars', params = { { 'string', 'string' }, { 'skipcc', 'any' } }, + returns = 'integer', signature = 'strchars({string} [, {skipcc}])', }, strdisplaywidth = { @@ -10666,6 +10673,7 @@ M.funcs = { ]=], name = 'strdisplaywidth', params = { { 'string', 'string' }, { 'col', 'integer' } }, + returns = 'integer', signature = 'strdisplaywidth({string} [, {col}])', }, strftime = { @@ -10691,6 +10699,7 @@ M.funcs = { ]=], name = 'strftime', params = { { 'format', 'any' }, { 'time', 'any' } }, + returns = 'string', signature = 'strftime({format} [, {time}])', }, strgetchar = { @@ -10707,7 +10716,8 @@ M.funcs = { ]=], name = 'strgetchar', - params = { { 'str', 'any' }, { 'index', 'any' } }, + params = { { 'str', 'string' }, { 'index', 'integer' } }, + returns = 'integer', signature = 'strgetchar({str}, {index})', }, stridx = { @@ -10735,7 +10745,8 @@ M.funcs = { ]=], fast = true, name = 'stridx', - params = { { 'haystack', 'any' }, { 'needle', 'any' }, { 'start', 'any' } }, + params = { { 'haystack', 'string' }, { 'needle', 'string' }, { 'start', 'integer' } }, + returns = 'integer', signature = 'stridx({haystack}, {needle} [, {start}])', }, string = { @@ -10768,6 +10779,7 @@ M.funcs = { ]=], name = 'string', params = { { 'expr', 'any' } }, + returns = 'string', signature = 'string({expr})', }, strlen = { @@ -10785,6 +10797,7 @@ M.funcs = { ]=], name = 'strlen', params = { { 'string', 'string' } }, + returns = 'integer', signature = 'strlen({string})', }, strpart = { @@ -10818,7 +10831,13 @@ M.funcs = { ]=], fast = true, name = 'strpart', - params = { { 'src', 'any' }, { 'start', 'any' }, { 'len', 'any' }, { 'chars', 'any' } }, + params = { + { 'src', 'string' }, + { 'start', 'integer' }, + { 'len', 'integer' }, + { 'chars', '0|1' }, + }, + returns = 'string', signature = 'strpart({src}, {start} [, {len} [, {chars}]])', }, strptime = { @@ -10850,7 +10869,8 @@ M.funcs = { ]=], name = 'strptime', - params = { { 'format', 'any' }, { 'timestring', 'any' } }, + params = { { 'format', 'string' }, { 'timestring', 'string' } }, + returns = 'integer', signature = 'strptime({format}, {timestring})', }, strridx = { @@ -10876,7 +10896,12 @@ M.funcs = { ]=], name = 'strridx', - params = { { 'haystack', 'any' }, { 'needle', 'any' }, { 'start', 'any' } }, + params = { + { 'haystack', 'string' }, + { 'needle', 'string' }, + { 'start', 'integer' }, + }, + returns = 'integer', signature = 'strridx({haystack}, {needle} [, {start}])', }, strtrans = { @@ -10896,6 +10921,7 @@ M.funcs = { fast = true, name = 'strtrans', params = { { 'string', 'string' } }, + returns = 'string', signature = 'strtrans({string})', }, strutf16len = { @@ -10922,7 +10948,8 @@ M.funcs = { ]=], name = 'strutf16len', - params = { { 'string', 'string' }, { 'countcc', 'any' } }, + params = { { 'string', 'string' }, { 'countcc', '0|1' } }, + returns = 'integer', signature = 'strutf16len({string} [, {countcc}])', }, strwidth = { @@ -10941,6 +10968,7 @@ M.funcs = { fast = true, name = 'strwidth', params = { { 'string', 'string' } }, + returns = 'integer', signature = 'strwidth({string})', }, submatch = { @@ -10977,7 +11005,8 @@ M.funcs = { ]=], name = 'submatch', - params = { { 'nr', 'integer' }, { 'list', 'any' } }, + params = { { 'nr', 'integer' }, { 'list', 'integer' } }, + returns = 'string|string[]', signature = 'submatch({nr} [, {list}])', }, substitute = { @@ -11028,7 +11057,13 @@ M.funcs = { ]=], name = 'substitute', - params = { { 'string', 'string' }, { 'pat', 'any' }, { 'sub', 'any' }, { 'flags', 'string' } }, + params = { + { 'string', 'string' }, + { 'pat', 'string' }, + { 'sub', 'string' }, + { 'flags', 'string' }, + }, + returns = 'string', signature = 'substitute({string}, {pat}, {sub}, {flags})', }, swapfilelist = { @@ -11045,6 +11080,7 @@ M.funcs = { ]=], name = 'swapfilelist', params = {}, + returns = 'string[]', signature = 'swapfilelist()', }, swapinfo = { @@ -11085,7 +11121,8 @@ M.funcs = { ]=], name = 'swapname', - params = { { 'buf', 'any' } }, + params = { { 'buf', 'integer|string' } }, + returns = 'string', signature = 'swapname({buf})', }, synID = { @@ -11117,7 +11154,8 @@ M.funcs = { < ]=], name = 'synID', - params = { { 'lnum', 'integer' }, { 'col', 'integer' }, { 'trans', 'any' } }, + params = { { 'lnum', 'integer' }, { 'col', 'integer' }, { 'trans', '0|1' } }, + returns = 'integer', signature = 'synID({lnum}, {col}, {trans})', }, synIDattr = { @@ -11170,7 +11208,8 @@ M.funcs = { < ]=], name = 'synIDattr', - params = { { 'synID', 'any' }, { 'what', 'any' }, { 'mode', 'string' } }, + params = { { 'synID', 'integer' }, { 'what', 'string' }, { 'mode', 'string' } }, + returns = 'string', signature = 'synIDattr({synID}, {what} [, {mode}])', }, synIDtrans = { @@ -11186,7 +11225,8 @@ M.funcs = { ]=], name = 'synIDtrans', - params = { { 'synID', 'any' } }, + params = { { 'synID', 'integer' } }, + returns = 'integer', signature = 'synIDtrans({synID})', }, synconcealed = { @@ -11219,6 +11259,7 @@ M.funcs = { ]=], name = 'synconcealed', params = { { 'lnum', 'integer' }, { 'col', 'integer' } }, + returns = '{[1]: integer, [2]: string, [3]: integer}[]', signature = 'synconcealed({lnum}, {col})', }, synstack = { @@ -11244,6 +11285,7 @@ M.funcs = { ]=], name = 'synstack', params = { { 'lnum', 'integer' }, { 'col', 'integer' } }, + returns = 'integer[]', signature = 'synstack({lnum}, {col})', }, system = { @@ -11301,7 +11343,11 @@ M.funcs = { ]=], name = 'system', - params = { { 'cmd', 'any' }, { 'input', 'any' } }, + params = { + { 'cmd', 'string|string[]' }, + { 'input', 'string|string[]|integer' }, + }, + returns = 'string', signature = 'system({cmd} [, {input}])', }, systemlist = { @@ -11323,7 +11369,14 @@ M.funcs = { ]=], name = 'systemlist', - params = { { 'cmd', 'any' }, { 'input', 'any' }, { 'keepempty', 'any' } }, + params = { + { 'cmd', 'string|string[]' }, + { 'input', 'string|string[]|integer' }, + { 'keepempty', 'integer' }, + }, + -- TODO(lewis6991): Not sure the '' return case is possible via vim.fn + -- returns = "string[]|''", + returns = 'string[]', signature = 'systemlist({cmd} [, {input} [, {keepempty}]])', }, tabpagebuflist = { @@ -11364,7 +11417,8 @@ M.funcs = { Returns zero on error. ]=], name = 'tabpagenr', - params = { { 'arg', 'any' } }, + params = { { 'arg', "'$'|'#'" } }, + returns = 'integer', signature = 'tabpagenr([{arg}])', }, tabpagewinnr = { @@ -11385,7 +11439,8 @@ M.funcs = { ]=], name = 'tabpagewinnr', - params = { { 'tabarg', 'any' }, { 'arg', 'any' } }, + params = { { 'tabarg', 'integer' }, { 'arg', "'$'|'#'" } }, + returns = 'integer', signature = 'tabpagewinnr({tabarg} [, {arg}])', }, tagfiles = { @@ -11395,6 +11450,7 @@ M.funcs = { ]=], name = 'tagfiles', params = {}, + returns = 'string[]', signature = 'tagfiles()', }, taglist = { @@ -11445,7 +11501,7 @@ M.funcs = { ]=], name = 'taglist', - params = { { 'expr', 'any' }, { 'filename', 'any' } }, + params = { { 'expr', 'any' }, { 'filename', 'string' } }, signature = 'taglist({expr} [, {filename}])', }, tan = { @@ -11465,7 +11521,8 @@ M.funcs = { ]=], float_func = 'tan', name = 'tan', - params = { { 'expr', 'any' } }, + params = { { 'expr', 'number' } }, + returns = 'number', signature = 'tan({expr})', }, tanh = { @@ -11485,7 +11542,8 @@ M.funcs = { ]=], float_func = 'tanh', name = 'tanh', - params = { { 'expr', 'any' } }, + params = { { 'expr', 'number' } }, + returns = 'number', signature = 'tanh({expr})', }, tempname = { @@ -11537,7 +11595,7 @@ M.funcs = { }, test_write_list_log = { args = 1, - params = { { 'fname' } }, + params = { { 'fname', 'string' } }, signature = '', lua = false, }, @@ -11699,7 +11757,8 @@ M.funcs = { ]=], name = 'tr', - params = { { 'src', 'any' }, { 'fromstr', 'any' }, { 'tostr', 'any' } }, + params = { { 'src', 'string' }, { 'fromstr', 'string' }, { 'tostr', 'string' } }, + returns = 'string', signature = 'tr({src}, {fromstr}, {tostr})', }, trim = { @@ -11732,7 +11791,7 @@ M.funcs = { ]=], name = 'trim', - params = { { 'text', 'any' }, { 'mask', 'any' }, { 'dir', 'string' } }, + params = { { 'text', 'any' }, { 'mask', 'string' }, { 'dir', '0|1|2' } }, returns = 'string', signature = 'trim({text} [, {mask} [, {dir}]])', }, @@ -11756,6 +11815,7 @@ M.funcs = { float_func = 'trunc', name = 'trunc', params = { { 'expr', 'any' } }, + returns = 'integer', signature = 'trunc({expr})', }, type = { @@ -11792,6 +11852,7 @@ M.funcs = { fast = true, name = 'type', params = { { 'expr', 'any' } }, + returns = 'integer', signature = 'type({expr})', }, undofile = { @@ -11862,7 +11923,7 @@ M.funcs = { item. ]=], name = 'undotree', - params = { { 'buf', 'any' } }, + params = { { 'buf', 'integer|string' } }, signature = 'undotree([{buf}])', }, uniq = { |