Модуль:ProcessArgs

Материал из Structorica Wiki
Версия от 05:34, 16 января 2026; Ivan (обсуждение | вклад) (Новая страница: «local p = {} -- 1. Function norm() --- function p.norm( origArgs ) if type( origArgs ) ~= 'table' then origArgs = mw.getCurrentFrame():getParent().args end local args = {} for k, v in pairs( origArgs ) do v = mw.text.trim( tostring( v ) ) if v ~= '' then args[k] = v end end return args end -- 2. Function merge() --- function p.merge( origArgs, parentArgs, norm ) if type( origArgs ) ~= 'table' then norm = origArgs local f = mw.ge...»)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)
Перейти к навигации Перейти к поиску

Документация

Этот модуль предоставляет утилиты для обработки аргументов шаблонов.

1. Функция norm():

Очищает аргументы шаблона, удаляя пустые значения и обрезая пробелы.

2. Функция merge():

Объединяет параметры текущего шаблона с параметрами родительского шаблона.

Исходный код

https://minecraft.wiki/w/Module:ProcessArgs


local p = {}


-- 1. Function norm() ---
function p.norm( origArgs )
	if type( origArgs ) ~= 'table' then
		origArgs = mw.getCurrentFrame():getParent().args
	end
	local args = {}
	
	for k, v in pairs( origArgs ) do
		v = mw.text.trim( tostring( v ) )
		if v ~= '' then
			args[k] = v
		end
	end
	
	return args
end


-- 2. Function merge() ---
function p.merge( origArgs, parentArgs, norm )
	if type( origArgs ) ~= 'table' then
		norm = origArgs
		local f = mw.getCurrentFrame()
		origArgs = f.args
		parentArgs = f:getParent().args
	end
	local args = {}
	
	for k, v in pairs( origArgs ) do
		v = mw.text.trim( tostring( v ) )
		if not norm or v ~= '' then
			args[k] = v
		end
	end
	
	for k, v in pairs( parentArgs ) do
		v = mw.text.trim( v )
		if not norm or v ~= '' then
			args[k] = v
		end
	end
	
	return args
end


return p