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;