Пример #1
0
        /// <summary>Serves as a hash function for a particular type.</summary>
        /// <returns>A hash code for the current Object.</returns>
        public override int GetHashCode()
        {
            string fullName = FullName;
            string name     = Name;

            unchecked
            {
                int hash = Primes[_random];

                if (!Utils.IsNullOrWhiteSpace(fullName))
                {
                    hash = hash * Primes[1] + fullName.GetHashCode();
                }

                if (!Utils.IsNullOrWhiteSpace(name))
                {
                    hash = hash * Primes[1] + name.GetHashCode();
                }

                hash = hash * Primes[1] + Attributes.GetHashCode();
                hash = hash * Primes[1] + CreationTimeUtc.GetHashCode();
                hash = hash * Primes[1] + LastWriteTimeUtc.GetHashCode();

                return(hash);
            }
        }
Пример #2
0
 public override int GetHashCode()
 {
     unchecked
     {
         var hashCode = (BaseMap != null ? BaseMap.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ (Name?.GetHashCode() ?? 0);
         hashCode = (hashCode * 397) ^ (Description?.GetHashCode() ?? 0);
         hashCode = (hashCode * 397) ^ (int)AccessControl;
         hashCode = (hashCode * 397) ^ (Links?.GetHashCode() ?? 0);
         hashCode = (hashCode * 397) ^ (CreationTimeUtc != null ? CreationTimeUtc.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ (LastModifiedTimeUtc != null ? LastModifiedTimeUtc.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ Banned.GetHashCode();
         hashCode = (hashCode * 397) ^ (Identity != null ? Identity.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ (Stats != null ? Stats.GetHashCode() : 0);
         return(hashCode);
     }
 }
Пример #3
0
 public override int GetHashCode()
 {
     unchecked
     {
         var hashCode = (int)AccessControl;
         hashCode = (hashCode * 397) ^ Banned.GetHashCode();
         hashCode = (hashCode * 397) ^ (BaseGame != null ? BaseGame.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ BaseGameEngineType;
         hashCode = (hashCode * 397) ^ (CreationTimeUtc != null ? CreationTimeUtc.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ (Description?.GetHashCode() ?? 0);
         hashCode = (hashCode * 397) ^ GameType;
         hashCode = (hashCode * 397) ^ (Identity != null ? Identity.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ (LastModifiedTimeUtc != null ? LastModifiedTimeUtc.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ (Links?.GetHashCode() ?? 0);
         hashCode = (hashCode * 397) ^ MatchDurationInSeconds;
         hashCode = (hashCode * 397) ^ (Name?.GetHashCode() ?? 0);
         hashCode = (hashCode * 397) ^ NumberOfLives;
         hashCode = (hashCode * 397) ^ NumberOfRounds;
         hashCode = (hashCode * 397) ^ ScoreToWin;
         hashCode = (hashCode * 397) ^ (Stats != null ? Stats.GetHashCode() : 0);
         return(hashCode);
     }
 }