Module:CommonFunctions: Difference between revisions

no edit summary
No edit summary
No edit summary
 
Line 52: Line 52:
-- Implement sorted loop through array.
-- Implement sorted loop through array.
function spairs(t)
function spairs(t)
    local keys = {}
    for k in pairs(t) do
        keys[#keys + 1] = k
    end
    table.sort(keys)
    local i = 0
    return function()
        i = i + 1
        if keys[i] then
            return keys[i], t[keys[i]]
        end
    end
end
function spairsByLength(t)
     local keys = {}
     local keys = {}
     for k in pairs(t) do keys[#keys + 1] = k end
     for k in pairs(t) do keys[#keys + 1] = k end