pub mod cache;
pub mod error;
pub mod extractor;
pub mod graph;
pub mod input;
pub mod interface;
pub mod language;
pub mod model;
pub mod output;
pub mod parser;
pub mod pipeline;
pub mod reanalyze;
#[cfg(feature = "watch")]
pub mod watch;
#[cfg(feature = "metacall-deploy")]
pub mod deploy;
#[cfg(feature = "dataflow")]
pub mod sink;
pub use cache::{ExtractionCache, Fingerprint, fingerprint};
pub use error::{Diagnostic, Error, Severity};
pub use extractor::{
ExtractOptions, ExtractionIdGenerators, ExtractionResult, InMemorySource, VersionedExtraction,
extract_text_with_id_gen, extract_with_id_gen,
};
pub use input::detect_language;
pub use language::{LangId, LanguageSpec};
pub use model::{
DataNode, DataNodeId, DataScope, FileExtraction, FlowEdge, FlowKind, Symbol, SymbolId,
SymbolKind, UnresolvedImport, UnresolvedReference, Visibility,
};
pub use reanalyze::{ChangeSet, Overlay, WatchState, incremental_reanalyze, reanalyze_extractions};
pub use graph::{
CodeGraph,
builder::{AnalysisParts, GraphBuilder},
edge::{ConfidenceTier, EdgeData, EdgeKind, confidence_tier},
node::{ExternalNode, FileNode, NodeData, SymbolNode},
resolver::{
FlattenedScopeCache, ResolvedReference, ScopeMap, reference_edges,
resolve_references_detailed,
},
scc::{DeployabilityHint, Scc, SccAnalysis},
};
pub use output::shard::{
INDEX_DIR_NAME, IndexLoadOptions, IndexLoadStats, LoadedIndex, LoadedShard,
SHARD_SCHEMA_VERSION, ShardEdge, ShardEdgeKind, ShardError, ShardFile, ShardFlowKind,
ShardHeader, ShardManifestRecord, ShardNamePlan, ShardSymbol, collision_key,
is_safe_shard_name, is_writable_name, load_index, plan_shard_file_names, read_header,
read_manifest, read_shard, restore_shard_edges, write_header, write_manifest, write_shard,
};
pub use pipeline::{GraphAnalysis, SnapshotMeta, snapshot_meta};
#[cfg(feature = "watch")]
pub use watch::{WatchConfig, run_watch};