模块:HashArgs

来自维阿百科
霓虹灯鱼讨论 | 贡献2022年7月8日 (五) 21:15的版本 (导入1个版本)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳转至: 导航搜索

此模块的文档可以在模块:HashArgs/doc创建

-- Originally designed and coded by Maya (U:Maya-Maja-Maia)
 
local getArgs = require('Module:Arguments').getArgs
 
local hashObj = function (obj)
    local algo = obj.algo
    local actualAlgo = "sha256" -- safer than md5, but really who cares
    if algo then
        local algoList = mw.hash.listAlgorithms()
        for i, v in ipairs(algoList) do
            if algo == v then 
                actualAlgo = algo
                break
            end
        end
    end
    return mw.hash.hashValue(actualAlgo, mw.dumpObject(obj))
end
 
local hashArgs = {
    main = function (frame)
        return hashObj(getArgs(frame))
    end,
    hashObj = hashObj
}
 
return hashArgs