collections::Bound
Enum collections::Bound
pub enum Bound<T> { Included(T), Excluded(T), Unbounded, }
An endpoint of a range of keys.
Examples
Bound
s are range endpoints:
#![feature(collections_range)] use std::collections::range::RangeArgument; use std::collections::Bound::*; assert_eq!((..100).start(), Unbounded); assert_eq!((1..12).start(), Included(&1)); assert_eq!((1..12).end(), Excluded(&12));
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::collections::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());
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: Clone> Clone for Bound<T>
[src]
fn clone(&self) -> Bound<T>
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
impl<T: Copy> Copy for Bound<T>
[src]
impl<T: Debug> Debug for Bound<T>
[src]
fn fmt(&self, __arg_0: &mut Formatter) -> Result
Formats the value using the given formatter.
impl<T: Hash> Hash for Bound<T>
[src]
fn hash<__HT: Hasher>(&self, __arg_0: &mut __HT)
Feeds this value into the given [Hasher
]. Read more
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0
H: Hasher,
Feeds a slice of this type into the given [Hasher
]. Read more
impl<T: PartialEq> PartialEq for Bound<T>
[src]
fn eq(&self, __arg_0: &Bound<T>) -> bool
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, __arg_0: &Bound<T>) -> bool
This method tests for !=
.
impl<T: Eq> Eq for Bound<T>
[src]
© 2010 The Rust Project Developers
Licensed under the Apache License, Version 2.0 or the MIT license, at your option.
https://doc.rust-lang.org/collections/enum.Bound.html