모듈:Params: 두 판 사이의 차이
imported>Hsl0 (새 문서: local p = {} function p.parent(frame) local par = frame:getParent() for depth = frame.args.depth or 1, depth, -1 do par = par:getParent() end return par.args[frame.args[1]]...) |
편집 요약 없음 |
||
(사용자 2명의 중간 판 4개는 보이지 않습니다) | |||
9번째 줄: | 9번째 줄: | ||
return par.args[frame.args[1]] or frame.args[2] | return par.args[frame.args[1]] or frame.args[2] | ||
end | |||
function p.each(frame) | |||
local par = frame:getParent() | |||
local tf = require('모듈:TemplateFunction') | |||
local txt = '' | |||
for depth = frame.args.depth or 1, depth, -1 do | |||
par = par:getParent() | |||
end | |||
for value in ipairs(par.args) do | |||
txt = txt .. tf.create(frame.args[1]):parse(value) | |||
end | |||
return txt | |||
end | |||
function p.join(frame) | |||
local par = frame:getParent() | |||
local txt = '' | |||
for depth = frame.args.depth or 1, depth, -1 do | |||
par = par:getParent() | |||
end | |||
for value in ipairs(par.args) do | |||
txt = txt .. value | |||
end | |||
return txt | |||
end | end | ||
16번째 줄: | 48번째 줄: | ||
local result = true | local result = true | ||
for | for depth = frame.args.depth or 1, depth, -1 do | ||
valt[ | par = par:getParent() | ||
end | |||
for index = 1, index <= #frame.args do | |||
if par.args[index] == nil then break end | |||
valt[par.args[index]] = true | |||
end | end | ||
28번째 줄: | 65번째 줄: | ||
else return frame.args[3] or "" | else return frame.args[3] or "" | ||
end | end | ||
end | |||
function p.keys(frame) | |||
local par = frame:getParent() | |||
local keys = {} | |||
for key, value in pairs(par.args) do | |||
table.insert(keys, key) | |||
end | |||
return table.concat(keys, ',') | |||
end | end | ||
return p | return p |
2024년 12월 12일 (목) 01:40 기준 최신판
이 모듈에 대한 설명문서는 모듈:Params/설명문서에서 만들 수 있습니다
local p = {}
function p.parent(frame)
local par = frame:getParent()
for depth = frame.args.depth or 1, depth, -1 do
par = par:getParent()
end
return par.args[frame.args[1]] or frame.args[2]
end
function p.each(frame)
local par = frame:getParent()
local tf = require('모듈:TemplateFunction')
local txt = ''
for depth = frame.args.depth or 1, depth, -1 do
par = par:getParent()
end
for value in ipairs(par.args) do
txt = txt .. tf.create(frame.args[1]):parse(value)
end
return txt
end
function p.join(frame)
local par = frame:getParent()
local txt = ''
for depth = frame.args.depth or 1, depth, -1 do
par = par:getParent()
end
for value in ipairs(par.args) do
txt = txt .. value
end
return txt
end
function p.has(frame)
local par = frame:getParent()
local valt = {}
local result = true
for depth = frame.args.depth or 1, depth, -1 do
par = par:getParent()
end
for index = 1, index <= #frame.args do
if par.args[index] == nil then break end
valt[par.args[index]] = true
end
if valt[frame.args[1]] ~= true then
result = false
end
if result
then return frame.args[2] or ""
else return frame.args[3] or ""
end
end
function p.keys(frame)
local par = frame:getParent()
local keys = {}
for key, value in pairs(par.args) do
table.insert(keys, key)
end
return table.concat(keys, ',')
end
return p