Skip to main content

hearth_graph/
lib.rs

1//! Standalone symbol-index and module-graph engine for Hearth.
2//!
3//! `hearth-graph` performs parsing and graph analysis without ambient I/O.
4//! Hosts supply source data explicitly and inject cancellation through
5//! [`CancelSignal`].
6
7mod analyze;
8mod build;
9#[cfg(feature = "bundled-languages")]
10mod bundled;
11mod cancel;
12#[cfg(feature = "fs")]
13mod fs_loader;
14pub mod graph;
15pub mod imports;
16mod injections;
17mod lang;
18mod parse;
19pub mod resolve;
20pub mod symbols;
21
22pub use analyze::{FileAnalysis, analyze_source};
23pub use build::{AnalyzeBuild, BuildOptions, IndexBuild, SourceLoader, analyze_paths, build_index};
24pub use cancel::{CancelSignal, NeverCancelled};
25#[cfg(feature = "fs")]
26pub use fs_loader::FsLoader;
27pub use imports::{ImportKind, RawImport};
28pub use lang::{ImportSpec, LanguageId, LanguageRegistry, LanguageSpec};
29pub use parse::ParserPool;
30#[cfg(feature = "resolve-js")]
31pub use resolve::js::{JsResolveOptions, js_resolver, js_resolver_with_fs};
32#[cfg(feature = "resolve-rust")]
33pub use resolve::rust::{RustResolveOptions, rust_resolver};
34pub use resolve::{
35    FailedKind, ResolutionCompleteness, ResolutionOutcome, Resolve, Resolved, ResolverSet,
36    UnresolvedReason,
37};
38pub use symbols::{
39    FileSymbols, MAX_SYMBOLS_PER_FILE, Symbol, SymbolIndex, SymbolKind, SymbolRef, UpsertOutcome,
40    extract_symbols,
41};