W3cubDocs

/Rust

Trait std::collections::range::RangeArgument

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

🔬 This is a nightly-only experimental API. (collections_range #30877)waiting for dust to settle on inclusive ranges

Start index bound.

Returns the start value as a Bound.

Examples

#![feature(alloc)]
#![feature(collections_range)]

extern crate alloc;

use alloc::range::RangeArgument;
use alloc::Bound::*;

assert_eq!((..10).start(), Unbounded);
assert_eq!((3..10).start(), Included(&3));

🔬 This is a nightly-only experimental API. (collections_range #30877)waiting for dust to settle on inclusive ranges

End index bound.

Returns the end value as a Bound.

Examples

#![feature(alloc)]
#![feature(collections_range)]

extern crate alloc;

use alloc::range::RangeArgument;
use alloc::Bound::*;

assert_eq!((3..).end(), Unbounded);
assert_eq!((3..10).end(), Excluded(&10));

Implementors

© 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/std/collections/range/trait.RangeArgument.html