1.28.0[−][src]Trait nom::lib::std::ops::RangeBounds
RangeBounds
is implemented by Rust's built-in range types, produced
by range syntax like ..
, a..
, ..b
or c..d
.
Required Methods
fn start_bound(&self) -> Bound<&T>
Start index bound.
Returns the start value as a Bound
.
Examples
use std::ops::Bound::*; use std::ops::RangeBounds; assert_eq!((..10).start_bound(), Unbounded); assert_eq!((3..10).start_bound(), Included(&3));
fn end_bound(&self) -> Bound<&T>
End index bound.
Returns the end value as a Bound
.
Examples
use std::ops::Bound::*; use std::ops::RangeBounds; assert_eq!((3..).end_bound(), Unbounded); assert_eq!((3..10).end_bound(), Excluded(&10));
Provided Methods
fn contains<U>(&self, item: &U) -> bool where
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
🔬 This is a nightly-only experimental API. (range_contains
)
recently added as per RFC
Returns true
if item
is contained in the range.
Examples
#![feature(range_contains)] use std::f32; assert!( (3..5).contains(&4)); assert!(!(3..5).contains(&2)); assert!( (0.0..1.0).contains(&0.5)); assert!(!(0.0..1.0).contains(&f32::NAN)); assert!(!(0.0..f32::NAN).contains(&0.5)); assert!(!(f32::NAN..1.0).contains(&0.5));
Implementations on Foreign Types
impl<'a, T> RangeBounds<T> for (Bound<&'a T>, Bound<&'a T>) where
T: 'a + ?Sized,
[src]
impl<'a, T> RangeBounds<T> for (Bound<&'a T>, Bound<&'a T>) where
T: 'a + ?Sized,
fn start_bound(&self) -> Bound<&T>
[src]
fn start_bound(&self) -> Bound<&T>
fn end_bound(&self) -> Bound<&T>
[src]
fn end_bound(&self) -> Bound<&T>
fn contains<U>(&self, item: &U) -> bool where
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
[src]
fn contains<U>(&self, item: &U) -> bool where
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
🔬 This is a nightly-only experimental API. (range_contains
)
recently added as per RFC
impl<T> RangeBounds<T> for (Bound<T>, Bound<T>)
[src]
impl<T> RangeBounds<T> for (Bound<T>, Bound<T>)
fn start_bound(&self) -> Bound<&T>
[src]
fn start_bound(&self) -> Bound<&T>
fn end_bound(&self) -> Bound<&T>
[src]
fn end_bound(&self) -> Bound<&T>
fn contains<U>(&self, item: &U) -> bool where
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
[src]
fn contains<U>(&self, item: &U) -> bool where
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
🔬 This is a nightly-only experimental API. (range_contains
)
recently added as per RFC
Implementors
impl<'a, T> RangeBounds<T> for Range<&'a T>
[src]
impl<'a, T> RangeBounds<T> for Range<&'a T>
fn start_bound(&self) -> Bound<&T>
[src]
fn start_bound(&self) -> Bound<&T>
fn end_bound(&self) -> Bound<&T>
[src]
fn end_bound(&self) -> Bound<&T>
fn contains<U>(&self, item: &U) -> bool where
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
[src]
fn contains<U>(&self, item: &U) -> bool where
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
🔬 This is a nightly-only experimental API. (range_contains
)
recently added as per RFC
impl<'a, T> RangeBounds<T> for RangeFrom<&'a T>
[src]
impl<'a, T> RangeBounds<T> for RangeFrom<&'a T>
fn start_bound(&self) -> Bound<&T>
[src]
fn start_bound(&self) -> Bound<&T>
fn end_bound(&self) -> Bound<&T>
[src]
fn end_bound(&self) -> Bound<&T>
fn contains<U>(&self, item: &U) -> bool where
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
[src]
fn contains<U>(&self, item: &U) -> bool where
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
🔬 This is a nightly-only experimental API. (range_contains
)
recently added as per RFC
impl<'a, T> RangeBounds<T> for RangeInclusive<&'a T>
[src]
impl<'a, T> RangeBounds<T> for RangeInclusive<&'a T>
fn start_bound(&self) -> Bound<&T>
[src]
fn start_bound(&self) -> Bound<&T>
fn end_bound(&self) -> Bound<&T>
[src]
fn end_bound(&self) -> Bound<&T>
fn contains<U>(&self, item: &U) -> bool where
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
[src]
fn contains<U>(&self, item: &U) -> bool where
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
🔬 This is a nightly-only experimental API. (range_contains
)
recently added as per RFC
impl<'a, T> RangeBounds<T> for RangeTo<&'a T>
[src]
impl<'a, T> RangeBounds<T> for RangeTo<&'a T>
fn start_bound(&self) -> Bound<&T>
[src]
fn start_bound(&self) -> Bound<&T>
fn end_bound(&self) -> Bound<&T>
[src]
fn end_bound(&self) -> Bound<&T>
fn contains<U>(&self, item: &U) -> bool where
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
[src]
fn contains<U>(&self, item: &U) -> bool where
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
🔬 This is a nightly-only experimental API. (range_contains
)
recently added as per RFC
impl<'a, T> RangeBounds<T> for RangeToInclusive<&'a T>
[src]
impl<'a, T> RangeBounds<T> for RangeToInclusive<&'a T>
fn start_bound(&self) -> Bound<&T>
[src]
fn start_bound(&self) -> Bound<&T>
fn end_bound(&self) -> Bound<&T>
[src]
fn end_bound(&self) -> Bound<&T>
fn contains<U>(&self, item: &U) -> bool where
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
[src]
fn contains<U>(&self, item: &U) -> bool where
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
🔬 This is a nightly-only experimental API. (range_contains
)
recently added as per RFC
impl<T> RangeBounds<T> for Range<T>
[src]
impl<T> RangeBounds<T> for Range<T>
fn start_bound(&self) -> Bound<&T>
[src]
fn start_bound(&self) -> Bound<&T>
fn end_bound(&self) -> Bound<&T>
[src]
fn end_bound(&self) -> Bound<&T>
fn contains<U>(&self, item: &U) -> bool where
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
[src]
fn contains<U>(&self, item: &U) -> bool where
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
🔬 This is a nightly-only experimental API. (range_contains
)
recently added as per RFC
impl<T> RangeBounds<T> for RangeFrom<T>
[src]
impl<T> RangeBounds<T> for RangeFrom<T>
fn start_bound(&self) -> Bound<&T>
[src]
fn start_bound(&self) -> Bound<&T>
fn end_bound(&self) -> Bound<&T>
[src]
fn end_bound(&self) -> Bound<&T>
fn contains<U>(&self, item: &U) -> bool where
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
[src]
fn contains<U>(&self, item: &U) -> bool where
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
🔬 This is a nightly-only experimental API. (range_contains
)
recently added as per RFC
impl<T> RangeBounds<T> for RangeFull where
T: ?Sized,
[src]
impl<T> RangeBounds<T> for RangeFull where
T: ?Sized,
fn start_bound(&self) -> Bound<&T>
[src]
fn start_bound(&self) -> Bound<&T>
fn end_bound(&self) -> Bound<&T>
[src]
fn end_bound(&self) -> Bound<&T>
fn contains<U>(&self, item: &U) -> bool where
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
[src]
fn contains<U>(&self, item: &U) -> bool where
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
🔬 This is a nightly-only experimental API. (range_contains
)
recently added as per RFC
impl<T> RangeBounds<T> for RangeInclusive<T>
[src]
impl<T> RangeBounds<T> for RangeInclusive<T>
fn start_bound(&self) -> Bound<&T>
[src]
fn start_bound(&self) -> Bound<&T>
fn end_bound(&self) -> Bound<&T>
[src]
fn end_bound(&self) -> Bound<&T>
fn contains<U>(&self, item: &U) -> bool where
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
[src]
fn contains<U>(&self, item: &U) -> bool where
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
🔬 This is a nightly-only experimental API. (range_contains
)
recently added as per RFC
impl<T> RangeBounds<T> for RangeTo<T>
[src]
impl<T> RangeBounds<T> for RangeTo<T>
fn start_bound(&self) -> Bound<&T>
[src]
fn start_bound(&self) -> Bound<&T>
fn end_bound(&self) -> Bound<&T>
[src]
fn end_bound(&self) -> Bound<&T>
fn contains<U>(&self, item: &U) -> bool where
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
[src]
fn contains<U>(&self, item: &U) -> bool where
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
🔬 This is a nightly-only experimental API. (range_contains
)
recently added as per RFC
impl<T> RangeBounds<T> for RangeToInclusive<T>
[src]
impl<T> RangeBounds<T> for RangeToInclusive<T>
fn start_bound(&self) -> Bound<&T>
[src]
fn start_bound(&self) -> Bound<&T>
fn end_bound(&self) -> Bound<&T>
[src]
fn end_bound(&self) -> Bound<&T>
fn contains<U>(&self, item: &U) -> bool where
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
[src]
fn contains<U>(&self, item: &U) -> bool where
T: PartialOrd<U>,
U: PartialOrd<T> + ?Sized,
🔬 This is a nightly-only experimental API. (range_contains
)
recently added as per RFC