use crate::With;
#[derive(Debug, Clone, Copy)]
pub struct Row {
pub start: usize,
pub end: usize,
pub width: usize,
}
impl Row {
pub fn shift(&mut self, offset: usize) {
self.start += offset;
self.end += offset;
}
pub fn shifted(self, offset: usize) -> Self {
self.with(|s| s.shift(offset))
}
pub fn rev_shift(&mut self, offset: usize) {
self.start -= offset;
self.end -= offset;
}
}