Модуль:Control
Перейти к навигации
Перейти к поиску
Для документации этого модуля может быть создана страница Модуль:Control/doc
local m
local function implement_loop (frame, template, const_params, cycle_param, cycle_params, separator)
local ret = {}
local template_params = {}
-- mw.clone (const_params) does not work.
for key, value in pairs (const_params) do
template_params [key] = value
end
for _, param in ipairs (cycle_params) do
template_params [cycle_param] = param
--template_params = {[cycle_param] = param}
ret [#ret + 1] = frame:expandTemplate {title = template, args = template_params}
end
return table.concat (ret, separator)
end
return {
loop = function (frame)
local const_params = mw.clone (frame.args)
const_params.template = nil
const_params.cycle = nil
const_params.separator = nil
return implement_loop (frame, frame.args.template, const_params, frame.args.cycle, frame:getParent ().args, frame.args.separator)
end
}