Template repo for tiny cross-platform apps that can be modified on phone, tablet or computer.
at main 24 lines 609 B view raw
1local utils = {} 2 3-- https://stackoverflow.com/questions/640642/how-do-you-copy-a-lua-table-by-value/26367080#26367080 4function utils.deepcopy(obj, seen) 5 if type(obj) ~= 'table' then return obj end 6 seen = seen or {} 7 if seen[obj] then return seen[obj] end 8 local result = setmetatable({}, getmetatable(obj)) 9 seen[obj] = result 10 for k,v in pairs(obj) do 11 result[utils.deepcopy(k, seen)] = utils.deepcopy(v, seen) 12 end 13 return result 14end 15 16function utils.minmax(a, b) 17 return math.min(a,b), math.max(a,b) 18end 19 20function utils.width(s) 21 return love.graphics.getFont():getWidth(s) 22end 23 24return utils