//! Rewriter trait composed across rules.
/// One mechanical migration step in the Manouche v1 → v2 codemod.
///
/// Each rule receives the parsed AST of a single `.rs` file and returns a
/// (possibly) transformed copy. Rules are composed sequentially by the
/// driver in `migrate_v2::run`.