MapVTableBuilder

Struct MapVTableBuilder 

Source
pub struct MapVTableBuilder { /* private fields */ }
Expand description

Builds a MapVTable

Implementations§

Source§

impl MapVTableBuilder

Source

pub const fn new() -> MapVTableBuilder

Creates a new MapVTableBuilder with all fields set to None.

Source

pub const fn init_in_place_with_capacity( self, f: for<'mem> unsafe fn(PtrUninit<'mem>, usize) -> PtrMut<'mem>, ) -> MapVTableBuilder

Sets the init_in_place_with_capacity_fn field

Source

pub const fn insert( self, f: for<'map, 'key, 'value> unsafe fn(PtrMut<'map>, PtrMut<'key>, PtrMut<'value>), ) -> MapVTableBuilder

Sets the insert_fn field

Source

pub const fn len( self, f: for<'map> unsafe fn(PtrConst<'map>) -> usize, ) -> MapVTableBuilder

Sets the len_fn field

Source

pub const fn contains_key( self, f: for<'map, 'key> unsafe fn(PtrConst<'map>, PtrConst<'key>) -> bool, ) -> MapVTableBuilder

Sets the contains_key_fn field

Source

pub const fn get_value_ptr( self, f: for<'map, 'key> unsafe fn(PtrConst<'map>, PtrConst<'key>) -> Option<PtrConst<'map>>, ) -> MapVTableBuilder

Sets the get_value_ptr_fn field

Source

pub const fn iter_vtable( self, vtable: IterVTable<(PtrConst<'static>, PtrConst<'static>)>, ) -> MapVTableBuilder

Sets the iter_vtable field

Source

pub const fn build(self) -> MapVTable

Builds the MapVTable from the current state of the builder.

§Panics

This method will panic if any of the required fields are None.

Auto Trait Implementations§

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.