summaryrefslogtreecommitdiff
path: root/lua
diff options
context:
space:
mode:
authorJackson Moore <jacksonmoore@tuta.io>2026-09-04 11:07:12 +0200
committerJackson Moore <jacksonmoore@tuta.io>2026-09-04 11:07:12 +0200
commit8a86e09e8ff40cf45e948562324a47378751690f (patch)
treed69e06fc00912e84bbbf0c9bff2fcc0ef96e4534 /lua
parente36e69073e209c7e3db2f6754e1d04bdc3a3c5ca (diff)
Truncate elapsed milliseconds
Diffstat (limited to 'lua')
-rw-r--r--lua/clever_f/repeat_resolver.lua12
1 files changed, 11 insertions, 1 deletions
diff --git a/lua/clever_f/repeat_resolver.lua b/lua/clever_f/repeat_resolver.lua
index c62a86f..4155df9 100644
--- a/lua/clever_f/repeat_resolver.lua
+++ b/lua/clever_f/repeat_resolver.lua
@@ -50,6 +50,16 @@ local function finite_time(value)
and value < math.huge
end
+function M.truncate_elapsed_ms(elapsed_ms)
+ if not finite_time(elapsed_ms) then
+ fail("elapsed milliseconds must be finite", 2)
+ end
+ local integer_part = math.modf(elapsed_ms)
+ return integer_part
+end
+
+M.truncate_milliseconds = M.truncate_elapsed_ms
+
local resolver_metatable = {
__index = RepeatResolver,
__newindex = function()
@@ -141,7 +151,7 @@ function RepeatResolver:evaluate_timeout()
fail("repeat clock must return finite milliseconds", 2)
end
local elapsed_ms = current_time - resolver_records[self].state.repeat_timestamp_ms
- return nil, elapsed_ms
+ return nil, M.truncate_elapsed_ms(elapsed_ms)
end
RepeatResolver.check_timeout = RepeatResolver.evaluate_timeout