init commit
This commit is contained in:
41
plugins/log.lua
Normal file
41
plugins/log.lua
Normal file
@@ -0,0 +1,41 @@
|
||||
local _M = { }
|
||||
|
||||
local log_levels = {
|
||||
crit = "logCritical",
|
||||
error = "logErr",
|
||||
warn = "logWarn",
|
||||
notice = "logTrace",
|
||||
info = "logInfo",
|
||||
debug = "logDebug",
|
||||
}
|
||||
|
||||
local _tostring = tostring
|
||||
local tostring = function(...)
|
||||
local t = {}
|
||||
for i = 1, select('#', ...) do
|
||||
local x = select(i, ...)
|
||||
if type(x) == "number" then
|
||||
x = round(x, .01)
|
||||
end
|
||||
t[#t + 1] = _tostring(x)
|
||||
end
|
||||
return table.concat(t, " ")
|
||||
end
|
||||
|
||||
function _M.new(handle)
|
||||
local o = {}
|
||||
setmetatable(o, {__index = function(self, cmd)
|
||||
local t = getmetatable(handle)
|
||||
local method = rawget(t, log_levels[cmd])
|
||||
if not method then
|
||||
return do_nothing
|
||||
end
|
||||
|
||||
return function(...)
|
||||
method(handle, tostring(...))
|
||||
end
|
||||
end})
|
||||
return o
|
||||
end
|
||||
|
||||
return _M
|
||||
Reference in New Issue
Block a user