commit aded86e6909e01dfb45b35204e9dedf6aabb3d58 (tree)
parent 21b407b17f25001b70bbd847f9b2d2782866597c
Author: Andrew Kelley <andrew@ziglang.org>
Date: Fri, 25 Sep 2020 20:50:40 -0700
std.ArrayHashMap: count and iterator are not deprecated
These APIs allow one to write code that is agnostic of whether it is
using an ArrayHashMap or a HashMap, which can be valuable. Specify
intent precisely: if you only need the count of the items, it makes
sense to have a function for that.
Diffstat:
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/lib/std/array_hash_map.zig b/lib/std/array_hash_map.zig
@@ -112,12 +112,10 @@ pub fn ArrayHashMap(
return self.unmanaged.clearAndFree(self.allocator);
}
- /// Deprecated. Use `items().len`.
pub fn count(self: Self) usize {
- return self.items().len;
+ return self.unmanaged.count();
}
- /// Deprecated. Iterate using `items`.
pub fn iterator(self: *const Self) Iterator {
return Iterator{
.hm = self,
@@ -332,6 +330,10 @@ pub fn ArrayHashMapUnmanaged(
}
}
+ pub fn count(self: Self) usize {
+ return self.entries.items.len;
+ }
+
/// If key exists this function cannot fail.
/// If there is an existing item with `key`, then the result
/// `Entry` pointer points to it, and found_existing is true.