makai_vcd_reader/lexer/
position.rs1#[derive(Clone, Copy, Debug, PartialEq, Eq, Default)]
2pub struct LexerPosition {
3 index: usize,
4 line: usize,
5 column: usize,
6 length: usize,
7}
8
9impl LexerPosition {
10 pub fn new(index: usize, line: usize, column: usize, length: usize) -> Self {
11 Self {
12 index,
13 line,
14 column,
15 length,
16 }
17 }
18
19 pub fn get_index(&self) -> usize {
20 self.index
21 }
22
23 pub fn get_line(&self) -> usize {
24 self.line
25 }
26
27 pub fn get_column(&self) -> usize {
28 self.column
29 }
30
31 pub fn len(&self) -> usize {
32 self.length
33 }
34
35 pub fn is_empty(&self) -> bool {
36 self.length == 0
37 }
38}