summaryrefslogtreecommitdiff
path: root/script/core
diff options
context:
space:
mode:
authoruhziel <uhziel@gmail.com>2020-12-15 16:11:37 +0800
committeruhziel <uhziel@gmail.com>2020-12-15 16:11:37 +0800
commit46274a0b416b5514bbacd65771d50912db3f80af (patch)
tree879413bb1c779e3890048dfd87d5c610ceff9dea /script/core
parent94190afdc01a1671964556fd22cac86f62bd2b30 (diff)
downloadlua-language-server-46274a0b416b5514bbacd65771d50912db3f80af.zip
提升undefined-field速度,寻找fields改为只会查找定义的 getFieldsOfDocClassAnyNotGet()
Diffstat (limited to 'script/core')
-rw-r--r--script/core/diagnostics/undefined-field.lua5
1 files changed, 1 insertions, 4 deletions
diff --git a/script/core/diagnostics/undefined-field.lua b/script/core/diagnostics/undefined-field.lua
index 106a2f1c..a8fadfed 100644
--- a/script/core/diagnostics/undefined-field.lua
+++ b/script/core/diagnostics/undefined-field.lua
@@ -53,12 +53,9 @@ return function (uri, callback)
local fields = {}
local empty = true
for _, docClass in ipairs(allDocClass) do
- local refs = vm.getFields(docClass)
+ local refs = vm.getFieldsOfDocClassAnyNotGet(docClass)
for _, ref in ipairs(refs) do
- if ref.type == 'getfield' or ref.type == 'getmethod' then
- goto CONTINUE
- end
local name = vm.getKeyName(ref)
if not name or vm.getKeyType(ref) ~= 'string' then
goto CONTINUE