pub mod edge;
pub mod file;
pub mod node;
pub mod string;
pub mod admission;
pub mod storage;
pub mod compaction;
pub mod concurrent;
pub mod materialize;
pub mod traversal;
pub mod kernel;
pub mod bind;
pub mod memory;
pub mod resolution;
pub mod txn;
pub mod build;
pub(crate) mod mutation_target;
pub mod persistence;
pub mod analysis;
pub mod publish;
#[cfg(not(feature = "rebuild-internals"))]
pub(crate) mod rebuild;
#[cfg(feature = "rebuild-internals")]
pub mod rebuild;
#[cfg(all(test, feature = "loom"))]
pub mod loom_tests;
pub use admission::{
AdmissionController, AdmissionControllerStats, AdmissionError, BufferStateSnapshot,
CommitError, Reservation, ReservationGuard, SharedBufferState,
};
pub use bind::{BindingQuery, BindingResult, ResolvedBinding, SymbolClassification};
pub use build::{
ExportMap, GraphBuildHelper, HelperStats, IdentityIndex, IdentityKey, IncrementalStats,
IntraFileReference, Pass3Stats, Pass4Stats, PendingEdge, StagingGraph, StagingOp,
add_edge_incremental, pass3_intra_edges, pass4_cross_file, remove_file_nodes,
};
pub use compaction::{
BuildFailureReason, CheckpointStats, CompactionCheckpoint, CompactionError, CompactionPhase,
ComponentState, CounterCheckpoint, CounterReconcileState, Direction, EdgeStoreCheckpoint,
InterruptReason, MergeStats, MergedEdge, PostErrorState, SwapFailureReason,
SwapPreconditionError, SwapPreconditions, merge_delta_edges,
};
pub use concurrent::{
ChannelError, ChannelStats, CodeGraph, ConcurrentCodeGraph, GraphSnapshot, GraphUpdate,
UpdateChannel, UpdateReceiver,
};
pub use edge::{
BidirectionalEdgeStore, BidirectionalEdgeStoreStats, DbQueryType, DeltaBuffer,
DeltaBufferStats, DeltaEdge, DeltaOp, EdgeId, EdgeKey, EdgeKind, EdgeStore, EdgeStoreError,
EdgeStoreStats, ExportKind, FfiConvention, HttpMethod, LifetimeConstraintKind,
MacroExpansionKind, MqProtocol, StoreEdgeRef, TableWriteOp,
};
pub use file::FileId;
pub use kernel::{
EdgeFilter, FrontierMode, SccPathStrategy, SimplePathStrategy, TraversalConfig,
TraversalDirection, TraversalLimits, TraversalStrategy, VisitedPolicy, is_followable_edge,
traverse,
};
pub use materialize::{
MaterializedNode, collect_symbol_seeds, display_entry_qualified_name, find_nodes_by_name,
materialize_node, qualified_node_name,
};
pub use memory::{BTREEMAP_ENTRY_OVERHEAD, GraphMemorySize, HASHMAP_ENTRY_OVERHEAD};
pub use node::{GenerationOverflowError, NodeId, NodeKind};
pub use resolution::{
FileScope, FileScopeError, NormalizedSymbolQuery, ResolutionMode, ResolvedFileScope,
SymbolCandidateBucket, SymbolCandidateOutcome, SymbolCandidateSearchWitness,
SymbolCandidateWitness, SymbolQuery, SymbolResolutionOutcome, SymbolResolutionWitness,
};
pub use storage::{
AuxiliaryIndices, ClasspathNodeMetadata, CsrBuilder, CsrError, CsrGraph, CsrStats, EdgeRef,
FileRegistry, IndicesStats, InternerStats, MacroNodeMetadata, NodeArena, NodeEntry,
NodeMetadata, NodeMetadataStore, ProcMacroFunctionKind, RegistryError, RegistryStats,
ResolveError, Slot, SlotState, StringInterner,
};
pub use string::StringId;
pub use traversal::{
EdgeClassification, MaterializedEdge, TraversalMetadata, TraversalResult, TruncationReason,
};
pub use txn::GraphWriteTxn;