summaryrefslogtreecommitdiff
path: root/server/src/service.lua
diff options
context:
space:
mode:
author最萌小汐 <sumneko@hotmail.com>2018-12-27 18:10:33 +0800
committer最萌小汐 <sumneko@hotmail.com>2018-12-27 18:10:33 +0800
commitffbff19e45c6f41fd6dba9f0baec0eda45b6f05b (patch)
treeed052b43461ab1ab386257a6548d343baa635147 /server/src/service.lua
parent9474261f54ae620a853856f9adce0083ce66dec7 (diff)
downloadlua-language-server-ffbff19e45c6f41fd6dba9f0baec0eda45b6f05b.zip
显示错误
Diffstat (limited to 'server/src/service.lua')
-rw-r--r--server/src/service.lua14
1 files changed, 10 insertions, 4 deletions
diff --git a/server/src/service.lua b/server/src/service.lua
index b8546665..ae6b6714 100644
--- a/server/src/service.lua
+++ b/server/src/service.lua
@@ -98,7 +98,7 @@ function mt:_doDiagnostic()
end
for uri in pairs(copy) do
local obj = self._file[uri]
- if obj and obj.vm then
+ if obj then
local data = {
uri = uri,
vm = obj.vm,
@@ -273,7 +273,7 @@ end
function mt:compileAst(obj)
local ast, err = parser:ast(obj.text)
- obj.astErr = nil
+ obj.astErr = err
if not ast then
if type(err) == 'string' then
local message = lang.script('PARSER_CRASH', err)
@@ -282,8 +282,6 @@ function mt:compileAst(obj)
type = 3,
message = lang.script('PARSER_CRASH', err:match 'grammar%.lua%:%d+%:(.+)'),
})
- else
- obj.astErr = err
end
end
return ast
@@ -351,6 +349,14 @@ function mt:getVM(uri)
return obj.vm
end
+function mt:getAstErrors(uri)
+ local obj = self._file[uri]
+ if not obj then
+ return nil
+ end
+ return obj.astErr
+end
+
function mt:compileChain(child, parent)
local parentObj = self._file[parent]
local childObj = self._file[child]