From 8a86e09e8ff40cf45e948562324a47378751690f Mon Sep 17 00:00:00 2001 From: Jackson Moore Date: Fri, 4 Sep 2026 11:07:12 +0200 Subject: Truncate elapsed milliseconds --- lua/clever_f/repeat_resolver.lua | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'lua') 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 -- cgit v1.2.3