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}