HeapRegion
struct HeapRegionAn ordinary allocation: what an in-process export has always used.
Implements Movable, Region
__init__
def __init__(out self, size: Int) __deinit__
def __deinit__(deinit self) Freed when it goes out of scope, unless into_raw took it.
base
def base(self) -> Int size
def size(self) -> Int close
def close(deinit self) Hand the allocation back, now rather than at the end of scope.
into_raw
def into_raw(deinit self) -> Int Give up ownership; returns the base address.
For a consumer that will free the bytes itself — the Arrow C Data Interface being the case this exists for, where the release callback on the exported array is what eventually frees the block.