Skip to main content

Crate splice

Crate splice 

Source
Expand description

Splice: Span-safe refactoring kernel for Rust.

This library provides byte-accurate, AST-validated refactoring operations for Rust code using SQLiteGraph as the ground-truth code graph.

Re-exports§

pub use error::Result;
pub use error::SpliceError;
pub use graph::CodeGraph;
pub use graph::migrate::check_schema_version;
pub use graph::migrate::migrate_database;
pub use graph::migrate::MigrationResult;
pub use graph::rename::apply_replacements_in_file;
pub use graph::rename::apply_with_rollback;
pub use graph::rename::create_rename_backup;
pub use graph::rename::generate_colored_preview;
pub use graph::rename::generate_preview_diff;
pub use graph::rename::group_references_by_file;
pub use graph::rename::replace_at_span;
pub use graph::rename::simulate_replacements;
pub use graph::rename::simulate_replacements_content;
pub use graph::rename::RenameBackupManifest;
pub use graph::rename::RenameTransaction;
pub use context::extract_context;
pub use context::extract_context_asymmetric;
pub use context::extract_context_with_before_after;
pub use context::resolve_context_counts;
pub use output::SpanContext;
pub use diff::format_colored_diff;
pub use diff::format_diff_summary;
pub use diff::format_unified_diff;
pub use diff::should_use_color;
pub use error_codes::get_error_explanation;
pub use error_codes::ErrorCode;
pub use error_codes::ErrorSeverity;
pub use error_codes::SpliceErrorCode;
pub use ingest::detect_semantic_kind;
pub use ingest::SemanticKind;
pub use hints::derive_tool_hints;
pub use hints::ToolHintOperation;
pub use hints::ToolHints;
pub use action::suggest_action;
pub use action::ActionType;
pub use action::Confidence;
pub use action::SuggestedAction;
pub use relationships::Relationship;
pub use relationships::RelationshipCache;
pub use relationships::Relationships;
pub use expand::expand_symbol;
pub use expand::expand_symbol_with_level;
pub use expand::ExpansionLevel;
pub use expand::SymbolExpander;
pub use output::AffectedFile;
pub use output::CondensationResult;
pub use output::CondensedScc;
pub use output::CycleDetectionResult;
pub use output::CycleInfo;
pub use output::DeadCodeByFile;
pub use output::DeadCodeResult;
pub use output::DeadSymbol;
pub use output::LevelInfo;
pub use output::ReachabilityResult;
pub use output::ReachableSymbol;
pub use output::SccEdge;
pub use output::SliceResult;
pub use output::SliceStats;
pub use output::SlicedSymbol;
pub use output::SymbolInfo;
pub use cli::ReachabilityDirection;
pub use cli::SliceDirection;
pub use proof::RefactoringProof;
pub use proof::GraphSnapshot;
pub use proof::ProofMetadata;
pub use proof::InvariantCheck;
pub use proof::InvariantViolation;
pub use proof::ViolationSeverity;
pub use proof::ProofChecksums;
pub use proof::SymbolInfo as ProofSymbolInfo;
pub use proof::GraphStats;

Modules§

action
Suggested action engine with confidence assessment.
checksum
File and span checksum computation for validation hooks.
cli
Command-line interface for Splice.
context
Context extraction for span surroundings.
diff
Unified diff generation with color support.
error
Splice error types.
error_codes
Error code registry for Splice diagnostics.
execution
Execution log infrastructure for Splice operations.
expand
AST-aware symbol expansion for retrieving full symbol bodies.
format
Format utilities for cross-tool compatibility.
graph
SQLiteGraph integration layer.
hints
Tool hints derivation for LLM guidance.
ingest
Filesystem → AST → SQLiteGraph ingestion pipeline.
output
Structured output types for Splice operations.
patch
Span-safe replacement engine with atomic writes and validation gates.
plan
JSON plan format for sequential multi-step refactorings.
proof
Proof-based refactoring support.
relationships
Relationship query module for traversing code graphs.
resolve
Deterministic symbol resolution with ambiguity detection.
suggestions
Symbol suggestion functions using fuzzy matching.
symbol
Common symbol abstraction for multi-language support.
symbol_id
Symbol ID generation for Splice-Magellan integration.
validate
Compiler and AST validation.
verify
Pre and post-verification hooks for safe refactoring operations.

Constants§

VERSION
Splice version.