Skip to main content

Maintain/Eliminate/
mod.rs

1//=============================================================================//
2// File Path: Element/Maintain/Source/Eliminate/mod.rs
3//=============================================================================//
4// Module: Eliminate - Rust Single-Use Variable Inliner
5//
6// Brief Description:
7//   Analyses Rust source files and inlines `let` bindings that are used exactly
8//   once, are non-mutated, and have no closure capture semantics. Equivalent to
9//   the TypeScript Eliminate project at
10// ~/Developer/Application/PlayForm/NPM/Eliminate   but targeting Rust ASTs via
11// `syn` + `prettyplease`.
12//
13// RESPONSIBILITIES:
14// ================
15//
16// Primary:
17//   - Parse Rust source with syn::parse_file
18//   - Iteratively inline single-use let bindings
19//   - Re-format output with prettyplease (rustfmt-compatible)
20//
21// Secondary:
22//   - CLI interface for batch file processing
23//   - Dry-run preview mode
24//   - Verbose statistics reporting
25//
26// ARCHITECTURAL ROLE:
27// ===================
28//
29// Position:
30//   - Peer module to Build and Run inside Maintain
31//   - Invoked via `Maintain eliminate [--path …] [--glob …]`
32//
33// Dependencies:
34//   - syn v2 (full + visit + visit-mut + extra-traits features)
35//   - prettyplease v0.2
36//   - walkdir (workspace)
37//
38//=============================================================================//
39
40pub mod CLI;
41
42pub mod Constant;
43
44pub mod Definition;
45
46pub mod Error;
47
48pub mod Fn;
49
50pub mod Logger;
51
52pub mod Process;
53
54pub mod Transform;