Version 14, last updated by Mirko Stocker at Feb 01 UTC

More refactorings that might be interesting to implement:

  • Convert checked exception to Either
  • Refactoring into pattern matching, e.g. from if-then-else 
  • Convert between for and map/flatMap/filter
  • Convert a java file into its scala equivalent
    • this is useful also for really simple Java files (that contain only a class definition and method declarations) since such classes are many times generated automatically by the RCP facilities
  • Automatically add unimplemented methods when extending a trait
Code Analyzers that could be implemented:
  • Package structure does not match filesystem structure
  • Shadowing of values, types, etc. 
    • Not easily doable because the relevant information is only available in the presentation compiler
  • Usage of the Application trait (it has been deprecated; no need for an additional warning)
  • Usage of the any2string conversion
  • Comparisons that will never succeed (e.g. Option[T] == T)