Package com.qulice.pmd.rules
Class UseStringIsEmptyRule
java.lang.Object
net.sourceforge.pmd.properties.AbstractPropertySource
net.sourceforge.pmd.lang.rule.AbstractRule
net.sourceforge.pmd.lang.java.rule.AbstractJavaRule
net.sourceforge.pmd.lang.java.rule.AbstractInefficientZeroCheck
com.qulice.pmd.rules.UseStringIsEmptyRule
- All Implemented Interfaces:
net.sourceforge.pmd.lang.java.ast.JavaParserVisitor
,net.sourceforge.pmd.lang.rule.ImmutableLanguage
,net.sourceforge.pmd.properties.PropertySource
,net.sourceforge.pmd.Rule
public final class UseStringIsEmptyRule
extends net.sourceforge.pmd.lang.java.rule.AbstractInefficientZeroCheck
Rule to prohibit use of String.length() when checking for empty string.
String.isEmpty() should be used instead.
- Since:
- 0.18
-
Field Summary
Fields inherited from class net.sourceforge.pmd.properties.AbstractPropertySource
propertyDescriptors, propertyValuesByDescriptor
Fields inherited from interface net.sourceforge.pmd.Rule
VIOLATION_SUPPRESS_REGEX_DESCRIPTOR, VIOLATION_SUPPRESS_XPATH_DESCRIPTOR
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionboolean
appliesToClassName
(String name) boolean
isTargetMethod
(net.sourceforge.pmd.lang.java.symboltable.JavaNameOccurrence occ) Methods inherited from class net.sourceforge.pmd.lang.java.rule.AbstractInefficientZeroCheck
checkNodeAndReport
Methods inherited from class net.sourceforge.pmd.lang.java.rule.AbstractJavaRule
apply, getDeclaringType, importsPackage, isQualifiedName, isSuppressed, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visitAll
Methods inherited from class net.sourceforge.pmd.lang.rule.AbstractRule
addExample, addRuleChainVisit, addRuleChainVisit, addViolation, addViolation, addViolation, addViolationWithMessage, addViolationWithMessage, addViolationWithMessage, asCtx, deepCopy, deepCopyValuesTo, end, equals, getDescription, getExamples, getExternalInfoUrl, getLanguage, getMaximumLanguageVersion, getMessage, getMinimumLanguageVersion, getName, getParserOptions, getPriority, getPropertySourceType, getRuleChainVisits, getRuleClass, getRuleSetName, getSince, hashCode, isDeprecated, isDfa, isMultifile, isRuleChain, isTypeResolution, setDeprecated, setDescription, setDfa, setExternalInfoUrl, setLanguage, setMaximumLanguageVersion, setMessage, setMinimumLanguageVersion, setMultifile, setName, setPriority, setRuleClass, setRuleSetName, setSince, setTypeResolution, setUsesDFA, setUsesMultifile, setUsesTypeResolution, start, usesDFA, usesMultifile, usesRuleChain, usesTypeResolution
Methods inherited from class net.sourceforge.pmd.properties.AbstractPropertySource
copyPropertyDescriptors, copyPropertyValues, definePropertyDescriptor, dysfunctionReason, getOverriddenPropertiesByPropertyDescriptor, getOverriddenPropertyDescriptors, getPropertiesByPropertyDescriptor, getProperty, getPropertyDescriptor, getPropertyDescriptors, hasDescriptor, ignoredProperties, isPropertyOverridden, setProperty, setProperty, useDefaultValueFor, usesDefaultValues
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface net.sourceforge.pmd.properties.PropertySource
definePropertyDescriptor, dysfunctionReason, getOverriddenPropertiesByPropertyDescriptor, getOverriddenPropertyDescriptors, getPropertiesByPropertyDescriptor, getProperty, getPropertyDescriptor, getPropertyDescriptors, hasDescriptor, ignoredProperties, isPropertyOverridden, setProperty, setProperty, useDefaultValueFor, usesDefaultValues
-
Constructor Details
-
UseStringIsEmptyRule
public UseStringIsEmptyRule()
-
-
Method Details
-
appliesToClassName
- Specified by:
appliesToClassName
in classnet.sourceforge.pmd.lang.java.rule.AbstractInefficientZeroCheck
-
getComparisonTargets
- Overrides:
getComparisonTargets
in classnet.sourceforge.pmd.lang.java.rule.AbstractInefficientZeroCheck
-
isTargetMethod
public boolean isTargetMethod(net.sourceforge.pmd.lang.java.symboltable.JavaNameOccurrence occ) - Specified by:
isTargetMethod
in classnet.sourceforge.pmd.lang.java.rule.AbstractInefficientZeroCheck
-
visit
public Object visit(net.sourceforge.pmd.lang.java.ast.ASTVariableDeclaratorId variable, Object data) - Specified by:
visit
in interfacenet.sourceforge.pmd.lang.java.ast.JavaParserVisitor
- Overrides:
visit
in classnet.sourceforge.pmd.lang.java.rule.AbstractInefficientZeroCheck
-
visit
public Object visit(net.sourceforge.pmd.lang.java.ast.ASTMethodDeclaration declaration, Object data) - Specified by:
visit
in interfacenet.sourceforge.pmd.lang.java.ast.JavaParserVisitor
- Overrides:
visit
in classnet.sourceforge.pmd.lang.java.rule.AbstractJavaRule
-