#![allow(clippy::result_large_err)]
pub mod aot;
pub mod codegen;
pub mod ir;
pub mod ir_convert;
pub mod rt_abi;
pub const COMPILER_IR_SOURCE: &str = include_str!("clojure/compiler/ir.cljrs");
pub const COMPILER_KNOWN_SOURCE: &str = include_str!("clojure/compiler/known.cljrs");
pub const COMPILER_ANF_SOURCE: &str = include_str!("clojure/compiler/anf.cljrs");
pub const COMPILER_ESCAPE_SOURCE: &str = include_str!("clojure/compiler/escape.cljrs");
pub const COMPILER_OPTIMIZE_SOURCE: &str = include_str!("clojure/compiler/optimize.cljrs");
pub fn register_compiler_sources(globals: &std::sync::Arc<cljrs_eval::env::GlobalEnv>) {
globals.register_builtin_source("cljrs.compiler.ir", COMPILER_IR_SOURCE);
globals.register_builtin_source("cljrs.compiler.known", COMPILER_KNOWN_SOURCE);
globals.register_builtin_source("cljrs.compiler.anf", COMPILER_ANF_SOURCE);
globals.register_builtin_source("cljrs.compiler.escape", COMPILER_ESCAPE_SOURCE);
globals.register_builtin_source("cljrs.compiler.optimize", COMPILER_OPTIMIZE_SOURCE);
}