pub struct WrappingHashSet<T>
where T: Eq + Hash,
{ /* private fields */ }
Expand description

A hash set that remembers the last key it returned with its iterator it will wrap around and only return all of the keys once per iterator

Important: Prior to version 0.5 all iterators shared the count, so if you only partilaly read one iterator, it would affect the next one. As of 0.5 and forward, the position is remembered, but the count is forgotten. This may break your app if you are depending on the old behavior.

Implementations§

source§

impl<T> WrappingHashSet<T>
where T: Eq + Hash + Clone,

source

pub fn new() -> WrappingHashSet<T>

source

pub fn iter<'i>(&'i mut self) -> Iter<'i, T>

source

pub fn insert(&mut self, key: T) -> bool

source

pub fn remove<'b>(&mut self, key: &'b T) -> bool

Trait Implementations§

source§

impl<T> Debug for WrappingHashSet<T>
where T: Eq + Hash + Debug,

source§

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

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<T> Freeze for WrappingHashSet<T>
where T: PartialEq,

§

impl<T> RefUnwindSafe for WrappingHashSet<T>

§

impl<T> Send for WrappingHashSet<T>
where T: PartialEq + Send,

§

impl<T> Sync for WrappingHashSet<T>
where T: PartialEq + Sync,

§

impl<T> Unpin for WrappingHashSet<T>
where T: PartialEq + Unpin,

§

impl<T> UnwindSafe for WrappingHashSet<T>
where T: PartialEq + 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> 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>,

§

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>,

§

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.