This rule is defined by the following XPath expression:
//MethodDeclarator[ ( @Image = 'equals' and count(FormalParameters/*) = 1 and not (FormalParameters/FormalParameter/Type/ReferenceType/ClassOrInterfaceType [@Image = 'Object' or @Image = 'java.lang.Object']) ) or @Image='equal' and count(FormalParameters/*) = 1 and (FormalParameters/FormalParameter/Type/ReferenceType/ClassOrInterfaceType [@Image = 'Object' or @Image = 'java.lang.Object']) ]
Example:
public class Foo { public int equals(Object o) { // oops, this probably was supposed to be boolean equals } public boolean equals(String s) { // oops, this probably was supposed to be equals(Object) } }