Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.


Exports the exports function for use by Template:Module exports.


local p = {}

local TableTools = require('Module:TableTools')
local getArgs = require('Module:Arguments').getArgs

function p.exports(frame)
	local args = getArgs(frame)
	local title = args[1] or mw.title.getCurrentTitle().fullText
	local moduleExports = require(title)

	local keys = TableTools.keysToList(moduleExports, function (a, b)
		return string.lower(a) < string.lower(b)
	end)

	local outputKeys = {}
	for _, v in ipairs(keys) do
		if not args.exclude or not  v:match(args.exclude) then 
			table.insert(outputKeys, '<code><span style="white-space: pre;">' .. v .. '</span></code>')
		end
	end
	
	return mw.text.listToText(outputKeys)
end

return p