private boolean localEquals(Abstraction other){
  if (sourceContext == null) {
    if (other.sourceContext != null)     return false;
  }
 else   if (!sourceContext.equals(other.sourceContext))   return false;
  if (activationUnit == null) {
    if (other.activationUnit != null)     return false;
  }
 else   if (!activationUnit.equals(other.activationUnit))   return false;
  if (this.exceptionThrown != other.exceptionThrown)   return false;
  if (postdominators == null) {
    if (other.postdominators != null)     return false;
  }
 else   if (!postdominators.equals(other.postdominators))   return false;
  if (this.dependsOnCutAP != other.dependsOnCutAP)   return false;
  if (this.isImplicit != other.isImplicit)   return false;
  return true;
}

private boolean localEquals ( Abstraction other ) { if ( sourceContext == null ) { if ( other . sourceContext != null ) return false ; } else if ( ! sourceContext . equals ( other . sourceContext ) ) return false ; if ( activationUnit == null ) { if ( other . activationUnit != null ) return false ; } else if ( ! activationUnit . equals ( other . activationUnit ) ) return false ; if ( this . exceptionThrown != other . exceptionThrown ) return false ; if ( postdominators == null ) { if ( other . postdominators != null ) return false ; } else if ( ! postdominators . equals ( other . postdominators ) ) return false ; if ( this . dependsOnCutAP != other . dependsOnCutAP ) return false ; if ( this . isImplicit != other . isImplicit ) return false ; return true ; }
checks whether this object locally equals the given object , i . e . the both are equal modulo the access path
