mirror of
https://github.com/linux-man/LoveFrames.git
synced 2024-11-18 16:04:22 +00:00
65 lines
1.2 KiB
Lua
65 lines
1.2 KiB
Lua
return function(utf8)
|
|
|
|
function utf8.util.copy(obj, deep)
|
|
if type(obj) == 'table' then
|
|
local result = {}
|
|
if deep then
|
|
for k,v in pairs(obj) do
|
|
result[k] = utf8.util.copy(v, true)
|
|
end
|
|
else
|
|
for k,v in pairs(obj) do
|
|
result[k] = v
|
|
end
|
|
end
|
|
return result
|
|
else
|
|
return obj
|
|
end
|
|
end
|
|
|
|
local function dump(val, tab)
|
|
tab = tab or ''
|
|
|
|
if type(val) == 'table' then
|
|
utf8.config.logger('{\n')
|
|
for k,v in pairs(val) do
|
|
utf8.config.logger(tab .. tostring(k) .. " = ")
|
|
dump(v, tab .. '\t')
|
|
utf8.config.logger("\n")
|
|
end
|
|
utf8.config.logger(tab .. '}\n')
|
|
else
|
|
utf8.config.logger(tostring(val))
|
|
end
|
|
end
|
|
|
|
function utf8.util.debug(...)
|
|
local t = {...}
|
|
for _, v in ipairs(t) do
|
|
if type(v) == "table" and not (getmetatable(v) or {}).__tostring then
|
|
dump(v, '\t')
|
|
else
|
|
utf8.config.logger(tostring(v), " ")
|
|
end
|
|
end
|
|
|
|
utf8.config.logger('\n')
|
|
end
|
|
|
|
function utf8.debug(...)
|
|
if utf8.config.debug then
|
|
utf8.config.debug(...)
|
|
end
|
|
end
|
|
|
|
function utf8.util.next(str, bs)
|
|
local nbs1 = utf8.next(str, bs)
|
|
local nbs2 = utf8.next(str, nbs1)
|
|
return utf8.raw.sub(str, nbs1, nbs2 - 1), nbs1
|
|
end
|
|
|
|
return utf8.util
|
|
|
|
end
|