跳转到内容

Module:Documentation/wrapper

勤求古训,博采众方
鹿野耕云留言 | 贡献2025年11月24日 (一) 21:23的版本 (创建页面,内容为“-- 包裹Module:Documentation不能直接被模板呼叫的函數 local mDocumentation = require('Module:Documentation') local getArgs = require('Module:Arguments').getArgs return { wrapper = function (frame) local args = frame.args local method = args.method if not method or not mDocumentation[method] or method:match('^_') -- reject private function then return require('Module:Error').error({'Can\'t find method "' .. method .. '" in […”)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
-- 包裹[[Module:Documentation]]不能直接被模板呼叫的函數
local mDocumentation = require('Module:Documentation')
local getArgs = require('Module:Arguments').getArgs

return {
	wrapper = function (frame)
		local args = frame.args
		local method = args.method
		if
			not method
			or not mDocumentation[method]
			or method:match('^_') -- reject private function
		then
			return require('Module:Error').error({'Can\'t find method "' .. method .. '" in [[Module:Documentation]].'})
		elseif
			mDocumentation['_' .. method] -- reject private function
		then
			return require('Module:Error').error({'Please use <code>{{#invoke:[[Module:Documentation|Documentation]]|' .. method .. '|...}}</code> instead.'})
		end
		local env = mDocumentation.getEnvironment(args)
		return mDocumentation[method](args, env)
	end
}