leap-lang 0.3.0

Leap language parser
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
use super::position::Position;

#[derive(PartialEq, Debug)]
pub struct ItemPosition<I>(pub Position, pub I);

impl<I> ItemPosition<I> {
    pub fn new(start: usize, length: usize, item: I) -> ItemPosition<I> {
        ItemPosition(Position::new(start, length), item)
    }

    pub fn replace<U>(&self, x: U) -> ItemPosition<U> {
        ItemPosition(self.0, x)
    }
}