Expand description
Individual MutationConverter implementations
Each module handles one or more MutationSpec variants.
§Implementation Status
§Phase 1: Basic Converters
- rename.rs - RenameConverter
- field.rs - FieldConverter (AddField, RemoveField)
- visibility.rs - VisibilityConverter
- derive.rs - DeriveConverter (AddDerive, RemoveDerive)
§Phase 2: Complex Converters
- enum_.rs - EnumConverter (AddVariant, RemoveVariant)
- remove.rs - RemoveConverter (RemoveItem)
- method.rs - MethodConverter
- module.rs - ModuleConverter (AddMod, RemoveMod, CreateMod)
- add_item/ - AddItemConverter (with ItemParser sub-parsers)
§Phase 3: Remaining Converters
- idiom.rs - IdiomConverter (OrganizeImports, LoopToIterator, etc.)
- trait_.rs - TraitConverter (ExtractTrait, InlineTrait)
- move_.rs - MoveConverter
- plugin.rs - PluginConverter (WASM skeleton)
- stmt.rs - StmtConverter (ReplaceExpr, RemoveStatement, InsertStatement, ReplaceStatement)
- match_arm.rs - MatchArmConverter (AddMatchArm)
- struct_literal_field.rs - StructLiteralFieldConverter (AddStructLiteralField)
- duplicate.rs - DuplicateConverter (DuplicateFunction, DuplicateStruct, DuplicateEnum, DuplicateModTree)
Re-exports§
pub use add_item::AddItemConverter;pub use derive::DeriveConverter;pub use duplicate::DuplicateConverter;pub use enum_::EnumConverter;pub use field::FieldConverter;pub use idiom::IdiomConverter;pub use match_arm::MatchArmConverter;pub use method::MethodConverter;pub use module::ModuleConverter;pub use move_::MoveConverter;pub use plugin::PluginConverter;pub use remove::RemoveConverter;pub use rename::RenameConverter;pub use stmt::StmtConverter;pub use struct_literal_field::StructLiteralFieldConverter;pub use trait_::TraitConverter;pub use visibility::VisibilityConverter;
Modules§
- add_
item - AddItemConverter: Converts AddItem MutationSpec to appropriate Mutations
- derive
- DeriveConverter: Converts MutationSpec::AddDerive and RemoveDerive
- duplicate
- DuplicateConverter: Converts Duplicate MutationSpecs to AddPureItemsMutation
- enum_
- EnumConverter: Converts MutationSpec::AddVariant and RemoveVariant
- field
- FieldConverter: Converts MutationSpec::AddField and RemoveField
- idiom
- IdiomConverter: Converts idiom transformation MutationSpecs to Mutations
- match_
arm - MatchArmConverter: Converts MutationSpec::AddMatchArm, RemoveMatchArm, and ReplaceMatchArm
- method
- MethodConverter: Converts MutationSpec::AddMethod and RemoveMethod
- module
- ModuleConverter: Converts MutationSpec::RemoveMod, CreateMod
- move_
- MoveConverter: Converts MoveItem MutationSpec to MoveItemMutation
- plugin
- PluginConverter: Converts PluginTransform MutationSpec to WASM plugin execution
- remove
- RemoveConverter: Converts MutationSpec::RemoveItem
- rename
- RenameConverter: Converts MutationSpec::Rename to RenameMutation
- stmt
- StmtConverter: Converts statement-level MutationSpec variants to Mutations
- struct_
literal_ field - StructLiteralFieldConverter: Converts MutationSpec::AddStructLiteralField and RemoveStructLiteralField
- trait_
- TraitConverter: Converts trait abstraction MutationSpecs to Mutations
- visibility
- VisibilityConverter: Converts MutationSpec::ChangeVisibility
Traits§
- Resolve
Target Symbol - Trait for resolving MutationTargetSymbol to SymbolId.