summaryrefslogtreecommitdiff
path: root/script/core/noder.lua
diff options
context:
space:
mode:
Diffstat (limited to 'script/core/noder.lua')
-rw-r--r--script/core/noder.lua21
1 files changed, 16 insertions, 5 deletions
diff --git a/script/core/noder.lua b/script/core/noder.lua
index d6069833..1107dcda 100644
--- a/script/core/noder.lua
+++ b/script/core/noder.lua
@@ -1583,11 +1583,6 @@ local partNodersMap = util.switch()
m.compilePartNodes(noders, ref)
end
end
-
- local nxt = source.next
- if nxt then
- m.compilePartNodes(noders, nxt)
- end
end)
: case 'setlocal'
: case 'getlocal'
@@ -1603,6 +1598,14 @@ local partNodersMap = util.switch()
if parent.value == source then
m.compilePartNodes(noders, parent)
end
+
+ if parent.type == 'call' then
+ local node = parent.node
+ if node.special == 'rawset'
+ or node.special == 'rawget' then
+ m.compilePartNodes(noders, parent)
+ end
+ end
end)
: case 'setfield'
: case 'getfield'
@@ -1634,6 +1637,14 @@ local partNodersMap = util.switch()
if parent.value == source then
m.compilePartNodes(noders, parent)
end
+
+ if parent.type == 'call' then
+ local node = parent.node
+ if node.special == 'rawset'
+ or node.special == 'rawget' then
+ m.compilePartNodes(noders, parent)
+ end
+ end
end)
: case 'label'
: call(function (noders, source)