Module:table/compressSparseArray
Itsura
- This module lacks a documentation subpage. Please create it.
- Useful links: root page • root page’s subpages • links • transclusions • testcases • sandbox
local table_num_keys_module = "Module:table/numKeys"
local function num_keys(...)
num_keys = require(table_num_keys_module)
return num_keys(...)
end
--[==[
Given a list that may contain gaps (e.g. {1, 2, nil, 4}), returns a new gapless list in the same order.]==]
return function(t)
local list, keys, i = {}, num_keys(t), 0
while true do
i = i + 1
local k = keys[i]
if k == nil then
return list
end
list[i] = t[k]
end
end