Class AJavaparserMutator
java.lang.Object
eu.solven.cleanthat.engine.java.refactorer.AJavaparserMutator
- All Implemented Interfaces:
IJavaparserMutator
,IMutator
,IMutatorExternalReferences
,IWalkingMutator<com.github.javaparser.ast.Node,
com.github.javaparser.ast.Node>
- Direct Known Subclasses:
AJavaparserExprMutator
,AJavaparserStmtMutator
,ArraysDotStream
,ATodoJavaParserMutator
,AvoidInlineConditionals
,AvoidUncheckedExceptionsInSignatures
,ComparisonWithNaN
,CreateTempFilesUsingNio
,EmptyControlStatement
,EnumsWithoutEquals
,JUnit4ToJUnit5
,LambdaIsMethodReference
,LambdaReturnsSingleStatement
,LiteralsFirstInComparisons
,LocalVariableTypeInference
,ModifierOrder
,OptionalNotEmpty
,StreamAnyMatch
,StringToString
,UnnecessaryBoxing
,UnnecessaryFullyQualifiedName
,UnnecessaryImport
,UnnecessaryModifier
,UseDiamondOperator
,UseIndexOfChar
,UseIsEmptyOnCollections
,UseTextBlocks
,UseUnderscoresInNumericLiterals
public abstract class AJavaparserMutator
extends Object
implements IJavaparserMutator, IMutatorExternalReferences
Enables common behavior to JavaParser-based rules
- Author:
- Benoit Lacelle
-
Field Summary
Fields inherited from interface eu.solven.cleanthat.engine.java.refactorer.meta.IMutator
ID_NOOP, IS_PRODUCTION_READY
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected String
getSimpleName
(String qualifiedName) protected final com.github.javaparser.symbolsolver.javaparsermodel.JavaParserFacade
static int
Deprecated.protected boolean
isImportable
(com.github.javaparser.ast.CompilationUnit compilationUnit, String qualifiedName) protected boolean
isImported
(com.github.javaparser.ast.CompilationUnit compilationUnit, String methodRefPackage, String qualifiedName) static String
messageForIssueReporting
(IMutator mutator, com.github.javaparser.ast.Node node) protected void
onMethodName
(com.github.javaparser.ast.Node node, String methodName, OnMethodName consumer) protected Optional<com.github.javaparser.resolution.declarations.ResolvedDeclaration>
optResolved
(com.github.javaparser.ast.expr.Expression singleArgument) protected Optional<com.github.javaparser.resolution.types.ResolvedType>
optResolvedType
(com.github.javaparser.ast.expr.Expression expr) protected Optional<com.github.javaparser.resolution.types.ResolvedType>
optResolvedType
(com.github.javaparser.ast.type.Type type) protected boolean
processNotRecursively
(com.github.javaparser.ast.Node node) protected Optional<com.github.javaparser.ast.Node>
replaceNode
(com.github.javaparser.ast.Node node) protected boolean
scopeHasRequiredType
(Optional<com.github.javaparser.ast.expr.Expression> optScope, Class<?> requiredType) protected boolean
scopeHasRequiredType
(Optional<com.github.javaparser.ast.expr.Expression> optScope, String requiredType) boolean
tryReplace
(com.github.javaparser.ast.Node node, com.github.javaparser.ast.Node replacement) Optional<com.github.javaparser.ast.Node>
walkAst
(com.github.javaparser.ast.Node tree) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface eu.solven.cleanthat.engine.java.refactorer.meta.IMutator
getId, getIds, isDraft, isJreOnly, minimalJavaVersion
Methods inherited from interface eu.solven.cleanthat.engine.java.refactorer.meta.IMutatorExternalReferences
checkstyleUrl, getCheckstyleId, getCleanthatId, getPmdId, getPmdIds, getSeeUrls, getSonarId, jsparrowUrl, pmdUrl, sonarUrl
Methods inherited from interface eu.solven.cleanthat.engine.java.refactorer.meta.IWalkingMutator
walkAstHasChanged
-
Constructor Details
-
AJavaparserMutator
public AJavaparserMutator()
-
-
Method Details
-
getWarnCount
Deprecated. -
getThreadJavaParser
protected final com.github.javaparser.symbolsolver.javaparsermodel.JavaParserFacade getThreadJavaParser() -
walkAst
- Specified by:
walkAst
in interfaceIWalkingMutator<com.github.javaparser.ast.Node,
com.github.javaparser.ast.Node>
-
messageForIssueReporting
-
processNotRecursively
protected boolean processNotRecursively(com.github.javaparser.ast.Node node) -
tryReplace
public boolean tryReplace(com.github.javaparser.ast.Node node, com.github.javaparser.ast.Node replacement) -
replaceNode
-
optResolvedType
protected Optional<com.github.javaparser.resolution.types.ResolvedType> optResolvedType(com.github.javaparser.ast.expr.Expression expr) -
optResolvedType
protected Optional<com.github.javaparser.resolution.types.ResolvedType> optResolvedType(com.github.javaparser.ast.type.Type type) -
optResolved
protected Optional<com.github.javaparser.resolution.declarations.ResolvedDeclaration> optResolved(com.github.javaparser.ast.expr.Expression singleArgument) -
onMethodName
protected void onMethodName(com.github.javaparser.ast.Node node, String methodName, OnMethodName consumer) -
scopeHasRequiredType
-
scopeHasRequiredType
-
isImported
protected boolean isImported(com.github.javaparser.ast.CompilationUnit compilationUnit, String methodRefPackage, String qualifiedName) - Parameters:
compilationUnit
-methodRefPackage
-qualifiedName
-- Returns:
- true if the given qualifiedName (which may be a nested Class) in given package is already imported in given CompilationUnit
-
isImportable
protected boolean isImportable(com.github.javaparser.ast.CompilationUnit compilationUnit, String qualifiedName) - Parameters:
compilationUnit
-qualifiedName
-- Returns:
- true if the given qualifiedName (which may be a nested Class) in given package can be imported in given CompilationUnit without conflicting existing imports
-
getSimpleName
-