meta-ast 0.7.0

Polyglot static-analysis engine: extract symbols and cross-language dependency graphs from 9 supported source languages, with optional MetaCall deployment manifest generation.
Documentation
//! Polyglot static analysis: symbol extraction and cross-language dependency
//! graphs from nine source languages, with optional MetaCall deployment
//! manifests and dataflow extraction.
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};

// Graph module re-exports
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},
};

// Shard and index re-exports
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};

// Watch-mode re-exports
#[cfg(feature = "watch")]
pub use watch::{WatchConfig, run_watch};