From 3c9e30ffcd47db408194c5e3b50bc890366f3ec0 Mon Sep 17 00:00:00 2001 From: Jarred Sumner Date: Thu, 3 Feb 2022 21:03:08 -0800 Subject: Update mimalloc_arena.zig --- src/mimalloc_arena.zig | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/mimalloc_arena.zig b/src/mimalloc_arena.zig index db7a6c368..e2df152fb 100644 --- a/src/mimalloc_arena.zig +++ b/src/mimalloc_arena.zig @@ -23,10 +23,19 @@ pub const Arena = struct { mimalloc.mi_heap_destroy(this.heap); } + pub fn reset(this: *Arena) void { + this.deinit(); + this.* = initAssumeCapacity(); + } + pub fn init() !Arena { return Arena{ .heap = mimalloc.mi_heap_new() orelse return error.OutOfMemory }; } + pub fn initAssumeCapacity() Arena { + return Arena{ .heap = mimalloc.mi_heap_new().? }; + } + pub fn gc(this: Arena, force: bool) void { mimalloc.mi_heap_collect(this.heap, force); } -- cgit v1.2.3