1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
#[derive(Debug, Default)]
pub struct Mut<T>(pub T);
impl<T> Unpin for Mut<T> {}
crate::utils::impl_hook! {
impl[T] for Mut<T> {
#[inline]
poll_next_update(self) {
false.into()
}
#[inline]
use_hook(self) -> &'hook mut T {
&mut self.get_mut().0
}
}
}
#[inline]
pub fn use_mut_default<T: Default>() -> Mut<T> {
Default::default()
}