Package net.sourceforge.pmd.rules

Class Summary
AccessorClassGenerationRule 1.
AccessorClassGenerationRule.AllocData  
AtLeastOneConstructorRule  
AvoidDeeplyNestedIfStmtsRule  
AvoidDuplicateLiteralsRule  
AvoidDuplicateLiteralsRule.ExceptionParser  
AvoidReassigningParametersRule  
BeanMembersShouldSerializeRule  
ClassNamingConventionsRule  
CloseConnectionRule Makes sure you close your database connections.
ConstructorCallsOverridableMethodRule Searches through all methods and constructors called from constructors.
ConstructorCallsOverridableMethodRule.EvalPackage 1 package per class.
ConstructorCallsOverridableMethodRule.MethodInvocation 2: method(); ASTPrimaryPrefix ASTName image = "method" ASTPrimarySuffix *ASTArguments 3: a.method(); ASTPrimaryPrefix -> ASTName image = "a.method" ??? ASTPrimarySuffix -> () ASTArguments 3: this.method(); ASTPrimaryPrefix -> this image=null ASTPrimarySuffix -> method ASTPrimarySuffix -> () ASTArguments super.method(); ASTPrimaryPrefix -> image = "method" ASTPrimarySuffix -> image = null ASTArguments -> super.a.method(); ASTPrimaryPrefix -> image = "a" ASTPrimarySuffix -> image = "method" ASTPrimarySuffix -> image = null ASTArguments -> 4: this.a.method(); ASTPrimaryPrefix -> image = null ASTPrimarySuffix -> image = "a" ASTPrimarySuffix -> image = "method" ASTPrimarySuffix -> ASTArguments 4: ClassName.this.method(); ASTPrimaryPrefix ASTName image = "ClassName" ASTPrimarySuffix -> this image=null ASTPrimarySuffix -> image = "method" ASTPrimarySuffix -> () ASTArguments 5: ClassName.this.a.method(); ASTPrimaryPrefix ASTName image = "ClassName" ASTPrimarySuffix -> this image=null ASTPrimarySuffix -> image="a" ASTPrimarySuffix -> image="method" ASTPrimarySuffix -> () ASTArguments 5: Package.ClassName.this.method(); ASTPrimaryPrefix ASTName image ="Package.ClassName" ASTPrimarySuffix -> this image=null ASTPrimarySuffix -> image="method" ASTPrimarySuffix -> () ASTArguments 6: Package.ClassName.this.a.method(); ASTPrimaryPrefix ASTName image ="Package.ClassName" ASTPrimarySuffix -> this image=null ASTPrimarySuffix -> a ASTPrimarySuffix -> method ASTPrimarySuffix -> () ASTArguments 5: OuterClass.InnerClass.this.method(); ASTPrimaryPrefix ASTName image = "OuterClass.InnerClass" ASTPrimarySuffix -> this image=null ASTPrimarySuffix -> method ASTPrimarySuffix -> () ASTArguments 6: OuterClass.InnerClass.this.a.method(); ASTPrimaryPrefix ASTName image = "OuterClass.InnerClass" ASTPrimarySuffix -> this image=null ASTPrimarySuffix -> a ASTPrimarySuffix -> method ASTPrimarySuffix -> () ASTArguments OuterClass.InnerClass.this.a.method().method().method(); ASTPrimaryPrefix ASTName image = "OuterClass.InnerClass" ASTPrimarySuffix -> this image=null ASTPrimarySuffix -> a image='a' ASTPrimarySuffix -> method image='method' ASTPrimarySuffix -> () image=null ASTArguments ASTPrimarySuffix -> method image='method' ASTPrimarySuffix -> () image=null ASTArguments ASTPrimarySuffix -> method image='method' ASTPrimarySuffix -> () image=null ASTArguments 3..n: Class.InnerClass[0].InnerClass[n].this.method(); ASTPrimaryPrefix ASTName image = "Class[0]..InnerClass[n]" ASTPrimarySuffix -> image=null ASTPrimarySuffix -> method ASTPrimarySuffix -> () ASTArguments super.aMethod(); ASTPrimaryPrefix -> aMethod ASTPrimarySuffix -> () Evaluate right to left
ConstructorCallsOverridableMethodRule.NullEvalPackage  
CouplingBetweenObjectsRule CouplingBetweenObjectsRule attempts to capture all unique Class attributes, local variables, and return types to determine how many objects a class is coupled to.
CyclomaticComplexityRule  
DoubleCheckedLockingRule void method() { if(x == null) { synchronize(this){ if(x == null) { x = new | method(); } } } 1.
DuplicateImportsRule  
ExcessiveImportsRule ExcessiveImportsRule attempts to count all unique imports a class contains.
ExcessivePublicCountRule  
IdempotentOperationsRule  
ImportFromSamePackageRule  
ImportWrapper  
MethodNamingConventionsRule  
SimplifyBooleanReturnsRule  
StringConcatenationRule  
StringToStringRule  
SuspiciousOctalEscapeRule  
SymbolTableTestRule  
UnnecessaryConversionTemporaryRule  
UnusedFormalParameterRule  
UnusedImportsRule  
UnusedLocalVariableRule  
UnusedPrivateFieldRule  
UnusedPrivateMethodRule  
VariableNamingConventionsRule  
XPathRule