public override int GetHashCode() { unchecked { var hashCode = (FilePath != null ? FilePath.GetHashCode() : 0); hashCode = (hashCode * 397) ^ IsExecutable.GetHashCode(); hashCode = (hashCode * 397) ^ IsZipped.GetHashCode(); hashCode = (hashCode * 397) ^ (BlobKey != null ? HashCodeHelper.GetHashCode(BlobKey) : 0); return(hashCode); } }
public override int GetHashCode() { unchecked // Overflow is fine, just wrap { int hash = (Key != null) ? Key.GetHashCode() : 0; // Suitable nullity checks etc, of course :) hash = (DefinitionKey != null) ? hash * 17 + DefinitionKey.GetHashCode() : hash; hash = (Id != null) ? hash * 17 + Id.GetHashCode() : hash; hash = (Name != null) ? hash * 17 + Name.GetHashCode() : hash; hash = hash * 17 + IsExecutable.GetHashCode(); hash = hash * 17 + IsClosed.GetHashCode(); return(hash); } }