Minetest-WorldEditAdditions/worldeditadditions/utils/tables/table_unique.lua
Starbeamrainbowlabs 1f44e240fb
utils/tables: refactor into separate files
..it was getting rather long, because Lua doesn't exactly come with 
batteries included :-/
2021-06-03 01:57:46 +01:00

20 lines
541 B
Lua

--- Builds a new table with the elements of the given table appearing at most once.
-- @param tbl table The table of values to make unique.
-- @returns table A new table containing the values of the given table appearing at most once.
function worldeditadditions.table_unique(tbl)
local newtbl = {}
for i,value in ipairs(tbl) do
local seen = false
for j,seenvalue in ipairs(newtbl) do
if value == seenvalue then
seen = true
break
end
end
if not seen then
table.insert(newtbl, value)
end
end
return newtbl
end