pub trait RefactoringProvider: Send + Sync {
// Required methods
fn analyze_refactoring(
&self,
code: &str,
language: &str,
refactoring_type: RefactoringType,
) -> Result<RefactoringAnalysis>;
fn apply_refactoring(
&self,
code: &str,
language: &str,
refactoring: &Refactoring,
) -> Result<String>;
fn validate_refactoring(
&self,
original: &str,
refactored: &str,
language: &str,
) -> Result<ValidationResult>;
}Expand description
Trait for language-specific refactoring providers
Required Methods§
Sourcefn analyze_refactoring(
&self,
code: &str,
language: &str,
refactoring_type: RefactoringType,
) -> Result<RefactoringAnalysis>
fn analyze_refactoring( &self, code: &str, language: &str, refactoring_type: RefactoringType, ) -> Result<RefactoringAnalysis>
Analyze a refactoring operation
Sourcefn apply_refactoring(
&self,
code: &str,
language: &str,
refactoring: &Refactoring,
) -> Result<String>
fn apply_refactoring( &self, code: &str, language: &str, refactoring: &Refactoring, ) -> Result<String>
Apply a refactoring to code
Sourcefn validate_refactoring(
&self,
original: &str,
refactored: &str,
language: &str,
) -> Result<ValidationResult>
fn validate_refactoring( &self, original: &str, refactored: &str, language: &str, ) -> Result<ValidationResult>
Validate refactored code