Comparison

util/array.lua @ 1027:fe2e3d3dba6a

util.array: Add array.collect() to collect results from iterators into an array, and use module() to correctly set the module name
author Matthew Wild <mwild1@gmail.com>
date Wed, 22 Apr 2009 17:46:17 +0100
parent 922:0e45234360cd
child 1371:9e45bdf55353
comparison
equal deleted inserted replaced
1026:e640df2e4e9b 1027:fe2e3d3dba6a
50 self:push(self[i]); 50 self:push(self[i]);
51 self:pop(i); 51 self:pop(i);
52 end 52 end
53 end 53 end
54 54
55 _G.array = array 55 function array.collect(f, s, var)
56 local t, var = {};
57 while true do
58 var = f(s, var);
59 if var == nil then break; end
60 table.insert(t, var);
61 end
62 return setmetatable(t, array_mt);
63 end
64
65 _G.array = array;
66 module("array");
67
68 return array;