| ... | ... | @@ -439,3 +439,12 @@ pub fn safeAdd(a: anytype, b: anytype) @TypeOf(a) { |
| 439 | 439 | } |
| 440 | 440 | return a - @intCast(@TypeOf(a), -b); |
| 441 | 441 | } |
| 442 | |
| 443 | pub fn readBytesAlloc(reader: anytype, alloc: std.mem.Allocator, len: usize) ![]u8 { |
| 444 | var list = std.ArrayListUnmanaged(u8){}; |
| 445 | try list.ensureTotalCapacityPrecise(alloc, len); |
| 446 | errdefer list.deinit(alloc); |
| 447 | list.appendNTimesAssumeCapacity(0, len); |
| 448 | try reader.readNoEof(list.items[0..len]); |
| 449 | return list.items; |
| 450 | } |