Enum std::ops::Bound 1.17.0
[−]
[src]
An endpoint of a range of keys.
Examples
Bound
s are range endpoints:
#![feature(collections_range)] use std::ops::Bound::*; use std::ops::RangeBounds; assert_eq!((..100).start(), Unbounded); assert_eq!((1..12).start(), Included(&1)); assert_eq!((1..12).end(), Excluded(&12));Run
Using a tuple of Bound
s as an argument to BTreeMap::range
.
Note that in most cases, it's better to use range syntax (1..5
) instead.
use std::collections::BTreeMap; use std::ops::Bound::{Excluded, Included, Unbounded}; let mut map = BTreeMap::new(); map.insert(3, "a"); map.insert(5, "b"); map.insert(8, "c"); for (key, value) in map.range((Excluded(3), Included(8))) { println!("{}: {}", key, value); } assert_eq!(Some((&3, &"a")), map.range((Unbounded, Included(5))).next());Run
Variants
Included(T)
An inclusive bound.
Excluded(T)
An exclusive bound.
Unbounded
An infinite endpoint. Indicates that there is no bound in this direction.
Trait Implementations
impl<T> Copy for Bound<T> where
T: Copy,
[src]
impl<T> Copy for Bound<T> where
T: Copy,
impl<T> Debug for Bound<T> where
T: Debug,
[src]
[+]
impl<T> Debug for Bound<T> where
T: Debug,
impl<T> Hash for Bound<T> where
T: Hash,
[src]
[+]
impl<T> Hash for Bound<T> where
T: Hash,
impl<T> PartialEq<Bound<T>> for Bound<T> where
T: PartialEq<T>,
[src]
[+]
impl<T> PartialEq<Bound<T>> for Bound<T> where
T: PartialEq<T>,
impl<T> Clone for Bound<T> where
T: Clone,
[src]
[+]
impl<T> Clone for Bound<T> where
T: Clone,
impl<T> Eq for Bound<T> where
T: Eq,
[src]
impl<T> Eq for Bound<T> where
T: Eq,