Skip to main content

Crate decy_core

Crate decy_core 

Source
Expand description

Core transpilation pipeline for C-to-Rust conversion.

This crate orchestrates the entire transpilation process:

  1. Parse C code (via decy-parser)
  2. Convert to HIR (via decy-hir)
  3. Analyze and infer types (via decy-analyzer)
  4. Infer ownership and lifetimes (via decy-ownership)
  5. Verify safety properties (via decy-verify)
  6. Generate Rust code (via decy-codegen)

Re-exports§

pub use metrics::CompileMetrics;
pub use metrics::ConvergenceReport;
pub use metrics::EquivalenceMetrics;
pub use metrics::TierMetrics;
pub use metrics::TranspilationResult;

Modules§

metrics
Compile success rate metrics for transpilation pipeline.
optimize
DECY-196: HIR optimization passes.
trace
DECY-193: Decision tracing / flight recorder for transpilation.

Structs§

CacheStatistics
Statistics for transpilation cache performance.
DependencyGraph
Dependency graph for tracking file dependencies and computing build order.
ProjectContext
Context for tracking cross-file information during transpilation.
TranspilationCache
Transpilation cache for avoiding re-transpilation of unchanged files.
TranspiledFile
Result of transpiling a single C file.

Functions§

transpile
Main transpilation pipeline entry point.
transpile_file
Transpile a single C file with project context.
transpile_from_file_path
DECY-237: Transpile directly from a C file path. This uses clang’s native file parsing which properly resolves system headers.
transpile_with_box_transform
Transpile with Box transformation enabled.
transpile_with_includes
Transpile C code with include directive support and custom base directory.
transpile_with_trace
DECY-193: Transpile C code with decision tracing.
transpile_with_verification
Transpile C code and return verification result.