pub struct RangeMap<K, V, C> { /* private fields */ }Expand description
Range map.
Implementations§
Source§impl<K, V, C> RangeMap<K, V, C>
impl<K, V, C> RangeMap<K, V, C>
pub fn len(&self) -> K::Len
pub fn bounded_len(&self) -> Option<K::Len>where
K: Measure + PartialEnum,
pub fn is_empty(&self) -> boolwhere
K: Measure + PartialEnum,
pub fn range_count(&self) -> usize
pub fn intersects<R: AsRange<Item = K>>(&self, key: R) -> bool
pub fn contains_key(&self, key: K) -> bool
pub fn get(&self, key: K) -> Option<&V>
pub fn iter(&self) -> Iter<'_, K, V, C>
Source§impl<K, V, C> RangeMap<K, V, C>
impl<K, V, C> RangeMap<K, V, C>
pub fn update<R: AsRange<Item = K>, F>(&mut self, key: R, f: F)
pub fn insert_disconnected<R: IntoRange<Item = K>>(
&mut self,
key: R,
value: V,
) -> Result<(), (AnyRange<K>, V)>where
K: PartialEnum + Measure,
Trait Implementations§
Source§impl<'a, K, V, C> IntoIterator for &'a RangeMap<K, V, C>
impl<'a, K, V, C> IntoIterator for &'a RangeMap<K, V, C>
Source§impl<K, V, C> IntoIterator for RangeMap<K, V, C>
impl<K, V, C> IntoIterator for RangeMap<K, V, C>
Source§impl<K, V, C> Ord for RangeMap<K, V, C>
impl<K, V, C> Ord for RangeMap<K, V, C>
Source§impl<K, L, V, W, C, D> PartialEq<RangeMap<L, W, D>> for RangeMap<K, V, C>where
L: Measure<K> + PartialOrd<K> + PartialEnum,
K: PartialEnum,
W: PartialEq<V>,
C: SimpleCollectionRef + Slab<Node<AnyRange<K>, V>>,
D: SimpleCollectionRef + Slab<Node<AnyRange<L>, W>>,
impl<K, L, V, W, C, D> PartialEq<RangeMap<L, W, D>> for RangeMap<K, V, C>where
L: Measure<K> + PartialOrd<K> + PartialEnum,
K: PartialEnum,
W: PartialEq<V>,
C: SimpleCollectionRef + Slab<Node<AnyRange<K>, V>>,
D: SimpleCollectionRef + Slab<Node<AnyRange<L>, W>>,
Source§impl<K, L, V, W, C, D> PartialOrd<RangeMap<L, W, D>> for RangeMap<K, V, C>where
L: Measure<K> + PartialOrd<K> + PartialEnum,
K: PartialEnum,
W: PartialOrd<V>,
C: SimpleCollectionRef + Slab<Node<AnyRange<K>, V>>,
D: SimpleCollectionRef + Slab<Node<AnyRange<L>, W>>,
impl<K, L, V, W, C, D> PartialOrd<RangeMap<L, W, D>> for RangeMap<K, V, C>where
L: Measure<K> + PartialOrd<K> + PartialEnum,
K: PartialEnum,
W: PartialOrd<V>,
C: SimpleCollectionRef + Slab<Node<AnyRange<K>, V>>,
D: SimpleCollectionRef + Slab<Node<AnyRange<L>, W>>,
impl<K, V, C> Eq for RangeMap<K, V, C>
Auto Trait Implementations§
impl<K, V, C> Freeze for RangeMap<K, V, C>where
C: Freeze,
impl<K, V, C> RefUnwindSafe for RangeMap<K, V, C>
impl<K, V, C> Send for RangeMap<K, V, C>
impl<K, V, C> Sync for RangeMap<K, V, C>
impl<K, V, C> Unpin for RangeMap<K, V, C>
impl<K, V, C> UnwindSafe for RangeMap<K, V, C>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more