Module:User:Theknightwho/preparser

local export = {}

function export.memo_key(template, args) local sort_args = {} for k, v in pairs(args) do table.insert(sort_args, k .. "\254" .. v .. "\255") end table.sort(sort_args) return template .. "\255" .. table.concat(sort_args) end

function export.preparse(frame) if not frame.args["\255"] then local parent_frame = frame:getParent local preloaded = mw.loadData("Module:User:Theknightwho/preparser/core")[export.memo_key(parent_frame:getTitle, parent_frame.args)] if preloaded then return preloaded end else frame.args["\255"] = nil end end

return export