zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

commit 1aec406311c69b366ec1da01975e0a3704a161b8 (tree)
parent b6350a2b3f5c92ff4f0db152684f9c55bedb0bf6
Author: Vexu <git@vexu.eu>
Date:   Wed, 11 Nov 2020 14:05:43 +0200

std: fix HashMap.clearRetainingCapacity

Diffstat:
Mlib/std/hash_map.zig | 7++++++-
1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/lib/std/hash_map.zig b/lib/std/hash_map.zig @@ -428,7 +428,7 @@ pub fn HashMapUnmanaged( if (self.metadata) |_| { self.initMetadatas(); self.size = 0; - self.available = 0; + self.available = @truncate(u32, (self.capacity() * MaxLoadPercentage) / 100); } } @@ -864,6 +864,11 @@ test "std.hash_map clearRetainingCapacity" { expectEqual(map.get(1).?, 1); expectEqual(map.count(), 1); + map.clearRetainingCapacity(); + map.putAssumeCapacity(1, 1); + expectEqual(map.get(1).?, 1); + expectEqual(map.count(), 1); + const cap = map.capacity(); expect(cap > 0);