shift/shift.rs
1//! Translate an interval set by a constant offset using `IntervalShift`.
2//!
3//! Run with: `cargo run --example shift`
4
5use odsek::*;
6
7fn main() {
8 // [1, 4)
9 let i = Interval::new(EndpointOC::Closed(1), EndpointOC::Open(4), ());
10 let is = IntervalsSingle::new(i);
11
12 // Shift everything by +5 → [6, 9)
13 for iv in IntervalShift::new(is, 5).into_iter() {
14 println!("{:?}", iv);
15 }
16}