1#![doc = include_str!("../README.md")]
2#![doc(
3 html_logo_url = "https://raw.githubusercontent.com/paradigmxyz/solar/main/assets/logo.png",
4 html_favicon_url = "https://raw.githubusercontent.com/paradigmxyz/solar/main/assets/favicon.ico"
5)]
6#![cfg_attr(docsrs, feature(doc_cfg))]
7
8use ruint as _;
10
11#[macro_use]
12extern crate tracing;
13
14use solar_interface::diagnostics::{DiagBuilder, ErrorGuaranteed};
15
16pub mod lexer;
17pub use lexer::{Cursor, Lexer, unescape};
18
19pub mod natspec;
20
21mod parser;
22pub use parser::{Parser, Recovered};
23
24#[doc(no_inline)]
26pub use bumpalo;
27pub use solar_ast::{self as ast, token};
28pub use solar_interface as interface;
29
30pub type PErr<'a> = DiagBuilder<'a, ErrorGuaranteed>;
32
33pub type PResult<'a, T> = Result<T, PErr<'a>>;