Trait collections::range::RangeArgument [] [src]

pub trait RangeArgument<T> {
    fn start(&self) -> Option<&T> { ... }
    fn end(&self) -> Option<&T> { ... }
}
Unstable (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.

Provided Methods

fn start(&self) -> Option<&T>

Unstable (collections_range #30877)

: waiting for dust to settle on inclusive ranges

Start index (inclusive)

Return start value if present, else None.

Examples

#![feature(collections)] #![feature(collections_range)] extern crate collections; fn main() { use collections::range::RangeArgument; assert_eq!((..10).start(), None); assert_eq!((3..10).start(), Some(&3)); }
#![feature(collections)]
#![feature(collections_range)]

extern crate collections;

use collections::range::RangeArgument;

assert_eq!((..10).start(), None);
assert_eq!((3..10).start(), Some(&3));

fn end(&self) -> Option<&T>

Unstable (collections_range #30877)

: waiting for dust to settle on inclusive ranges

End index (exclusive)

Return end value if present, else None.

Examples

#![feature(collections)] #![feature(collections_range)] extern crate collections; fn main() { use collections::range::RangeArgument; assert_eq!((3..).end(), None); assert_eq!((3..10).end(), Some(&10)); }
#![feature(collections)]
#![feature(collections_range)]

extern crate collections;

use collections::range::RangeArgument;

assert_eq!((3..).end(), None);
assert_eq!((3..10).end(), Some(&10));

Implementors