//! Source files, spans, line maps, and diagnostics for the Praxis compiler.
//!
//! This is the leaf crate of the workspace: every other compiler crate reads
//! source through `SourceMap` and reports problems as `Diagnostic`s. The types
//! here are designed so that illegal states are unrepresentable — an inverted
//! span, an orphan span without a file, or a diagnostic without a primary span
//! cannot be constructed through the public API.
//!
//! See `docs/technical-design.md` §14.1 (`praxis-source` responsibilities)
//! and §8 (diagnostic format).
pub use ;
pub use ;
pub use ;
pub use ;
pub use nearest;