From 0f8ba47525595a9432b4060204d943cfb26bdc61 Mon Sep 17 00:00:00 2001 From: Matthew Wild Date: Sat, 4 Oct 2008 02:43:23 +0100 Subject: New "import" module to help tidy up all the local declarations at the top of modules --- core/sessionmanager.lua | 10 ++++------ main.lua | 2 ++ util/import.lua | 13 +++++++++++++ 3 files changed, 19 insertions(+), 6 deletions(-) create mode 100644 util/import.lua diff --git a/core/sessionmanager.lua b/core/sessionmanager.lua index f2542ed2..b257e532 100644 --- a/core/sessionmanager.lua +++ b/core/sessionmanager.lua @@ -1,11 +1,9 @@ local tonumber, tostring = tonumber, tostring; -local ipairs = ipairs; +local ipairs, print= ipairs, print; -local m_random = math.random; -local format = string.format; - -local print = print; +local m_random = import("math", "random"); +local format = import("string", "format"); local hosts = hosts; @@ -79,7 +77,7 @@ function streamopened(session, attr) end send(""); - log("info", "core", "Stream opened successfully"); + log("info", "Stream opened successfully"); session.notopen = nil; end diff --git a/main.lua b/main.lua index 6712694d..027a472c 100644 --- a/main.lua +++ b/main.lua @@ -13,6 +13,7 @@ dofile "lxmppd.cfg" sessions = {}; +require "util.import" require "core.stanza_dispatch" require "core.xmlhandlers" require "core.rostermanager" @@ -24,6 +25,7 @@ require "core.stanza_router" require "net.connhandlers" require "util.stanza" require "util.jid" + -- Locals for faster access -- local t_insert = table.insert; diff --git a/util/import.lua b/util/import.lua new file mode 100644 index 00000000..6aab0d45 --- /dev/null +++ b/util/import.lua @@ -0,0 +1,13 @@ + +local t_insert = table.insert; +function import(module, ...) + local m = package.loaded[module] or require(module); + if type(m) == "table" and ... then + local ret = {}; + for _, f in ipairs{...} do + t_insert(ret, m[f]); + end + return unpack(ret); + end + return m; +end -- cgit v1.2.3