1
我們需要序列化包含字符串,數字,表格和函數的Lua表格。在編程Lua書中有代碼序列化由字符串,數字和表組成的表格。我們試圖調整這個函數來增加序列化函數的能力。具體而言,我們在功能上增加了一個案例類型==「功能」和稱爲string.dump:序列化Lua表,包括純粹的Lua函數?
if type(o) == "number" then
return tostring(o)
elseif type(o) == "function" then
return "loadstring("..string.dump(o)..")"
else
-- assume it is a string
return string.format("%q", o)
end
此注入的Lua字節碼到明文表格表示的其餘部分。這是我們可以提出的最接近的事情。
我們不關心他是否序列化的結果是人類可讀與否,它只是必須能夠像這樣的工作:
mytable = [some complicated lua table with functions]
dump = dump_t(mytable)
...
loaded_table = load_t(dump)
任何想法?