heap.odin 570 B

123456789101112131415161718192021
  1. package os2
  2. import "core:runtime"
  3. heap_allocator :: proc() -> runtime.Allocator {
  4. return runtime.Allocator{
  5. procedure = heap_allocator_proc,
  6. data = nil,
  7. }
  8. }
  9. heap_allocator_proc :: proc(allocator_data: rawptr, mode: runtime.Allocator_Mode,
  10. size, alignment: int,
  11. old_memory: rawptr, old_size: int, loc := #caller_location) -> ([]byte, runtime.Allocator_Error) {
  12. return _heap_allocator_proc(allocator_data, mode, size, alignment, old_memory, old_size, loc)
  13. }
  14. @(private)
  15. error_allocator := heap_allocator