Skip to main content

FlatMap

Struct FlatMap 

Source
pub struct FlatMap<K: Eq, V> { /* private fields */ }
Expand description

Linear Map with no sorting guarantee and no duplicate entries

Implementations§

Source§

impl<K, V> FlatMap<K, V>
where K: Eq,

Source

pub fn new() -> Self

Source

pub fn with_capacity(capacity: usize) -> Self

Source

pub fn from_entries(iter: impl Iterator<Item = FlatMapEntry<K, V>>) -> Self

inserts entries by checking for duplicates for every item if duplicate items are found, last one stays while earlier gets discarded not recommended for large list of entries, check for duplicates yourself and use FlatMap::from_entries_unchecked

Source

pub unsafe fn from_entries_unchecked( iter: impl Iterator<Item = FlatMapEntry<K, V>>, ) -> Self

construct inner vec without checking for duplicates

Source

pub fn get(&self, k: &K) -> Option<&V>

Source

pub fn insert(&mut self, k: K, v: V) -> Option<V>

Source

pub fn delete(&mut self, k: &K) -> Option<V>

Source

pub fn iter(&self) -> impl Iterator<Item = &FlatMapEntry<K, V>>

Source

pub fn iter_mut(&mut self) -> impl Iterator<Item = &mut FlatMapEntry<K, V>>

Source

pub fn shrink_to_fit(&mut self)

Trait Implementations§

Source§

impl<K: Eq + Clone, V: Clone> Clone for FlatMap<K, V>

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<K: Eq + Debug, V: Debug> Debug for FlatMap<K, V>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<K: Eq, V> Default for FlatMap<K, V>

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl<K: Eq, V, I> From<I> for FlatMap<K, V>
where I: Iterator<Item = (K, V)>,

Source§

fn from(value: I) -> Self

Converts to this type from the input type.
Source§

impl<K: Eq, V> IntoIterator for FlatMap<K, V>

Source§

type Item = FlatMapEntry<K, V>

The type of the elements being iterated over.
Source§

type IntoIter = IntoIter<FlatMapEntry<K, V>>

Which kind of iterator are we turning this into?
Source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more

Auto Trait Implementations§

§

impl<K, V> Freeze for FlatMap<K, V>

§

impl<K, V> RefUnwindSafe for FlatMap<K, V>

§

impl<K, V> Send for FlatMap<K, V>
where K: Send, V: Send,

§

impl<K, V> Sync for FlatMap<K, V>
where K: Sync, V: Sync,

§

impl<K, V> Unpin for FlatMap<K, V>
where K: Unpin, V: Unpin,

§

impl<K, V> UnsafeUnpin for FlatMap<K, V>

§

impl<K, V> UnwindSafe for FlatMap<K, V>
where K: UnwindSafe, V: UnwindSafe,

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. 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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
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.