Struct zerovec::ule::NichedOption
source · #[repr(transparent)]pub struct NichedOption<U, const N: usize>(pub Option<U>);
Expand description
Optional type which uses NichedOptionULE<U,N>
as ULE type.
The implementors guarantee that N == core::mem::size_of::<Self>()
[repr(transparent)
] guarantees that the layout is same as Option<U>
Tuple Fields§
§0: Option<U>
Trait Implementations§
source§impl<U: AsULE, const N: usize> AsULE for NichedOption<U, N>where
U::ULE: NicheBytes<N>,
impl<U: AsULE, const N: usize> AsULE for NichedOption<U, N>where
U::ULE: NicheBytes<N>,
source§impl<U: Clone, const N: usize> Clone for NichedOption<U, N>
impl<U: Clone, const N: usize> Clone for NichedOption<U, N>
source§fn clone(&self) -> NichedOption<U, N>
fn clone(&self) -> NichedOption<U, N>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl<U, const N: usize> Default for NichedOption<U, N>
impl<U, const N: usize> Default for NichedOption<U, N>
source§impl<'de, U, const N: usize> Deserialize<'de> for NichedOption<U, N>where
U: Deserialize<'de>,
impl<'de, U, const N: usize> Deserialize<'de> for NichedOption<U, N>where
U: Deserialize<'de>,
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl<U: Copy, const N: usize> Copy for NichedOption<U, N>
impl<U: Eq, const N: usize> Eq for NichedOption<U, N>
impl<U, const N: usize> StructuralPartialEq for NichedOption<U, N>
Auto Trait Implementations§
impl<U, const N: usize> Freeze for NichedOption<U, N>where
U: Freeze,
impl<U, const N: usize> RefUnwindSafe for NichedOption<U, N>where
U: RefUnwindSafe,
impl<U, const N: usize> Send for NichedOption<U, N>where
U: Send,
impl<U, const N: usize> Sync for NichedOption<U, N>where
U: Sync,
impl<U, const N: usize> Unpin for NichedOption<U, N>where
U: Unpin,
impl<U, const N: usize> UnwindSafe for NichedOption<U, N>where
U: UnwindSafe,
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)