Jump to content

Module:TableTools: Difference between revisions

better error message for the set functions
m>Mr. Stradivarius
(only allow two or more arguments for the set functions)
m>Mr. Stradivarius
(better error message for the set functions)
Line 93: Line 93:
local lim = select('#', ...)  
local lim = select('#', ...)  
if lim < 2 then
if lim < 2 then
error(lim .. ' argument' .. (lim == 1 and '' or 's') .. " passed to 'union' (minimum is 2)", 2)
error("too few arguments to 'union' (minimum is 2, received " .. lim .. ')', 2)
end
end
local ret, trackArrays = {}, {}
local ret, trackArrays = {}, {}
Line 139: Line 139:
local lim = select('#', ...)  
local lim = select('#', ...)  
if lim < 2 then
if lim < 2 then
error(lim .. ' argument' .. (lim == 1 and '' or 's') .. " passed to 'valueUnion' (minimum is 2)", 2)
error("too few arguments to 'valueUnion' (minimum is 2, received " .. lim .. ')', 2)
end
end
local isNan = p.isNan
local isNan = p.isNan
Line 169: Line 169:
local lim = select('#', ...)  
local lim = select('#', ...)  
if lim < 2 then
if lim < 2 then
error(lim .. ' argument' .. (lim == 1 and '' or 's') .. " passed to 'intersection' (minimum is 2)", 2)
error("too few arguments to 'intersection' (minimum is 2, received " .. lim .. ')', 2)
end
end
local ret, track, pairCounts = {}, {}, {}
local ret, track, pairCounts = {}, {}, {}
Line 205: Line 205:
local lim = select('#', ...)  
local lim = select('#', ...)  
if lim < 2 then
if lim < 2 then
error(lim .. ' argument' .. (lim == 1 and '' or 's') .. " passed to 'valueIntersection' (minimum is 2)", 2)
error("too few arguments to 'valueIntersection' (minimum is 2, received " .. lim .. ')', 2)
end
end
local isNan = p.isNan
local isNan = p.isNan
Line 255: Line 255:
local lim = select('#', ...)  
local lim = select('#', ...)  
if lim < 2 then
if lim < 2 then
error(lim .. ' argument' .. (lim == 1 and '' or 's') .. " passed to 'complement' (minimum is 2)", 2)
error("too few arguments to 'complement' (minimum is 2, received " .. lim .. ')', 2)
end
end
--[[
--[[
Anonymous user
Cookies help us deliver our services. By using our services, you agree to our use of cookies.