Обсуждение модуля:TableTools

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

Функция p.merge()[править код]

Здравствуйте, немного не хватает функции для "слияния" нескольких таблиц в одну. Будет приятно если её добавят:

function p.merge(...)
	local tables = { ... }
	local result = {}
	for i, t in ipairs(tables) do
		checkType('merge', i, t, 'table')
		
		for k, v in pairs(t) do
			if not result[k] then
				result[k] = v
			end
		end
	end
	
	return result
end

Пример работы: p.merge({1, 2, ["a"] = "b"}, {10, [3] = 3, ["a"] = "a"}, {["b"] = "test"})

Вывод: {1, 2, 3, ["a"] = "b", ["b"] = "test"}🎭 Антарктидов (обсуждение | вклад) 03:02, 13 декабря 2023 (UTC)[ответить]