protected bool Equals(AssetMethodUsages other)
 {
     return(OwnerName == other.OwnerName &&
            MethodName == other.MethodName && Mode == other.Mode && Type == other.Type &&
            Equals(TargetScriptReference, other.TargetScriptReference) && TextRangeOwnerPsiPersistentIndex.Equals(other.TextRangeOwnerPsiPersistentIndex) &&
            TextRangeOwner == other.TextRangeOwner);
 }
 public override int GetHashCode()
 {
     unchecked
     {
         var hashCode = OwnerName.GetHashCode();
         hashCode = (hashCode * 397) ^ MethodName.GetHashCode();
         hashCode = (hashCode * 397) ^ (int)Mode;
         hashCode = (hashCode * 397) ^ (Type != null ? Type.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ TargetScriptReference.GetHashCode();
         hashCode = (hashCode * 397) ^ TextRangeOwnerPsiPersistentIndex.GetHashCode();
         hashCode = (hashCode * 397) ^ TextRangeOwner.GetHashCode();
         return(hashCode);
     }
 }