util/array.lua
changeset 1373 120275376bbb
parent 1372 3b13bb57002e
child 1522 569d58d21612
equal deleted inserted replaced
1372:3b13bb57002e 1373:120275376bbb
     1 local array = {};
     1 local array = {};
     2 
     2 
     3 local array_mt = { __index = array, __tostring = function (array) return array:concat(", "); end };
     3 local array_mt = { __index = array, __tostring = function (array) return array:concat(", "); end };
     4 local function new_array(_, t)
     4 local function new_array(_, t)
     5 	return setmetatable(t or {}, array_mt);
     5 	return setmetatable(t or {}, array_mt);
       
     6 end
       
     7 
       
     8 function array_mt.__add(a1, a2)
       
     9 	local res = new_array();
       
    10 	return res:append(a1):append(a2);
     6 end
    11 end
     7 
    12 
     8 setmetatable(array, { __call = new_array });
    13 setmetatable(array, { __call = new_array });
     9 
    14 
    10 function array:map(func, t2)
    15 function array:map(func, t2)