leap_lang/parser/itemposition.rs
1use super::position::Position;
2
3#[derive(PartialEq, Debug)]
4pub struct ItemPosition<I>(pub Position, pub I);
5
6impl<I> ItemPosition<I> {
7 pub fn new(start: usize, length: usize, item: I) -> ItemPosition<I> {
8 ItemPosition(Position::new(start, length), item)
9 }
10
11 pub fn replace<U>(&self, x: U) -> ItemPosition<U> {
12 ItemPosition(self.0, x)
13 }
14}