1pub mod codegen;
9pub mod compiler;
10pub mod lowering;
11
12pub use codegen::CodeGenerator;
13pub use compiler::Compiler;
14pub use lowering::Lowerer;
15
16pub type Result<T> = std::result::Result<T, Error>;
18
19#[derive(Debug, thiserror::Error)]
21pub enum Error {
22 #[error("Lowering error: {0}")]
23 Lowering(String),
24
25 #[error("Code generation error: {0}")]
26 CodeGen(String),
27
28 #[error("Compilation error: {0}")]
29 Compile(String),
30
31 #[error("Language error: {0}")]
32 Language(#[from] oxur_lang::Error),
33
34 #[error("IO error: {0}")]
35 Io(#[from] std::io::Error),
36}