summaryrefslogtreecommitdiff
path: root/server
diff options
context:
space:
mode:
Diffstat (limited to 'server')
-rw-r--r--server/src/core/hover/emmy_function.lua7
-rw-r--r--server/src/emmy/funcType.lua4
-rw-r--r--server/test/hover/init.lua9
3 files changed, 19 insertions, 1 deletions
diff --git a/server/src/core/hover/emmy_function.lua b/server/src/core/hover/emmy_function.lua
index 6306957f..313b5276 100644
--- a/server/src/core/hover/emmy_function.lua
+++ b/server/src/core/hover/emmy_function.lua
@@ -41,7 +41,12 @@ local function buildEmmyArgs(emmy, object, select)
end
local function buildEmmyReturns(emmy)
- return '\n -> ' .. emmy:getReturn():getType()
+ local rtn = emmy:getReturn()
+ if rtn then
+ return '\n -> ' .. rtn:getType()
+ else
+ return '\n -> ' .. 'any'
+ end
end
local function buildEnum(lib)
diff --git a/server/src/emmy/funcType.lua b/server/src/emmy/funcType.lua
index 2acf8d28..f467f763 100644
--- a/server/src/emmy/funcType.lua
+++ b/server/src/emmy/funcType.lua
@@ -9,6 +9,10 @@ function mt:getType()
return 'function'
end
+function mt:getName()
+ return 'function'
+end
+
function mt:getSource()
return listMgr.get(self.source)
end
diff --git a/server/test/hover/init.lua b/server/test/hover/init.lua
index c6e01f25..f1a18c06 100644
--- a/server/test/hover/init.lua
+++ b/server/test/hover/init.lua
@@ -760,6 +760,15 @@ local r: boolean
]]
TEST [[
+---@param f fun():void
+function t(<?f?>) end
+]]
+[[
+function ()
+ -> any
+]]
+
+TEST [[
---@param names string[]
local function f(<?names?>)
end