pub trait ZeroableExt<T: Sized>where
Self: Sized,{
// Required methods
fn as_optional_nonzero_ref(&self) -> Option<&T>;
fn as_optional_nonzero_mut(&mut self) -> Option<&mut T>;
fn into_optional_nonzero(self) -> Option<T>;
fn as_zeroable(&self) -> T;
fn into_zeroable(self) -> T;
fn as_nonzero_unchecked_ref(&self) -> &T;
fn as_nonzero_unchecked_mut(&mut self) -> &mut T;
fn into_nonzero_unchecked(self) -> T;
// Provided methods
fn as_nonzero_unchecked_release(&self) -> &T { ... }
fn as_nonzero_unchecked_release_mut(&mut self) -> &mut T { ... }
fn into_nonzero_unchecked_release(self) -> T { ... }
}Required Methods§
fn as_optional_nonzero_ref(&self) -> Option<&T>
fn as_optional_nonzero_mut(&mut self) -> Option<&mut T>
fn into_optional_nonzero(self) -> Option<T>
fn as_zeroable(&self) -> T
fn into_zeroable(self) -> T
fn as_nonzero_unchecked_ref(&self) -> &T
fn as_nonzero_unchecked_mut(&mut self) -> &mut T
fn into_nonzero_unchecked(self) -> T
Provided Methods§
fn as_nonzero_unchecked_release(&self) -> &T
fn as_nonzero_unchecked_release_mut(&mut self) -> &mut T
fn into_nonzero_unchecked_release(self) -> T
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".