remap
Function parameters
Parameters
- ctx:*anyopaque
- memory:[]u8
- alignment:mem.Alignment
- new_len:usize
- ra:usize
Type definitions in this namespace
Types
Functions in this namespace
Functions
- getStackTrace
- Only valid once `has_induced_failure == true`
Source
Implementation
fn remap(
ctx: *anyopaque,
memory: []u8,
alignment: mem.Alignment,
new_len: usize,
ra: usize,
) ?[*]u8 {
const self: *FailingAllocator = @ptrCast(@alignCast(ctx));
if (self.resize_index == self.resize_fail_index) return null;
const new_ptr = self.internal_allocator.rawRemap(memory, alignment, new_len, ra) orelse return null;
if (new_len < memory.len) {
self.freed_bytes += memory.len - new_len;
} else {
self.allocated_bytes += new_len - memory.len;
}
self.resize_index += 1;
return new_ptr;
}