PoolMut

Trait PoolMut 

Source
pub trait PoolMut<A: ScalarAllocator> {
    // Required methods
    fn insert_mut(&mut self, scalar: OpaqueScalar<A>) -> Option<OpaqueScalar<A>>;
    fn remove_mut(&mut self) -> Option<OpaqueScalar<A>>;
}
Expand description

A pool of ids that can be used to reuse ids in Dynamic.

Required Methods§

Source

fn insert_mut(&mut self, scalar: OpaqueScalar<A>) -> Option<OpaqueScalar<A>>

Put a new id into the pool

Source

fn remove_mut(&mut self) -> Option<OpaqueScalar<A>>

Take an id out of the pool

Implementations on Foreign Types§

Source§

impl<A: ScalarAllocator> PoolMut<A> for Option<OpaqueScalar<A>>

Source§

fn insert_mut(&mut self, scalar: OpaqueScalar<A>) -> Option<OpaqueScalar<A>>

Source§

fn remove_mut(&mut self) -> Option<OpaqueScalar<A>>

Source§

impl<A: ScalarAllocator> PoolMut<A> for ()

Source§

fn insert_mut(&mut self, scalar: OpaqueScalar<A>) -> Option<OpaqueScalar<A>>

Source§

fn remove_mut(&mut self) -> Option<OpaqueScalar<A>>

Source§

impl<A: ScalarAllocator> PoolMut<A> for BinaryHeap<OpaqueScalar<A>>
where A::Scalar: Ord,

Source§

fn insert_mut(&mut self, scalar: OpaqueScalar<A>) -> Option<OpaqueScalar<A>>

Source§

fn remove_mut(&mut self) -> Option<OpaqueScalar<A>>

Source§

impl<A: ScalarAllocator> PoolMut<A> for VecDeque<OpaqueScalar<A>>

Source§

fn insert_mut(&mut self, scalar: OpaqueScalar<A>) -> Option<OpaqueScalar<A>>

Source§

fn remove_mut(&mut self) -> Option<OpaqueScalar<A>>

Source§

impl<A: ScalarAllocator> PoolMut<A> for Vec<OpaqueScalar<A>>

Source§

fn insert_mut(&mut self, scalar: OpaqueScalar<A>) -> Option<OpaqueScalar<A>>

Source§

fn remove_mut(&mut self) -> Option<OpaqueScalar<A>>

Source§

impl<A: ScalarAllocator, P: Pool<A>, F: FnOnce() -> P> PoolMut<A> for Lazy<P, F>

Available on crate feature once_cell only.
Source§

fn insert_mut(&mut self, scalar: OpaqueScalar<A>) -> Option<OpaqueScalar<A>>

Source§

fn remove_mut(&mut self) -> Option<OpaqueScalar<A>>

Source§

impl<A: ScalarAllocator, P: Pool<A>, F: FnOnce() -> P> PoolMut<A> for Lazy<P, F>

Available on crate feature once_cell only.
Source§

fn insert_mut(&mut self, scalar: OpaqueScalar<A>) -> Option<OpaqueScalar<A>>

Source§

fn remove_mut(&mut self) -> Option<OpaqueScalar<A>>

Source§

impl<A: ScalarAllocator, P: PoolMut<A>> PoolMut<A> for Mutex<P>

Available on crate feature std only.
Source§

fn insert_mut(&mut self, scalar: OpaqueScalar<A>) -> Option<OpaqueScalar<A>>

Source§

fn remove_mut(&mut self) -> Option<OpaqueScalar<A>>

Source§

impl<A: ScalarAllocator, P: PoolMut<A>> PoolMut<A> for Mutex<P>

Available on crate feature parking_lot only.
Source§

fn insert_mut(&mut self, scalar: OpaqueScalar<A>) -> Option<OpaqueScalar<A>>

Source§

fn remove_mut(&mut self) -> Option<OpaqueScalar<A>>

Source§

impl<A: ScalarAllocator, T: ?Sized + PoolMut<A>> PoolMut<A> for Cell<T>

Source§

fn insert_mut(&mut self, scalar: OpaqueScalar<A>) -> Option<OpaqueScalar<A>>

Source§

fn remove_mut(&mut self) -> Option<OpaqueScalar<A>>

Source§

impl<A: ScalarAllocator, T: ?Sized + PoolMut<A>> PoolMut<A> for RefCell<T>

Source§

fn insert_mut(&mut self, scalar: OpaqueScalar<A>) -> Option<OpaqueScalar<A>>

Source§

fn remove_mut(&mut self) -> Option<OpaqueScalar<A>>

Source§

impl<P: ?Sized + Pool<A>, A: ScalarAllocator> PoolMut<A> for &P

Source§

fn insert_mut(&mut self, scalar: OpaqueScalar<A>) -> Option<OpaqueScalar<A>>

Source§

fn remove_mut(&mut self) -> Option<OpaqueScalar<A>>

Source§

impl<P: ?Sized + PoolMut<A>, A: ScalarAllocator> PoolMut<A> for &mut P

Source§

fn insert_mut(&mut self, scalar: OpaqueScalar<A>) -> Option<OpaqueScalar<A>>

Source§

fn remove_mut(&mut self) -> Option<OpaqueScalar<A>>

Implementors§

Source§

impl<A: ScalarAllocator> PoolMut<A> for SyncQueuePool<A>

Available on crate features parking_lot or std only.
Source§

impl<A: ScalarAllocator> PoolMut<A> for SyncStackPool<A>

Available on crate features parking_lot or std only.
Source§

impl<A: ScalarAllocator<Scalar = ()>> PoolMut<A> for Flag<A>

Source§

impl<A: ScalarAllocator, R: Radium<Item = usize>, P: PoolMut<A>> PoolMut<A> for Sequence<R, [P]>