brk_core 0.0.83

The Core (Structs and Errors) of the Bitcoin Research Kit
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use std::ops::RangeInclusive;

pub trait FromCoarserIndex<T>
where
    T: Ord + From<usize>,
{
    fn min_from(coarser: T) -> usize;
    fn max_from_(coarser: T) -> usize;
    fn max_from(coarser: T, len: usize) -> usize {
        Self::max_from_(coarser).min(len - 1)
    }
    fn inclusive_range_from(coarser: T, len: usize) -> RangeInclusive<usize>
    where
        T: Clone,
    {
        Self::min_from(coarser.clone())..=Self::max_from(coarser, len)
    }
}