╭ changed ─────────╮ │src/event/Repo.zig│ ╰──────────────────╯ ╭───────────╮ │← all files│ ╰───────────╯ ╭──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │177 return .{ .repo = try evt.read(Record, DB, hash_kind, arena, repo_map), .event_id = repo_id }; │ │178 } │ │179 │ │180 +pub fn readById( │ │181 + comptime DB: type, │ │182 + comptime hash_kind: hash.HashKind, │ │183 + haxy_moment: DB.HashMap(.read_only), │ │184 + arena: *std.heap.ArenaAllocator, │ │185 + id: []const u8, │ │186 +) !?Record { │ │187 + const records_cursor = try haxy_moment.getCursor(hash.hashInt(hash_kind, record_map_key)) orelse return null;│ │188 + const records = try DB.HashMap(.read_only).init(records_cursor); │ │189 + const record_cursor = try records.getCursor(hash.hashInt(hash_kind, id)) orelse return null; │ │190 + return try evt.read(Record, DB, hash_kind, arena, try DB.HashMap(.read_only).init(record_cursor)); │ │191 +} │ │192 + │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯