arranged 0.1.2

Statically bounds-checked (machine-word-abstracting? TBD) ranged types as zero or low-runtime overhead abstractions providing safe (no unintentional overflow) arithmetic.
Documentation
#[cfg(test)]
mod unit_tests;

use std::{iter::Step, ops::RangeInclusive};

#[derive(Debug)]
pub struct IntoIterRi<TValue>
where
    TValue: PartialOrd, {
    pub(super) range: RangeInclusive<TValue>,
}

impl<TValue> Iterator for IntoIterRi<TValue>
where
    TValue: PartialOrd + Step,
{
    type Item = TValue;

    fn next(&mut self) -> Option<Self::Item> { self.range.next() }
}