1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
use peginator::ParseError;

use diagnostic::Span;

use crate::{errors::SyntaxError, QError, QErrorKind};

impl From<ParseError> for QError {
    fn from(error: ParseError) -> Self {
        let syntax = SyntaxError {
            message: error.specifics.to_string(),
            file: Default::default(),
            span: Span { start: error.position, end: error.position },
        };
        Self { error: Box::new(QErrorKind::Syntax(syntax)), level: Default::default() }
    }
}