38 lines
828 B
Lua
38 lines
828 B
Lua
local timing = {}
|
|
|
|
timing.display = function(n)
|
|
local function _display(n)
|
|
local time = timing[n]
|
|
local previous = timing[n - 1]
|
|
|
|
local delta = time.time - previous.time
|
|
if delta >= 2*60*60 then -- if more than 2 hours
|
|
delta = tostring(math.floor(delta/(60*60/10))/10) .. " hours"
|
|
elseif delta >= 120 then -- if more then 2 minutes
|
|
delta = tostring(math.floor(delta/(60/10))/10) .. " minutes"
|
|
else
|
|
delta = tostring(delta) .. " seconds"
|
|
end
|
|
|
|
print(delta, previous.label)
|
|
end
|
|
|
|
if n then
|
|
_display(n)
|
|
else
|
|
print("All measured timings:")
|
|
for i = 2, #timing do
|
|
_display(i)
|
|
end
|
|
end
|
|
end
|
|
|
|
timing.mark = function(label)
|
|
timing[#timing + 1] = { label = label, time = os.time(), }
|
|
if #timing > 1 then
|
|
timing.display(#timing)
|
|
end
|
|
end
|
|
|
|
return timing
|