zig

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

commit e5d76176b9b18eefd8136f51c0188e5c57631e62 (tree)
parent 76c729c96745bd13f83ad171f1cbd50d36893e70
Author: notcancername <119271574+notcancername@users.noreply.github.com>
Date:   Mon, 28 Nov 2022 03:52:18 +0100

document std.heap.StackFallbackAllocator

Diffstat:
Mlib/std/heap.zig | 7+++++++
1 file changed, 7 insertions(+), 0 deletions(-)

diff --git a/lib/std/heap.zig b/lib/std/heap.zig @@ -855,6 +855,9 @@ pub const FixedBufferAllocator = struct { pub const ThreadSafeFixedBufferAllocator = @compileError("ThreadSafeFixedBufferAllocator has been replaced with `threadSafeAllocator` on FixedBufferAllocator"); +/// Returns a `StackFallbackAllocator` allocating using either a +/// `FixedBufferAllocator` on an array of size `size` and falling back to +/// `fallback_allocator` if that fails. pub fn stackFallback(comptime size: usize, fallback_allocator: Allocator) StackFallbackAllocator(size) { return StackFallbackAllocator(size){ .buffer = undefined, @@ -863,6 +866,10 @@ pub fn stackFallback(comptime size: usize, fallback_allocator: Allocator) StackF }; } +/// An allocator that attempts to allocate using a +/// `FixedBufferAllocator` using an array of size `size`. If the +/// allocation fails, it will fall back to using +/// `fallback_allocator`. Easily created with `stackFallback`. pub fn StackFallbackAllocator(comptime size: usize) type { return struct { const Self = @This();