diff options
| author | Jackson Moore <jacksonmoore@tuta.io> | 2026-09-04 11:07:12 +0200 |
|---|---|---|
| committer | Jackson Moore <jacksonmoore@tuta.io> | 2026-09-04 11:07:12 +0200 |
| commit | 8a86e09e8ff40cf45e948562324a47378751690f (patch) | |
| tree | d69e06fc00912e84bbbf0c9bff2fcc0ef96e4534 /lua/clever_f/repeat_resolver.lua | |
| parent | e36e69073e209c7e3db2f6754e1d04bdc3a3c5ca (diff) | |
Truncate elapsed milliseconds
Diffstat (limited to 'lua/clever_f/repeat_resolver.lua')
| -rw-r--r-- | lua/clever_f/repeat_resolver.lua | 12 |
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 |
