blob: 4e3686418f655d5bad095546bb0f175a46f6a4cd (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
local createValue = require 'vm.value'
local library = require 'core.library'
local libraryBuilder = require 'vm.library'
return function (lsp)
local global = lsp and lsp.globalValue
if not global then
global = createValue('table')
end
for name, lib in pairs(library.global) do
if not global:rawGet(name) then
local value = libraryBuilder.value(lib)
global:rawSet(name, value)
end
end
if lsp then
lsp.globalValue = global
end
return global
end
|