public override int GetHashCode()
        {
            int hash = 1;

            if (Side != 0)
            {
                hash ^= Side.GetHashCode();
            }
            if (Price != 0D)
            {
                hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(Price);
            }
            if (Size != 0D)
            {
                hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(Size);
            }
            if (Commission != 0D)
            {
                hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(Commission);
            }
            if (SwapPointAccumulate != 0D)
            {
                hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(SwapPointAccumulate);
            }
            if (RequireCollateral != 0D)
            {
                hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(RequireCollateral);
            }
            if (openDate_ != null)
            {
                hash ^= OpenDate.GetHashCode();
            }
            if (Leverage != 0D)
            {
                hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(Leverage);
            }
            if (Pnl != 0D)
            {
                hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(Pnl);
            }
            if (Sfd != 0D)
            {
                hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(Sfd);
            }
            if (_unknownFields != null)
            {
                hash ^= _unknownFields.GetHashCode();
            }
            return(hash);
        }
예제 #2
0
        /// <summary>
        ///     Gets the hash code
        /// </summary>
        /// <returns>Hash code</returns>
        public override int GetHashCode()
        {
            // credit: http://stackoverflow.com/a/263416/677735
            unchecked // Overflow is fine, just wrap
            {
                var hash = 41;
                // Suitable nullity checks etc, of course :)

                if (Venue != null)
                {
                    hash = hash * 59 + Venue.GetHashCode();
                }

                if (SettledTime != null)
                {
                    hash = hash * 59 + SettledTime.GetHashCode();
                }

                if (Timezone != null)
                {
                    hash = hash * 59 + Timezone.GetHashCode();
                }

                if (EachWayDivisor != null)
                {
                    hash = hash * 59 + EachWayDivisor.GetHashCode();
                }

                if (Regulators != null)
                {
                    hash = hash * 59 + Regulators.GetHashCode();
                }

                if (MarketType != null)
                {
                    hash = hash * 59 + MarketType.GetHashCode();
                }

                if (MarketBaseRate != null)
                {
                    hash = hash * 59 + MarketBaseRate.GetHashCode();
                }

                if (NumberOfWinners != null)
                {
                    hash = hash * 59 + NumberOfWinners.GetHashCode();
                }

                if (CountryCode != null)
                {
                    hash = hash * 59 + CountryCode.GetHashCode();
                }

                if (InPlay != null)
                {
                    hash = hash * 59 + InPlay.GetHashCode();
                }

                if (BetDelay != null)
                {
                    hash = hash * 59 + BetDelay.GetHashCode();
                }

                if (BspMarket != null)
                {
                    hash = hash * 59 + BspMarket.GetHashCode();
                }

                if (BettingType != null)
                {
                    hash = hash * 59 + BettingType.GetHashCode();
                }

                if (NumberOfActiveRunners != null)
                {
                    hash = hash * 59 + NumberOfActiveRunners.GetHashCode();
                }

                if (EventId != null)
                {
                    hash = hash * 59 + EventId.GetHashCode();
                }

                if (CrossMatching != null)
                {
                    hash = hash * 59 + CrossMatching.GetHashCode();
                }

                if (RunnersVoidable != null)
                {
                    hash = hash * 59 + RunnersVoidable.GetHashCode();
                }

                if (TurnInPlayEnabled != null)
                {
                    hash = hash * 59 + TurnInPlayEnabled.GetHashCode();
                }

                if (SuspendTime != null)
                {
                    hash = hash * 59 + SuspendTime.GetHashCode();
                }

                if (DiscountAllowed != null)
                {
                    hash = hash * 59 + DiscountAllowed.GetHashCode();
                }

                if (PersistenceEnabled != null)
                {
                    hash = hash * 59 + PersistenceEnabled.GetHashCode();
                }

                if (Runners != null)
                {
                    hash = hash * 59 + Runners.GetHashCode();
                }

                if (Version != null)
                {
                    hash = hash * 59 + Version.GetHashCode();
                }

                if (EventTypeId != null)
                {
                    hash = hash * 59 + EventTypeId.GetHashCode();
                }

                if (Complete != null)
                {
                    hash = hash * 59 + Complete.GetHashCode();
                }

                if (OpenDate != null)
                {
                    hash = hash * 59 + OpenDate.GetHashCode();
                }

                if (MarketTime != null)
                {
                    hash = hash * 59 + MarketTime.GetHashCode();
                }

                if (BspReconciled != null)
                {
                    hash = hash * 59 + BspReconciled.GetHashCode();
                }

                if (Status != null)
                {
                    hash = hash * 59 + Status.GetHashCode();
                }

                return(hash);
            }
        }
예제 #3
0
        public override int GetHashCode()
        {
            int hash = 1;

            if (InstrumentId.Length != 0)
            {
                hash ^= InstrumentId.GetHashCode();
            }
            if (ExchangeId.Length != 0)
            {
                hash ^= ExchangeId.GetHashCode();
            }
            if (InstrumentName.Length != 0)
            {
                hash ^= InstrumentName.GetHashCode();
            }
            if (ProductId.Length != 0)
            {
                hash ^= ProductId.GetHashCode();
            }
            if (ProductClass != 0)
            {
                hash ^= ProductClass.GetHashCode();
            }
            if (DeliveryYear != 0)
            {
                hash ^= DeliveryYear.GetHashCode();
            }
            if (DeliveryMonth != 0)
            {
                hash ^= DeliveryMonth.GetHashCode();
            }
            if (MaxMarketOrderVolume != 0)
            {
                hash ^= MaxMarketOrderVolume.GetHashCode();
            }
            if (MinMarketOrderVolume != 0)
            {
                hash ^= MinMarketOrderVolume.GetHashCode();
            }
            if (MaxLimitOrderVolume != 0)
            {
                hash ^= MaxLimitOrderVolume.GetHashCode();
            }
            if (MinLimitOrderVolume != 0)
            {
                hash ^= MinLimitOrderVolume.GetHashCode();
            }
            if (VolumeMultiple != 0)
            {
                hash ^= VolumeMultiple.GetHashCode();
            }
            if (PriceTick != 0D)
            {
                hash ^= pbc::ProtobufEqualityComparers.BitwiseDoubleEqualityComparer.GetHashCode(PriceTick);
            }
            if (CreateDate.Length != 0)
            {
                hash ^= CreateDate.GetHashCode();
            }
            if (OpenDate.Length != 0)
            {
                hash ^= OpenDate.GetHashCode();
            }
            if (ExpireDate.Length != 0)
            {
                hash ^= ExpireDate.GetHashCode();
            }
            if (StartDelivDate.Length != 0)
            {
                hash ^= StartDelivDate.GetHashCode();
            }
            if (EndDelivDate.Length != 0)
            {
                hash ^= EndDelivDate.GetHashCode();
            }
            if (IsTrading != false)
            {
                hash ^= IsTrading.GetHashCode();
            }
            if (UnderlyingMultiple != 0)
            {
                hash ^= UnderlyingMultiple.GetHashCode();
            }
            if (_unknownFields != null)
            {
                hash ^= _unknownFields.GetHashCode();
            }
            return(hash);
        }