Trait core::iter::Step
[−]
[src]
pub trait Step: PartialOrd + Sized { fn step(&self, by: &Self) -> Option<Self>; fn steps_between(start: &Self, end: &Self, by: &Self) -> Option<usize>; }
Objects that can be stepped over in both directions.
The steps_between
function provides a way to efficiently compare
two Step
objects.
Required Methods
fn step(&self, by: &Self) -> Option<Self>
Steps self
if possible.
fn steps_between(start: &Self, end: &Self, by: &Self) -> Option<usize>
Returns the number of steps between two step objects. The count is
inclusive of start
and exclusive of end
.
Returns None
if it is not possible to calculate steps_between
without overflow.
Implementors
impl Step for usize
impl Step for u8
impl Step for u16
impl Step for u32
impl Step for isize
impl Step for i8
impl Step for i16
impl Step for i32
impl Step for u64
impl Step for i64