From: Steven Barth Date: Thu, 30 Oct 2008 19:13:15 +0000 (+0000) Subject: Add luci.util.append X-Git-Tag: 0.8.2~59 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=023880275feea24dd6ebfd84d0e16c6e0e54fde1;p=oweals%2Fluci.git Add luci.util.append --- diff --git a/libs/core/luasrc/util.lua b/libs/core/luasrc/util.lua index 6498a4976..109ccab28 100644 --- a/libs/core/luasrc/util.lua +++ b/libs/core/luasrc/util.lua @@ -320,23 +320,30 @@ function parse_units(ustr) return val end ---- Combines two or more numerically indexed tables and single objects into one table. --- @param tbl1 Table value to combine --- @param tbl2 Table value to combine --- @param ... More tables to combine --- @return Table value containing all values of given tables -function combine(...) - local result = {} +--- Appends numerically indexed tables or single objects to a given table. +-- @param src Target table +-- @param ... Objects to insert +-- @return Target table +function append(src, ...) for i, a in ipairs({...}) do if type(a) == "table" then for j, v in ipairs(a) do - result[#result+1] = v + src[#src+1] = v end else - result[#result+1] = a + src[#src+1] = a end end - return result + return src +end + +--- Combines two or more numerically indexed tables and single objects into one table. +-- @param tbl1 Table value to combine +-- @param tbl2 Table value to combine +-- @param ... More tables to combine +-- @return Table value containing all values of given tables +function combine(...) + return append({}, ...) end --- Checks whether the given table contains the given value.