Class JavaRefactorer
java.lang.Object
eu.solven.cleanthat.engine.java.refactorer.AAstRefactorer<com.github.javaparser.ast.Node,com.github.javaparser.JavaParser,com.github.javaparser.ast.Node,IJavaparserMutator>
eu.solven.cleanthat.engine.java.refactorer.JavaRefactorer
- All Implemented Interfaces:
IHasId
,ILintFixer
,ILintFixerWithId
public class JavaRefactorer
extends AAstRefactorer<com.github.javaparser.ast.Node,com.github.javaparser.JavaParser,com.github.javaparser.ast.Node,IJavaparserMutator>
This class is dedicated to refactoring. Most mutators will refactor code to a better (e.g. shorter, faster, safer,
etc) but with [strictly|roughly] equivalent runtime behavior.
- Author:
- Benoit Lacelle
-
Constructor Summary
ConstructorsConstructorDescriptionJavaRefactorer
(eu.solven.cleanthat.language.IEngineProperties engineProperties, JavaRefactorerProperties properties) -
Method Summary
Modifier and TypeMethodDescriptionprotected void
assertPatchIsValid
(List<String> dirtyRows, List<String> cleanRows, com.github.difflib.patch.Patch<String> diff) computeFixedDelta
(com.github.difflib.patch.Patch<String> diff) doFormat
(String dirtyCode, LineEnding eol) Deprecated, for removal: This API element is subject to removal in a future version.protected String
fixJavaparserUnexpectedChanges
(String dirtyCode, String cleanCode) getId()
protected com.github.javaparser.JavaParser
static com.github.javaparser.JavaParser
makeDefaultJavaParser
(boolean jreOnly) static com.github.javaparser.symbolsolver.resolution.typesolvers.ReflectionTypeSolver
makeDefaultTypeSolver
(boolean jreOnly) com.github.javaparser.ast.CompilationUnit
parseSourceCode
(com.github.javaparser.JavaParser parser, String sourceCode) protected String
toString
(com.github.javaparser.ast.Node compilationUnit) Methods inherited from class eu.solven.cleanthat.engine.java.refactorer.AAstRefactorer
applyTransformers, filterRules, filterRules, getMutators, getRawMutators, parse
-
Constructor Details
-
JavaRefactorer
public JavaRefactorer(eu.solven.cleanthat.language.IEngineProperties engineProperties, JavaRefactorerProperties properties)
-
-
Method Details
-
getAllIncluded
-
getId
-
doFormat
@Deprecated(since="Not used anymore. Kept for retrocompatiblity of users (e.g. Spotless)", forRemoval=true) public String doFormat(String dirtyCode, LineEnding eol) throws IOException Deprecated, for removal: This API element is subject to removal in a future version.- Throws:
IOException
-
doFormat
- Throws:
IOException
-
parseSourceCode
public com.github.javaparser.ast.CompilationUnit parseSourceCode(com.github.javaparser.JavaParser parser, String sourceCode) - Specified by:
parseSourceCode
in classAAstRefactorer<com.github.javaparser.ast.Node,
com.github.javaparser.JavaParser, com.github.javaparser.ast.Node, IJavaparserMutator>
-
makeAstParser
protected com.github.javaparser.JavaParser makeAstParser()- Specified by:
makeAstParser
in classAAstRefactorer<com.github.javaparser.ast.Node,
com.github.javaparser.JavaParser, com.github.javaparser.ast.Node, IJavaparserMutator>
-
fixJavaparserUnexpectedChanges
protected String fixJavaparserUnexpectedChanges(String dirtyCode, String cleanCode) throws IOException - Throws:
IOException
-
computeFixedDelta
-
assertPatchIsValid
-
toString
- Specified by:
toString
in classAAstRefactorer<com.github.javaparser.ast.Node,
com.github.javaparser.JavaParser, com.github.javaparser.ast.Node, IJavaparserMutator>
-
makeDefaultTypeSolver
public static com.github.javaparser.symbolsolver.resolution.typesolvers.ReflectionTypeSolver makeDefaultTypeSolver(boolean jreOnly) -
makeDefaultJavaParser
public static com.github.javaparser.JavaParser makeDefaultJavaParser(boolean jreOnly)
-