aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorLewis Russell <lewis6991@gmail.com>2023-08-17 11:10:06 +0100
committerLewis Russell <me@lewisr.dev>2023-08-23 12:16:04 +0100
commit21152f7905b5e2f472b1a745109f6316a7e5994d (patch)
treecde59f89a28cf225fea96032f5d30d3547eb4fef /src
parentc2341df64ab572457e94d214051facfb8f9fd653 (diff)
downloadrneovim-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.lua111
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 = {