All Downloads are FREE. Search and download functionalities are using the official Maven repository.

resources.report.rules.pmd.MisplacedNullCheck.html Maven / Gradle / Ivy

Go to download

Sanity4J was created to simplify running multiple static code analysis tools on the Java projects. It provides a single entry point to run all the selected tools and produce a consolidated report, which presents all findings in an easily accessible manner.

The newest version!


MisplacedNullCheck


MisplacedNullCheck

The null check here is misplaced. if the variable is null you'll get a NullPointerException. Either the check is useless (the variable will never be "null") or it's incorrect.

This rule is defined by the following XPath expression:

    
//Expression
    /*[self::ConditionalOrExpression or self::ConditionalAndExpression]
     /descendant::PrimaryExpression/PrimaryPrefix
      /Name[starts-with(@Image,
      concat(ancestor::PrimaryExpression/following-sibling::EqualityExpression
       [./PrimaryExpression/PrimaryPrefix/Literal/NullLiteral]
     /PrimaryExpression/PrimaryPrefix
      /Name[count(../../PrimarySuffix)=0]/@Image,"."))
    ]
    
        

Example:

                
    
public class Foo {
 void bar() {
  if (a.equals(baz) && a != null) {}
 }
}
    
      
            

Example:

                
public class Foo {
 void bar() {
  if (a.equals(baz) || a == null) {}
 }
}
   
            




© 2015 - 2024 Weber Informatics LLC | Privacy Policy