summaryrefslogtreecommitdiff
path: root/src/stages/mod.rs
blob: 571fd65cc2752835856f6c3f8c4b8b83aeff3ff6 (plain) (blame)
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
mod compiler;
mod syntactic;
mod syntactic_tokens;
mod semantic;
mod semantic_tokens;
mod intermediate;
mod intermediate_tokens;
mod bytecode;
mod bytecode_tokens;

pub use compiler::*;
pub use syntactic::*;
pub use syntactic_tokens::*;
pub use semantic::*;
pub use semantic_tokens::*;
pub use intermediate::*;
pub use intermediate_tokens::*;
pub use bytecode::*;
pub use bytecode_tokens::*;


#[macro_export]
macro_rules! indent {
    (0, $($tokens:tt)*) => {{
        println!($($tokens)*);
    }};
    ($indent:expr, $($tokens:tt)*) => {{
        for _ in 0..$indent { print!("  "); }
        println!($($tokens)*);
    }};
}