ValueVTableBuilder

Struct ValueVTableBuilder 

Source
pub struct ValueVTableBuilder<T>
where T: ?Sized,
{ /* private fields */ }
Expand description

Builds a ValueVTable

Implementations§

Source§

impl<T> ValueVTableBuilder<T>
where T: ?Sized,

Source

pub const fn new() -> ValueVTableBuilder<T>

Creates a new ValueVTableBuilder with all fields set to None.

Source

pub const fn type_name( self, type_name: fn(&mut Formatter<'_>, TypeNameOpts) -> Result<(), Error>, ) -> ValueVTableBuilder<T>

Sets the type name function for this builder.

Source

pub const fn display( self, display: Option<fn(TypedPtrConst<'_, T>, &mut Formatter<'_>) -> Result<(), Error>>, ) -> ValueVTableBuilder<T>

Sets the display function for this builder.

Source

pub const fn debug( self, debug: Option<fn(TypedPtrConst<'_, T>, &mut Formatter<'_>) -> Result<(), Error>>, ) -> ValueVTableBuilder<T>

Sets the debug function for this builder.

Source

pub const fn default_in_place( self, default_in_place: Option<for<'mem> fn(TypedPtrUninit<'mem, T>) -> TypedPtrMut<'mem, T>>, ) -> ValueVTableBuilder<T>

Sets the default_in_place function for this builder.

Source

pub const fn clone_into( self, clone_into: Option<for<'src, 'dst> fn(TypedPtrConst<'src, T>, TypedPtrUninit<'dst, T>) -> TypedPtrMut<'dst, T>>, ) -> ValueVTableBuilder<T>

Sets the clone_into function for this builder.

Source

pub const fn marker_traits( self, marker_traits: MarkerTraits, ) -> ValueVTableBuilder<T>

Sets the marker traits for this builder.

Source

pub const fn partial_eq( self, partial_eq: Option<fn(TypedPtrConst<'_, T>, TypedPtrConst<'_, T>) -> bool>, ) -> ValueVTableBuilder<T>

Sets the partial_eq function for this builder.

Source

pub const fn partial_ord( self, partial_ord: Option<fn(TypedPtrConst<'_, T>, TypedPtrConst<'_, T>) -> Option<Ordering>>, ) -> ValueVTableBuilder<T>

Sets the partial_ord function for this builder.

Source

pub const fn ord( self, ord: Option<fn(TypedPtrConst<'_, T>, TypedPtrConst<'_, T>) -> Ordering>, ) -> ValueVTableBuilder<T>

Sets the ord function for this builder.

Source

pub const fn hash( self, hash: Option<for<'mem> fn(TypedPtrConst<'mem, T>, &mut dyn Hasher)>, ) -> ValueVTableBuilder<T>

Sets the hash function for this builder.

Source

pub const fn drop_in_place( self, drop_in_place: Option<for<'mem> unsafe fn(PtrMut<'mem>) -> PtrUninit<'mem>>, ) -> ValueVTableBuilder<T>

Overwrites the drop_in_place function for this builder.

This is usually not necessary, the builder builder will default this to the appropriate type.

Source

pub const fn invariants( self, invariants: Option<fn(TypedPtrConst<'_, T>) -> bool>, ) -> ValueVTableBuilder<T>

Sets the invariants function for this builder.

Source

pub const fn parse( self, parse: Option<for<'mem> fn(&str, TypedPtrUninit<'mem, T>) -> Result<TypedPtrMut<'mem, T>, ParseError>>, ) -> ValueVTableBuilder<T>

Sets the parse function for this builder.

Source

pub const fn try_from( self, try_from: Option<for<'src, 'mem, 'shape> fn(TypedPtrConst<'src, T>, &'static Shape, TypedPtrUninit<'mem, T>) -> Result<&'mem mut T, TryFromError>>, ) -> ValueVTableBuilder<T>

Sets the try_from function for this builder.

Source

pub const fn try_into_inner( self, try_into_inner: Option<for<'src, 'dst> fn(TypedPtrConst<'src, T>, TypedPtrUninit<'dst, T>) -> Result<&'dst mut T, TryIntoInnerError>>, ) -> ValueVTableBuilder<T>

Sets the try_into_inner function for this builder.

Source

pub const fn try_borrow_inner( self, try_borrow_inner: Option<for<'src> fn(TypedPtrConst<'src, T>) -> Result<TypedPtrConst<'src, T>, TryBorrowInnerError>>, ) -> ValueVTableBuilder<T>

Sets the borrow_inner function for this builder.

Source

pub const fn build(self) -> ValueVTable

Builds the ValueVTable from the current state of the builder.

Auto Trait Implementations§

§

impl<T> Freeze for ValueVTableBuilder<T>
where T: ?Sized,

§

impl<T> RefUnwindSafe for ValueVTableBuilder<T>
where T: RefUnwindSafe + ?Sized,

§

impl<T> Send for ValueVTableBuilder<T>
where T: Send + ?Sized,

§

impl<T> Sync for ValueVTableBuilder<T>
where T: Sync + ?Sized,

§

impl<T> Unpin for ValueVTableBuilder<T>
where T: Unpin + ?Sized,

§

impl<T> UnwindSafe for ValueVTableBuilder<T>
where T: UnwindSafe + ?Sized,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.