1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
//! Error types for mathlex parsing operations.
//!
//! This module defines comprehensive error types for reporting parsing failures,
//! including precise location information and helpful error messages.
//!
//! # Error Architecture
//!
//! - [`Position`]: A point in source text (line, column, offset)
//! - [`Span`]: A range in source text (start and end positions)
//! - [`ParseErrorKind`]: The specific type of parsing error
//! - [`ParseError`]: Complete error with kind, location, and context
//! - [`ParseResult<T>`]: Standard Result type for parsing operations
//!
//! # Example
//!
//! ```
//! use mathlex::error::{Position, Span, ParseError, ParseErrorKind};
//!
//! let pos = Position::new(1, 5, 5);
//! let error = ParseError::new(
//! ParseErrorKind::UnexpectedEof {
//! expected: vec!["number".to_string()],
//! },
//! Some(Span::new(pos, pos)),
//! );
//!
//! assert_eq!(error.to_string(), "unexpected end of input, expected number at 1:5");
//! ```
pub use ErrorBuilder;
pub use ParseOutput;
pub use levenshtein;
pub use suggest_function;
pub use ;