#![warn(missing_docs)]
#![expect(unused_crate_dependencies)]
pub mod action;
pub mod batch;
pub mod cfg_analysis;
pub mod checksum;
pub mod cli;
pub mod commands;
pub mod completion;
pub mod context;
pub mod create;
pub mod diff;
pub mod error;
pub mod error_codes;
pub mod execution;
pub mod expand;
pub mod format;
pub mod graph;
pub mod hints;
pub mod ingest;
pub mod output;
pub mod patch;
pub mod plan;
pub mod platform;
pub mod proof;
pub mod relationships;
pub mod resolve;
pub mod suggestions;
pub mod symbol;
pub mod symbol_id;
pub mod syntax_validator;
pub mod validate;
pub mod verify;
pub mod write;
pub use error::{Result, SpliceError};
pub use graph::CodeGraph;
pub use graph::migrate::{check_schema_version, migrate_database, MigrationResult};
pub use graph::rename::{
apply_replacements_in_file, apply_with_rollback, create_rename_backup,
generate_colored_preview, generate_preview_diff, group_references_by_file, replace_at_span,
simulate_replacements, simulate_replacements_content, RenameBackupManifest, RenameTransaction,
};
pub use context::{
extract_context, extract_context_asymmetric, extract_context_with_before_after,
resolve_context_counts,
};
pub use output::SpanContext;
pub use diff::{format_colored_diff, format_diff_summary, format_unified_diff, should_use_color};
pub use error_codes::{get_error_explanation, ErrorCode, ErrorSeverity, SpliceErrorCode};
pub use ingest::{detect_semantic_kind, SemanticKind};
pub use hints::{derive_tool_hints, ToolHintOperation, ToolHints};
pub use action::{suggest_action, ActionType, Confidence, SuggestedAction};
pub use relationships::{Relationship, RelationshipCache, Relationships};
pub use expand::{expand_symbol, expand_symbol_with_level, ExpansionLevel, SymbolExpander};
pub use batch::{
BatchExecutor, BatchOperation, BatchResult, BatchSpec, BatchTransaction, ExecutionMode,
RollbackMode, TransactionResult,
};
pub use output::{
AffectedFile,
CondensationResult,
CondensedScc,
CycleDetectionResult,
CycleInfo,
DeadCodeByFile,
DeadCodeResult,
DeadSymbol,
LevelInfo,
ReachabilityResult,
ReachableSymbol,
SccEdge,
SliceResult,
SliceStats,
SlicedSymbol,
SymbolInfo,
};
pub use cli::{ReachabilityDirection, SliceDirection};
pub use proof::{
GraphSnapshot, GraphStats, InvariantCheck, InvariantViolation, ProofChecksums, ProofMetadata,
RefactoringProof, RestoreResult, SnapshotMetadata, SnapshotStorage,
SymbolInfo as ProofSymbolInfo, ViolationSeverity,
};
pub const VERSION: &str = env!("CARGO_PKG_VERSION");