Skip to content

Latest commit

 

History

History
128 lines (114 loc) · 3.56 KB

File metadata and controls

128 lines (114 loc) · 3.56 KB

Refactoring Support History

Currently, it supports the detection of the following refactorings:

supported by RefactoringMiner 1.0 and newer versions

  1. Extract Method
  2. Inline Method
  3. Rename Method
  4. Move Method
  5. Move Attribute
  6. Pull Up Method
  7. Pull Up Attribute
  8. Push Down Method
  9. Push Down Attribute
  10. Extract Superclass
  11. Extract Interface
  12. Move Class
  13. Rename Class
  14. Extract and Move Method
  15. Rename Package Change Package (Move, Rename, Split, Merge)

supported by RefactoringMiner 2.0 and newer versions

  1. Move and Rename Class
  2. Extract Class
  3. Extract Subclass
  4. Extract Variable
  5. Inline Variable
  6. Parameterize Variable
  7. Rename Variable
  8. Rename Parameter
  9. Rename Attribute
  10. Move and Rename Attribute
  11. Replace Variable with Attribute
  12. Replace Attribute (with Attribute)
  13. Merge Variable
  14. Merge Parameter
  15. Merge Attribute
  16. Split Variable
  17. Split Parameter
  18. Split Attribute
  19. Change Variable Type
  20. Change Parameter Type
  21. Change Return Type
  22. Change Attribute Type
  23. Extract Attribute
  24. Move and Rename Method
  25. Move and Inline Method

supported by RefactoringMiner 2.1 and newer versions

  1. Add Method Annotation
  2. Remove Method Annotation
  3. Modify Method Annotation
  4. Add Attribute Annotation
  5. Remove Attribute Annotation
  6. Modify Attribute Annotation
  7. Add Class Annotation
  8. Remove Class Annotation
  9. Modify Class Annotation
  10. Add Parameter Annotation
  11. Remove Parameter Annotation
  12. Modify Parameter Annotation
  13. Add Variable Annotation
  14. Remove Variable Annotation
  15. Modify Variable Annotation
  16. Add Parameter
  17. Remove Parameter
  18. Reorder Parameter
  19. Add Thrown Exception Type
  20. Remove Thrown Exception Type
  21. Change Thrown Exception Type
  22. Change Method Access Modifier

supported by RefactoringMiner 2.2 and newer versions

  1. Change Attribute Access Modifier
  2. Encapsulate Attribute
  3. Parameterize Attribute
  4. Replace Attribute with Variable
  5. Add Method Modifier (final, static, abstract, synchronized)
  6. Remove Method Modifier (final, static, abstract, synchronized)
  7. Add Attribute Modifier (final, static, transient, volatile)
  8. Remove Attribute Modifier (final, static, transient, volatile)
  9. Add Variable Modifier (final)
  10. Add Parameter Modifier (final)
  11. Remove Variable Modifier (final)
  12. Remove Parameter Modifier (final)
  13. Change Class Access Modifier
  14. Add Class Modifier (final, static, abstract)
  15. Remove Class Modifier (final, static, abstract)
  16. Move Package
  17. Split Package
  18. Merge Package
  19. Localize Parameter
  20. Change Type Declaration Kind (class, interface, enum, annotation, record)
  21. Collapse Hierarchy
  22. Replace Loop with Pipeline
  23. Replace Anonymous with Lambda

supported by RefactoringMiner 2.3 and newer versions

  1. Merge Class
  2. Inline Attribute
  3. Replace Pipeline with Loop

supported by RefactoringMiner 2.4 and newer versions

  1. Split Class
  2. Split Conditional
  3. Invert Condition
  4. Merge Conditional
  5. Merge Catch
  6. Merge Method
  7. Split Method

supported by RefactoringMiner 3.0 and newer versions

  1. Move Code (between methods)
  2. Replace Anonymous with Class
  3. Parameterize Test (JUnit 5 @ParameterizedTest with @ValueSource)
  4. Assert Throws
  5. Replace Generic With Diamond
  6. Try With Resources
  7. Replace Conditional With Ternary
  8. Assert Timeout
  9. Replace Conditional with Assumption
  10. Extract Fixture