-- like table.pack from Lua 5.2 -- https://stackoverflow.com/questions/7183998/in-lua-what-is-the-right-way-to-handle-varargs-which-contains-nil/7186820#7186820 pack = function(...) local result = {...} result.n = select('#', ...) return result end