summaryrefslogtreecommitdiff
path: root/server-beta/src/vm/getLinks.lua
diff options
context:
space:
mode:
Diffstat (limited to 'server-beta/src/vm/getLinks.lua')
-rw-r--r--server-beta/src/vm/getLinks.lua48
1 files changed, 0 insertions, 48 deletions
diff --git a/server-beta/src/vm/getLinks.lua b/server-beta/src/vm/getLinks.lua
deleted file mode 100644
index 6875771f..00000000
--- a/server-beta/src/vm/getLinks.lua
+++ /dev/null
@@ -1,48 +0,0 @@
-local guide = require 'parser.guide'
-local vm = require 'vm.vm'
-
-local function getLinks(root)
- local cache = {}
- local ok
- guide.eachSpecialOf(root, 'require', function (source)
- local call = source.parent
- if call.type == 'call' then
- local uris = vm.getLinkUris(call)
- if uris then
- ok = true
- for i = 1, #uris do
- local uri = uris[i]
- if not cache[uri] then
- cache[uri] = {}
- end
- cache[uri][#cache[uri]+1] = call
- end
- end
- end
- end)
- if not ok then
- return nil
- end
- return cache
-end
-
-function vm.getLinks(source)
- source = guide.getRoot(source)
- local cache = vm.cache.getLinks[source]
- if cache ~= nil then
- return cache
- end
- local unlock = vm.lock('getLinks', source)
- if not unlock then
- return nil
- end
- local clock = os.clock()
- cache = getLinks(source) or false
- local passed = os.clock() - clock
- if passed > 0.1 then
- log.warn(('getLinks takes [%.3f] sec!'):format(passed))
- end
- vm.cache.getLinks[source] = cache
- unlock()
- return cache
-end