Software /
code /
verse
File
libs/logger.lua @ 219:ce8ed17710cb
plugins.jingle_ibb: In-Band Bytestreams, initial commit.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Fri, 30 Sep 2011 05:17:06 +0200 |
parent | 127:8f831f259cea |
line wrap: on
line source
local select, tostring = select, tostring; local io_write = io.write; module "logger" local function format(format, ...) local n, maxn = 0, #arg; return (format:gsub("%%(.)", function (c) if c ~= "%" and n <= maxn then n = n + 1; return tostring(arg[n]); end end)); end local function format(format, ...) local n, maxn = 0, select('#', ...); local arg = { ... }; return (format:gsub("%%(.)", function (c) if n <= maxn then n = n + 1; return tostring(arg[n]); end end)); end function init(name) return function (level, message, ...) io_write(level, "\t", format(message, ...), "\n"); end end return _M;