Module error

Module error 

Source
Expand description

Error types with source location tracking.

All errors in logicaffeine carry a Span indicating where in the source text the error occurred. This enables precise, contextual error messages.

§Example

use logicaffeine_base::{SpannedError, Span, Result};

fn parse_number(s: &str) -> Result<i32> {
    s.parse().map_err(|_| SpannedError::new(
        format!("invalid number: '{}'", s),
        Span::new(0, s.len()),
    ))
}

let err = parse_number("abc").unwrap_err();
assert!(err.to_string().contains("invalid number"));

Structs§

SpannedError
An error annotated with its source location.

Type Aliases§

Result
Alias for std::result::Result<T, SpannedError>.