From 33d594be4304eb15ee477a0238466a2b5c0decf0 Mon Sep 17 00:00:00 2001 From: Halil Durak Date: Sat, 16 May 2026 10:19:33 +0300 Subject: [PATCH] `Timers`: prefer integer-optimized hashing --- src/browser/webapi/Timers.zig | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/src/browser/webapi/Timers.zig b/src/browser/webapi/Timers.zig index bbfca664..1793b2a6 100644 --- a/src/browser/webapi/Timers.zig +++ b/src/browser/webapi/Timers.zig @@ -32,7 +32,23 @@ const Allocator = std.mem.Allocator; const Timers = @This(); _timer_id: u30 = 0, -_callbacks: std.AutoHashMapUnmanaged(u32, *ScheduleCallback) = .{}, +_callbacks: CallbackHashMap = .{}, + +const Key = u32; +const CallbackHashMap = std.HashMapUnmanaged( + Key, + *ScheduleCallback, + struct { + pub fn hash(_: @This(), key: Key) Key { + return std.hash.int(key); + } + + pub fn eql(_: @This(), a: Key, b: Key) bool { + return std.meta.eql(a, b); + } + }, + std.hash_map.default_max_load_percentage, +); pub const Mode = enum { idle,