/// <summary> /// Gets the hash code /// </summary> /// <returns>Hash code</returns> public override int GetHashCode() { unchecked // Overflow is fine, just wrap { var hashCode = 41; // Suitable nullity checks etc, of course :) if (UnderlyingIndex != null) { hashCode = hashCode * 59 + UnderlyingIndex.GetHashCode(); } if (Volume != null) { hashCode = hashCode * 59 + Volume.GetHashCode(); } if (VolumeUsd != null) { hashCode = hashCode * 59 + VolumeUsd.GetHashCode(); } if (UnderlyingPrice != null) { hashCode = hashCode * 59 + UnderlyingPrice.GetHashCode(); } if (BidPrice != null) { hashCode = hashCode * 59 + BidPrice.GetHashCode(); } if (OpenInterest != null) { hashCode = hashCode * 59 + OpenInterest.GetHashCode(); } if (QuoteCurrency != null) { hashCode = hashCode * 59 + QuoteCurrency.GetHashCode(); } if (High != null) { hashCode = hashCode * 59 + High.GetHashCode(); } if (EstimatedDeliveryPrice != null) { hashCode = hashCode * 59 + EstimatedDeliveryPrice.GetHashCode(); } if (Last != null) { hashCode = hashCode * 59 + Last.GetHashCode(); } if (MidPrice != null) { hashCode = hashCode * 59 + MidPrice.GetHashCode(); } if (InterestRate != null) { hashCode = hashCode * 59 + InterestRate.GetHashCode(); } if (Funding8h != null) { hashCode = hashCode * 59 + Funding8h.GetHashCode(); } if (MarkPrice != null) { hashCode = hashCode * 59 + MarkPrice.GetHashCode(); } if (AskPrice != null) { hashCode = hashCode * 59 + AskPrice.GetHashCode(); } if (InstrumentName != null) { hashCode = hashCode * 59 + InstrumentName.GetHashCode(); } if (Low != null) { hashCode = hashCode * 59 + Low.GetHashCode(); } if (BaseCurrency != null) { hashCode = hashCode * 59 + BaseCurrency.GetHashCode(); } if (CreationTimestamp != null) { hashCode = hashCode * 59 + CreationTimestamp.GetHashCode(); } if (CurrentFunding != null) { hashCode = hashCode * 59 + CurrentFunding.GetHashCode(); } return(hashCode); } }
/// <summary> /// Returns true if BookSummary instances are equal /// </summary> /// <param name="other">Instance of BookSummary to be compared</param> /// <returns>Boolean</returns> public bool Equals(BookSummary other) { if (other is null) { return(false); } if (ReferenceEquals(this, other)) { return(true); } return (( UnderlyingIndex == other.UnderlyingIndex || UnderlyingIndex != null && UnderlyingIndex.Equals(other.UnderlyingIndex) ) && ( Volume == other.Volume || Volume != null && Volume.Equals(other.Volume) ) && ( VolumeUsd == other.VolumeUsd || VolumeUsd != null && VolumeUsd.Equals(other.VolumeUsd) ) && ( UnderlyingPrice == other.UnderlyingPrice || UnderlyingPrice != null && UnderlyingPrice.Equals(other.UnderlyingPrice) ) && ( BidPrice == other.BidPrice || BidPrice != null && BidPrice.Equals(other.BidPrice) ) && ( OpenInterest == other.OpenInterest || OpenInterest != null && OpenInterest.Equals(other.OpenInterest) ) && ( QuoteCurrency == other.QuoteCurrency || QuoteCurrency != null && QuoteCurrency.Equals(other.QuoteCurrency) ) && ( High == other.High || High != null && High.Equals(other.High) ) && ( EstimatedDeliveryPrice == other.EstimatedDeliveryPrice || EstimatedDeliveryPrice != null && EstimatedDeliveryPrice.Equals(other.EstimatedDeliveryPrice) ) && ( Last == other.Last || Last != null && Last.Equals(other.Last) ) && ( MidPrice == other.MidPrice || MidPrice != null && MidPrice.Equals(other.MidPrice) ) && ( InterestRate == other.InterestRate || InterestRate != null && InterestRate.Equals(other.InterestRate) ) && ( Funding8h == other.Funding8h || Funding8h != null && Funding8h.Equals(other.Funding8h) ) && ( MarkPrice == other.MarkPrice || MarkPrice != null && MarkPrice.Equals(other.MarkPrice) ) && ( AskPrice == other.AskPrice || AskPrice != null && AskPrice.Equals(other.AskPrice) ) && ( InstrumentName == other.InstrumentName || InstrumentName != null && InstrumentName.Equals(other.InstrumentName) ) && ( Low == other.Low || Low != null && Low.Equals(other.Low) ) && ( BaseCurrency == other.BaseCurrency || BaseCurrency != null && BaseCurrency.Equals(other.BaseCurrency) ) && ( CreationTimestamp == other.CreationTimestamp || CreationTimestamp != null && CreationTimestamp.Equals(other.CreationTimestamp) ) && ( CurrentFunding == other.CurrentFunding || CurrentFunding != null && CurrentFunding.Equals(other.CurrentFunding) )); }