Trait std::collections::range::RangeArgument
[−]
[src]
pub trait RangeArgument<T> where T: ?Sized {
fn start(&self) -> Bound<&T>;
fn end(&self) -> Bound<&T>;
}🔬 This is a nightly-only experimental API. (collections_range #30877)
waiting for dust to settle on inclusive ranges
RangeArgument is implemented by Rust's built-in range types, produced
by range syntax like .., a.., ..b or c..d.
Required Methods
fn start(&self) -> Bound<&T>
🔬 This is a nightly-only experimental API. (collections_range #30877)
waiting for dust to settle on inclusive ranges
Start index bound
Return start value as a Bound
Examples
#![feature(collections)] #![feature(collections_range)] #![feature(collections_bound)] extern crate collections; use collections::range::RangeArgument; use collections::Bound::*; assert_eq!((..10).start(), Unbounded); assert_eq!((3..10).start(), Included(&3));Run
fn end(&self) -> Bound<&T>
🔬 This is a nightly-only experimental API. (collections_range #30877)
waiting for dust to settle on inclusive ranges
End index bound
Return end value as a Bound
Examples
#![feature(collections)] #![feature(collections_range)] #![feature(collections_bound)] extern crate collections; use collections::range::RangeArgument; use collections::Bound::*; assert_eq!((3..).end(), Unbounded); assert_eq!((3..10).end(), Excluded(&10));Run
Implementors
impl<T> RangeArgument<T> for RangeFull where T: ?Sizedimpl<T> RangeArgument<T> for RangeFrom<T>impl<T> RangeArgument<T> for RangeTo<T>impl<T> RangeArgument<T> for Range<T>impl<T> RangeArgument<T> for (Bound<T>, Bound<T>)impl<'a, T> RangeArgument<T> for (Bound<&'a T>, Bound<&'a T>) where T: 'a + ?Sized