sage_loader/lib.rs
1//! Module loader for Sage projects.
2//!
3//! This crate handles:
4//! - Loading single-file programs
5//! - Loading multi-file projects with `sage.toml`
6//! - Module tree construction from `mod` declarations
7//! - Cycle detection in imports
8
9#![forbid(unsafe_code)]
10
11mod error;
12mod manifest;
13mod tree;
14
15pub use error::LoadError;
16pub use manifest::{ProjectManifest, TestConfig};
17pub use tree::{
18 discover_test_files, load_project, load_project_with_packages, load_single_file,
19 load_test_files, ModulePath, ModuleTree, ParsedModule, TestFile,
20};