From: patrick-scho Date: Sun, 16 Mar 2025 16:18:46 +0000 (+0100) Subject: add clear method X-Git-Url: https://gitweb.ps.run/ziglmdb/commitdiff_plain/1782c4965bb998ce4dcab06e912b1620b056b58d add clear method --- diff --git a/src/db.zig b/src/db.zig index 5d7a824..6279a1b 100644 --- a/src/db.zig +++ b/src/db.zig @@ -183,6 +183,12 @@ pub fn SetView(comptime K: type) type { try self.dbi.del(self.item_idx(k)); } + pub fn clear(self: *Self) !void { + var it = self.iterator(); + while (it.next()) |i| { + try self.del(i); + } + } pub fn has(self: Self, k: K) !bool { return self.dbi.has(self.item_idx(k)); } @@ -357,6 +363,12 @@ pub fn ListView(comptime V: type) type { try self.dbi.del(self.item_idx(k)); } + pub fn clear(self: *Self) !void { + var it = self.iterator(); + while (it.next()) |kv| { + try self.del(kv.key); + } + } pub fn len(self: Self) usize { return self.head.len; } @@ -513,6 +525,12 @@ pub fn SetListView(comptime K: type, comptime V: type) type { try self.dbi.del(self.item_idx(k)); } + pub fn clear(self: *Self) !void { + var it = self.iterator(); + while (it.next()) |kv| { + try self.del(kv.key); + } + } pub fn has(self: Self, k: K) !bool { return self.dbi.has(self.item_idx(k)); }