1#[macro_export]
2macro_rules! span {
3 ($start:literal .. $end:literal) => {
4 $crate::Location {
5 line: 1,
6 column: $start + 1,
7 char_idx: $start,
8 byte_idx: $start,
9 path: "",
10 }
11 .until($crate::Location {
12 line: 1,
13 column: $end + 1,
14 char_idx: $end,
15 byte_idx: $end,
16 path: "",
17 })
18 };
19}
20
21#[macro_use]
22mod macros;
23
24pub mod ast;
25mod error;
26mod lexer;
27mod parser;
28mod span;
29mod token;
30
31pub use error::*;
32pub use lexer::*;
33pub use parser::*;
34pub use span::*;
35pub use token::*;