rallo 0.5.2

Rust allocator for tracking memory usage
Documentation
use std::{
    cell::UnsafeCell,
    ops::{Deref, DerefMut},
};

pub struct RalloUnsafeCell<T: ?Sized> {
    inner: UnsafeCell<T>,
}
unsafe impl<T: ?Sized> Send for RalloUnsafeCell<T> {}
unsafe impl<T: ?Sized> Sync for RalloUnsafeCell<T> {}
impl<T> RalloUnsafeCell<T> {
    pub const fn new(value: T) -> Self {
        RalloUnsafeCell {
            inner: UnsafeCell::new(value),
        }
    }
    pub fn get(&self) -> *mut T {
        self.inner.get()
    }
}
impl<T: ?Sized> Deref for RalloUnsafeCell<T> {
    type Target = T;
    fn deref(&self) -> &Self::Target {
        unsafe { &*self.inner.get() }
    }
}
impl<T: ?Sized> DerefMut for RalloUnsafeCell<T> {
    fn deref_mut(&mut self) -> &mut Self::Target {
        unsafe { &mut *self.inner.get() }
    }
}