ps_buffer/methods/leak.rs
1use std::slice::from_raw_parts_mut;
2
3use crate::Buffer;
4
5impl Buffer {
6 /// Leaks this Buffer's memory. Caller shall ensure the leaked memory is later freed with [`ps_alloc::free`].
7 #[must_use]
8 pub fn leak(self) -> &'static mut [u8] {
9 let len = self.len();
10 let ptr = self.ptr;
11
12 std::mem::forget(self);
13
14 unsafe { from_raw_parts_mut(ptr, len) }
15 }
16}