51 lines
843 B
Lua
51 lines
843 B
Lua
local _M = {}
|
|
|
|
function _M.keys(t)
|
|
local keys = {}
|
|
for key,_ in pairs(t) do
|
|
table.insert(keys, key)
|
|
end
|
|
return keys
|
|
end
|
|
|
|
function _M.merge(t1,t2)
|
|
for k,v in pairs(t2) do
|
|
table.insert(t1,v)
|
|
end
|
|
return t1
|
|
end
|
|
|
|
function _M.has_value(tab, val)
|
|
for index, value in ipairs(tab) do
|
|
if value == val then return true end
|
|
end
|
|
return false
|
|
end
|
|
|
|
function _M.count(t)
|
|
local count = 0
|
|
for key,_ in pairs(t) do
|
|
count = count + 1
|
|
end
|
|
return count
|
|
end
|
|
|
|
function _M.minkey(t)
|
|
local a = {}
|
|
for n in pairs(t) do table.insert(a, n) end
|
|
table.sort(a)
|
|
return a[1]
|
|
end
|
|
|
|
function _M.implode(t,before,after,sep)
|
|
local result = ''
|
|
local count = _M.count(t)
|
|
for key,val in pairs(t) do
|
|
result = result..before..val..after
|
|
if key < count then result = result..sep end
|
|
end
|
|
return result
|
|
end
|
|
|
|
return _M
|