Skip to main content

meta_ast/
lib.rs

1pub mod cache;
2pub mod error;
3pub mod extractor;
4pub mod graph;
5pub mod input;
6pub mod interface;
7pub mod language;
8pub mod model;
9pub mod output;
10pub mod parser;
11pub mod pipeline;
12pub mod reanalyze;
13
14#[cfg(feature = "watch")]
15pub mod watch;
16
17#[cfg(feature = "metacall-deploy")]
18pub mod deploy;
19
20#[cfg(feature = "dataflow")]
21pub mod sink;
22
23pub use cache::{ExtractionCache, Fingerprint, fingerprint};
24pub use error::{Diagnostic, Error, Severity};
25pub use extractor::{
26    ExtractOptions, ExtractionIdGenerators, ExtractionResult, InMemorySource, VersionedExtraction,
27    extract_text_with_id_gen, extract_with_id_gen,
28};
29pub use input::detect_language;
30pub use language::{LangId, LanguageSpec};
31pub use model::{
32    DataNode, DataNodeId, DataScope, FileExtraction, FlowEdge, FlowKind, Symbol, SymbolId,
33    SymbolKind, UnresolvedImport, UnresolvedReference, Visibility,
34};
35pub use reanalyze::{ChangeSet, Overlay, WatchState, incremental_reanalyze, reanalyze_extractions};
36
37// Graph module re-exports
38pub use graph::{
39    CodeGraph,
40    builder::GraphBuilder,
41    edge::{EdgeData, EdgeKind},
42    node::{ExternalNode, FileNode, NodeData, SymbolNode},
43    resolver::{FlattenedScopeCache, ScopeMap},
44    scc::{DeployabilityHint, Scc, SccAnalysis},
45};
46
47// Shard and index re-exports
48pub use output::shard::{
49    LoadedShard, SHARD_SCHEMA_VERSION, ShardEdge, ShardEdgeKind, ShardError, ShardFile,
50    ShardFlowKind, ShardHeader, ShardManifestRecord, ShardSymbol, read_header, read_manifest,
51    read_shard, restore_shard_edges, write_header, write_manifest, write_shard,
52};
53pub use pipeline::{GraphAnalysis, SnapshotMeta, snapshot_meta};
54
55// Watch-mode re-exports
56#[cfg(feature = "watch")]
57pub use watch::{WatchConfig, run_watch};