New "import" module to help tidy up all the local declarations at the top of modules
[prosody.git] / util / import.lua
1
2 local t_insert = table.insert;
3 function import(module, ...)
4         local m = package.loaded[module] or require(module);
5         if type(m) == "table" and ... then
6                 local ret = {};
7                 for _, f in ipairs{...} do
8                         t_insert(ret, m[f]);
9                 end
10                 return unpack(ret);
11         end
12         return m;
13 end