summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--server/src/matcher/diagnostics.lua3
-rw-r--r--server/src/method/textDocument/publishDiagnostics.lua3
-rw-r--r--server/src/service.lua3
-rw-r--r--server/test/compile/init.lua22
-rw-r--r--server/test/main.lua1
5 files changed, 4 insertions, 28 deletions
diff --git a/server/src/matcher/diagnostics.lua b/server/src/matcher/diagnostics.lua
index 124f86fe..814beaa2 100644
--- a/server/src/matcher/diagnostics.lua
+++ b/server/src/matcher/diagnostics.lua
@@ -136,8 +136,9 @@ local function searchNewLineCall(results, lines, callback)
end
end
-return function (ast, results, lines, uri)
+return function (vm, lines, uri)
local datas = {}
+ local results = vm.results
-- 未使用的局部变量
searchUnusedLocals(results, function (start, finish, key)
datas[#datas+1] = {
diff --git a/server/src/method/textDocument/publishDiagnostics.lua b/server/src/method/textDocument/publishDiagnostics.lua
index aa4a8340..4ecfc17f 100644
--- a/server/src/method/textDocument/publishDiagnostics.lua
+++ b/server/src/method/textDocument/publishDiagnostics.lua
@@ -77,11 +77,10 @@ end
return function (lsp, params)
local vm = params.vm
- local ast = params.ast
local lines = params.lines
local uri = params.uri
- local datas = matcher.diagnostics(ast, vm.results, lines, uri)
+ local datas = matcher.diagnostics(vm, lines, uri)
if not datas then
-- 返回空表以清空之前的结果
diff --git a/server/src/service.lua b/server/src/service.lua
index 1513126b..c1b49a36 100644
--- a/server/src/service.lua
+++ b/server/src/service.lua
@@ -207,7 +207,6 @@ function mt:compileText(uri)
end
self._needDiagnostics[uri] = {
- ast = ast,
vm = obj.vm,
lines = obj.lines,
uri = uri,
@@ -227,7 +226,7 @@ function mt:on_tick()
self:_doProto(proto)
end
self:_buildTextCache()
- --self:_doDiagnostic()
+ self:_doDiagnostic()
end
function mt:listen()
diff --git a/server/test/compile/init.lua b/server/test/compile/init.lua
deleted file mode 100644
index 265388d2..00000000
--- a/server/test/compile/init.lua
+++ /dev/null
@@ -1,22 +0,0 @@
-local parser = require 'parser'
-local matcher = require 'matcher'
-
-rawset(_G, 'TEST', true)
-
-function TEST(buf)
- local ast = parser:ast(buf)
- assert(ast)
- local results = matcher.compile(ast)
- assert(results)
-end
-
-TEST [[
-obj.lines:
-
-self._needDiagnostics[uri] = {
- ast = ast,
- results = obj.results,
- lines = obj.lines,
- uri = uri,
-}
-]]
diff --git a/server/test/main.lua b/server/test/main.lua
index c5f57ced..9e619b70 100644
--- a/server/test/main.lua
+++ b/server/test/main.lua
@@ -24,7 +24,6 @@ local function main()
end
test 'vm'
- test 'compile'
--test 'type_inference'
test 'definition'
--test 'find_lib'