#[non_exhaustive]pub struct ValueVTable {Show 13 fields
pub type_name: fn(&mut Formatter<'_>, TypeNameOpts) -> Result<(), Error>,
pub display: Option<for<'mem> unsafe fn(OpaqueConst<'mem>, &mut Formatter<'_>) -> Result<(), Error>>,
pub debug: Option<for<'mem> unsafe fn(OpaqueConst<'mem>, &mut Formatter<'_>) -> Result<(), Error>>,
pub default_in_place: Option<for<'mem> unsafe fn(OpaqueUninit<'mem>) -> Opaque<'mem>>,
pub clone_into: Option<for<'src, 'dst> unsafe fn(OpaqueConst<'src>, OpaqueUninit<'dst>) -> Opaque<'dst>>,
pub marker_traits: MarkerTraits,
pub eq: Option<for<'l, 'r> unsafe fn(OpaqueConst<'l>, OpaqueConst<'r>) -> bool>,
pub partial_ord: Option<for<'l, 'r> unsafe fn(OpaqueConst<'l>, OpaqueConst<'r>) -> Option<Ordering>>,
pub ord: Option<for<'l, 'r> unsafe fn(OpaqueConst<'l>, OpaqueConst<'r>) -> Ordering>,
pub hash: Option<for<'mem> unsafe fn(OpaqueConst<'mem>, Opaque<'mem>, for<'mem> unsafe fn(Opaque<'mem>, &[u8]))>,
pub drop_in_place: Option<for<'mem> unsafe fn(Opaque<'mem>)>,
pub parse: Option<for<'mem> unsafe fn(&str, OpaqueUninit<'mem>) -> Result<Opaque<'mem>, ParseError>>,
pub try_from: Option<for<'src, 'mem> unsafe fn(OpaqueConst<'src>, OpaqueUninit<'mem>) -> Result<Opaque<'mem>, TryFromError>>,
}Expand description
VTable for common operations that can be performed on any shape
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.type_name: fn(&mut Formatter<'_>, TypeNameOpts) -> Result<(), Error>cf. TypeNameFn
display: Option<for<'mem> unsafe fn(OpaqueConst<'mem>, &mut Formatter<'_>) -> Result<(), Error>>cf. DisplayFn
debug: Option<for<'mem> unsafe fn(OpaqueConst<'mem>, &mut Formatter<'_>) -> Result<(), Error>>cf. DebugFn
default_in_place: Option<for<'mem> unsafe fn(OpaqueUninit<'mem>) -> Opaque<'mem>>cf. DefaultInPlaceFn
clone_into: Option<for<'src, 'dst> unsafe fn(OpaqueConst<'src>, OpaqueUninit<'dst>) -> Opaque<'dst>>cf. [CloneInPlaceFn]
marker_traits: MarkerTraitsMarker traits implemented by the type
eq: Option<for<'l, 'r> unsafe fn(OpaqueConst<'l>, OpaqueConst<'r>) -> bool>cf. PartialEqFn for equality comparison
partial_ord: Option<for<'l, 'r> unsafe fn(OpaqueConst<'l>, OpaqueConst<'r>) -> Option<Ordering>>cf. PartialOrdFn for partial ordering comparison
ord: Option<for<'l, 'r> unsafe fn(OpaqueConst<'l>, OpaqueConst<'r>) -> Ordering>cf. CmpFn for total ordering
hash: Option<for<'mem> unsafe fn(OpaqueConst<'mem>, Opaque<'mem>, for<'mem> unsafe fn(Opaque<'mem>, &[u8]))>cf. HashFn
drop_in_place: Option<for<'mem> unsafe fn(Opaque<'mem>)>cf. DropInPlaceFn — if None, drops without side-effects
parse: Option<for<'mem> unsafe fn(&str, OpaqueUninit<'mem>) -> Result<Opaque<'mem>, ParseError>>cf. ParseFn
try_from: Option<for<'src, 'mem> unsafe fn(OpaqueConst<'src>, OpaqueUninit<'mem>) -> Result<Opaque<'mem>, TryFromError>>cf. TryFromFn
Implementations§
Source§impl ValueVTable
impl ValueVTable
Sourcepub const fn builder() -> ValueVTableBuilder
pub const fn builder() -> ValueVTableBuilder
Creates a new ValueVTableBuilder
Trait Implementations§
Source§impl Clone for ValueVTable
impl Clone for ValueVTable
Source§fn clone(&self) -> ValueVTable
fn clone(&self) -> ValueVTable
Returns a duplicate 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 ValueVTable
impl Debug for ValueVTable
Source§impl Hash for ValueVTable
impl Hash for ValueVTable
Source§impl PartialEq for ValueVTable
impl PartialEq for ValueVTable
impl Copy for ValueVTable
impl Eq for ValueVTable
impl StructuralPartialEq for ValueVTable
Auto Trait Implementations§
impl Freeze for ValueVTable
impl RefUnwindSafe for ValueVTable
impl Send for ValueVTable
impl Sync for ValueVTable
impl Unpin for ValueVTable
impl UnwindSafe for ValueVTable
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