From b47e61c4f05e895fec868252b3a23c5111b0cd10 Mon Sep 17 00:00:00 2001 From: Meghan Denny Date: Sun, 2 Apr 2023 21:46:34 -0700 Subject: [PATCH] add readBytesAlloc --- src/lib.zig | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/lib.zig b/src/lib.zig index 5fb316836b7cc5dbb9f2f4c8dc7770b152890610..f3d2515d06bd573fd5f8fada3134111a9359719b 100644 --- a/src/lib.zig +++ b/src/lib.zig @@ -439,3 +439,12 @@ pub fn safeAdd(a: anytype, b: anytype) @TypeOf(a) { } return a - @intCast(@TypeOf(a), -b); } + +pub fn readBytesAlloc(reader: anytype, alloc: std.mem.Allocator, len: usize) ![]u8 { + var list = std.ArrayListUnmanaged(u8){}; + try list.ensureTotalCapacityPrecise(alloc, len); + errdefer list.deinit(alloc); + list.appendNTimesAssumeCapacity(0, len); + try reader.readNoEof(list.items[0..len]); + return list.items; +} -- 2.54.0