본문으로 이동

모듈:table/compressSparseArray

위키낱말사전, 말과 글의 누리

이 모듈에 대한 설명문서는 모듈:table/compressSparseArray/설명문서에서 만들 수 있습니다

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