Struct range_map::RangeMap
[−]
[src]
pub struct RangeMap<T, V> { // some fields omitted }
A set of characters. Optionally, each character in the set may be associated with some data.
Methods
impl<T: Debug + PrimInt, V: Clone + Debug + Eq> RangeMap<T, V>
[src]
fn new() -> RangeMap<T, V>
Creates a new empty RangeMap
.
fn num_ranges(&self) -> usize
Returns the number of mapped ranges.
Note that this is not usually the same as the number of mapped values.
fn is_empty(&self) -> bool
Tests whether this map is empty.
fn is_full(&self) -> bool
Tests whether this CharMap
maps every value.
fn ranges_values<'a>(&'a self) -> Iter<'a, (Range<T>, V)>
Iterates over all the mapped ranges and values.
fn keys_values<'a>(&'a self) -> PairIter<'a, T, V>
Iterates over all mappings.
fn get(&self, x: T) -> Option<&V>
Finds the value that x
maps to, if it exists.
Runs in O(log n)
time, where n
is the number of mapped ranges.
fn intersection(&self, other: &RangeSet<T>) -> RangeMap<T, V>
Returns those mappings whose keys belong to the given set.
fn num_keys(&self) -> usize
Counts the number of mapped keys.
This saturates at usize::MAX
.
fn to_range_set(&self) -> RangeSet<T>
Returns the set of mapped chars, forgetting what they are mapped to.
fn map_values<F>(&mut self, f: F) where F: FnMut(&V) -> V
Modifies the values in place.
fn retain_values<F>(&mut self, f: F) where F: FnMut(&V) -> bool
Modifies this map to contain only those mappings with values v
satisfying f(v)
.
Trait Implementations
impl<T: PartialEq, V: PartialEq> PartialEq for RangeMap<T, V>
[src]
fn eq(&self, __arg_0: &RangeMap<T, V>) -> bool
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, __arg_0: &RangeMap<T, V>) -> bool
This method tests for !=
.
impl<T: Hash, V: Hash> Hash for RangeMap<T, V>
[src]
fn hash<__HTV: Hasher>(&self, __arg_0: &mut __HTV)
Feeds this value into the state given, updating the hasher as necessary.
fn hash_slice<H>(data: &[Self], state: &mut H) where H: Hasher
1.3.0
Feeds a slice of this type into the state provided.
impl<T: Eq, V: Eq> Eq for RangeMap<T, V>
[src]
impl<T: Clone, V: Clone> Clone for RangeMap<T, V>
[src]
fn clone(&self) -> RangeMap<T, V>
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more