Skip to main content

rexlang_parser/
error.rs

1use std::fmt::{self, Display, Formatter};
2
3use rexlang_lexer::span::Span;
4
5#[derive(Clone, Debug, PartialEq)]
6pub struct ParserErr {
7    pub span: Span,
8    pub message: String,
9}
10
11impl ParserErr {
12    pub fn new(span: Span, message: impl Into<String>) -> ParserErr {
13        ParserErr {
14            span,
15            message: message.into(),
16        }
17    }
18}
19
20impl Display for ParserErr {
21    fn fmt(&self, f: &mut Formatter) -> fmt::Result {
22        write!(f, "{}: {}", self.span.begin, self.message)
23    }
24}