切换搜索
搜索
切换菜单
notifications
切换个人菜单
查看“模块:Nodeclasses”的源代码
来自决策链云智库
更多操作
←
模块:Nodeclasses
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
local mArguments --initialize lazily local checkType = require('libraryUtil').checkType local p = {} --- Return matched nodeclasses from string --- @param string s Match string --- @return table Nodeclasses local function matchNodeclasses( s ) local data = mw.loadJsonData( 'Module:Nodeclasses/data.json' ) for i, nodeclasses in ipairs( data ) do for j, value in pairs( nodeclasses ) do if string.match( string.lower( value ), '^' .. string.lower( s ) .. '$' ) then return nodeclasses end end end return nil end function p.nodeclasses( frame ) mArguments = require( 'Module:Arguments' ) local args = mArguments.getArgs( frame ) local s = args[1] -- Default to name key local type = args['type'] or 'name' if not s then return '<span class="error">No text specified.</span>' end return p._nodeclasses( s, type ) end function p._nodeclasses( s, type ) -- Return nil for Lua if s == nil then return end -- Return table for Lua if type == nil then type = 'table' end local nodeclasses = matchNodeclasses( s ) -- Used for other Lua modules if type == 'table' then return nodeclasses -- Return error message elseif nodeclasses == nil or nodeclasses[type] == nil then return '<span class="error">No ' .. type .. ' found for ' .. s .. '.</span>' -- Return wiki page name elseif type == 'page' then return nodeclasses['page'] or nodeclasses['name'] -- Return string from matched nodeclasses else return nodeclasses[type] end end return p
本页使用的模板:
模块:Nodeclasses/doc
(
查看源代码
)
返回
模块:Nodeclasses
。