aboutsummaryrefslogtreecommitdiffstats
path: root/util/array.lua
diff options
context:
space:
mode:
authorMatthew Wild <mwild1@gmail.com>2009-04-22 20:14:11 +0100
committerMatthew Wild <mwild1@gmail.com>2009-04-22 20:14:11 +0100
commit77195f9fb9f2092fc2ac3fc379185a9210de2a57 (patch)
treee57cf40c3f3d1cac021d60e36ddcf5d1a95f8133 /util/array.lua
parent84bdf9494c891172c03f81186e0e8ff1a39364d7 (diff)
parentfc2a4159849cf5fcb2c53d4fb0c0f1a7b101d69a (diff)
downloadprosody-77195f9fb9f2092fc2ac3fc379185a9210de2a57.tar.gz
prosody-77195f9fb9f2092fc2ac3fc379185a9210de2a57.zip
Merge with 0.4.1
Diffstat (limited to 'util/array.lua')
-rw-r--r--util/array.lua15
1 files changed, 14 insertions, 1 deletions
diff --git a/util/array.lua b/util/array.lua
index 9e99a3ec..072b24a7 100644
--- a/util/array.lua
+++ b/util/array.lua
@@ -52,4 +52,17 @@ function array:reverse()
end
end
-_G.array = array
+function array.collect(f, s, var)
+ local t, var = {};
+ while true do
+ var = f(s, var);
+ if var == nil then break; end
+ table.insert(t, var);
+ end
+ return setmetatable(t, array_mt);
+end
+
+_G.array = array;
+module("array");
+
+return array;