pub struct Optional<T: AnyCompatible> { /* private fields */ }Expand description
In-place mirror of C++ ffi::Optional<T>: a single 16-byte TVMFFIAny cell
(wrapped as Any) whose type_index == kTVMFFINone encodes nullopt.
Layout-compatible with the C++ type (size_of == 16); see the module
docs. Reuses Any’s reference-counting Clone/Drop, which are a
no-op on the nullopt cell (type_index below kTVMFFIStaticObjectBegin).
Implementations§
Source§impl<T: AnyCompatible> Optional<T>
impl<T: AnyCompatible> Optional<T>
Trait Implementations§
Source§impl<T: AnyCompatible> Clone for Optional<T>
impl<T: AnyCompatible> Clone for Optional<T>
Source§impl<T: AnyCompatible> Default for Optional<T>
impl<T: AnyCompatible> Default for Optional<T>
impl<T: AnyCompatible + Eq> Eq for Optional<T>
Auto Trait Implementations§
impl<T> Freeze for Optional<T>
impl<T> RefUnwindSafe for Optional<T>where
T: RefUnwindSafe,
impl<T> !Send for Optional<T>
impl<T> !Sync for Optional<T>
impl<T> Unpin for Optional<T>where
T: Unpin,
impl<T> UnsafeUnpin for Optional<T>
impl<T> UnwindSafe for Optional<T>where
T: 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