//! el-build — Build orchestrator for the Engram language toolchain. //! //! Reads `el.toml`, resolves dependencies, compiles source files, and produces //! artifacts. Supports incremental builds via BLAKE3 file hashes stored in //! `.el/build-cache.json`. //! //! # Usage //! ```rust,no_run //! use el_build::BuildSystem; //! use el_manifest::Manifest; //! //! # async fn example() -> Result<(), Box> { //! let manifest = Manifest::from_file(std::path::Path::new("el.toml"))?; //! let bs = BuildSystem::new(manifest, std::env::current_dir()?); //! let output = bs.build(None).await?; //! println!("artifact: {}", output.artifact_path.display()); //! # Ok(()) //! # } //! ``` mod build; mod cache; mod error; mod plugin; mod test_runner; pub use build::{BuildOutput, BuildSystem, DepSource, ResolvedDep, TestReport}; pub use cache::BuildCache; pub use error::{BuildError, BuildResult}; pub use plugin::{CompilerPlugin, PluginError, PluginRegistry};