serializePackages
Definition
-- @/lua/common/utils.lua:1000
function serializePackages(reason)
if reason == nil then reason = 'reload' end
local tmp = {}
for k, v in pairs(package.loaded) do
if isPackage(k, v) and type(v) == 'table' and (v['onDeserialized'] ~= nil or v['onSerialize'] ~= nil) then
local success, result = xpcall(_unsafeSerializePackage, debug.traceback, k, v, reason)
if success then
tmp[k] = result
else
log('E', 'serializePackages', 'Error serializing package '..k..': '..tostring(result))
end
end
end
tableMergeExceptFunc(tmp, extensions.getSerializationData(reason))
return tmp
end
Callers
@/lua/ge/main.lua
if not be then return end
local d = serializePackages()
d.levelLoaded = levelLoaded
@/lua/vehicle/beamstate.lua
save.beamCount = tableSizeC(v.data.beams)
save.luaState = serialize(serializePackages("save"))
save.hydros = {}
@/lua/vehicle/main.lua
function exportPersistentData()
local d = serializePackages("reload")
--log('D', "default.exportPersistentData", d)