置顶公告:【置顶】关于临时开启评论区所有功能的公告(2022.10.22) | 【置顶】关于本站Widget恢复使用的公告
  • 你好~!欢迎来到萌娘百科镜像站!如需查看或编辑,请联系本站管理员注册账号。
  • 本镜像站和其他萌娘百科的镜像站无关,请注意分别。

Module:HashArgs

猛汉♂百科,万男皆可猛的百科全书!转载请标注来源页面的网页链接,并声明引自猛汉百科。内容不可商用。
跳到导航 跳到搜索
Template-info.svg 模块文档  [创建] [刷新]
-- 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