#[non_exhaustive]#[repr(C)]pub struct SmartPointerDef {
pub vtable: &'static SmartPointerVTable,
pub t: &'static Shape,
pub flags: SmartPointerFlags,
pub known: Option<KnownSmartPointer>,
}Expand description
Describes a smart pointer — including a vtable to query and alter its state,
and the inner shape (the T in Option<T>).
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.vtable: &'static SmartPointerVTablevtable for interacting with the smart pointer
t: &'static Shapeshape of the inner type of the smart pointer
flags: SmartPointerFlagsFlags representing various characteristics of the smart pointer
known: Option<KnownSmartPointer>An optional field to identify the kind of smart pointer
Implementations§
Source§impl SmartPointerDef
impl SmartPointerDef
Sourcepub const fn builder() -> SmartPointerDefBuilder
pub const fn builder() -> SmartPointerDefBuilder
Creates a new SmartPointerDefBuilder with all fields set to None.
Trait Implementations§
Source§impl Clone for SmartPointerDef
impl Clone for SmartPointerDef
Source§fn clone(&self) -> SmartPointerDef
fn clone(&self) -> SmartPointerDef
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 Debug for SmartPointerDef
impl Debug for SmartPointerDef
Source§impl Hash for SmartPointerDef
impl Hash for SmartPointerDef
Source§impl PartialEq for SmartPointerDef
impl PartialEq for SmartPointerDef
impl Copy for SmartPointerDef
impl Eq for SmartPointerDef
impl StructuralPartialEq for SmartPointerDef
Auto Trait Implementations§
impl Freeze for SmartPointerDef
impl RefUnwindSafe for SmartPointerDef
impl Send for SmartPointerDef
impl Sync for SmartPointerDef
impl Unpin for SmartPointerDef
impl UnwindSafe for SmartPointerDef
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