Exemple #1
0
        public static int GetHashCode(this List <Vertex> vertices)
        {
            var orderedVertices = new List <Vertex>(vertices);

            orderedVertices.Reorder();
            return(HashCodeHelper.CombineHashCodes(orderedVertices.Map(c => c.GetHashCode())));
        }
Exemple #2
0
        public override int GetHashCode()
        {
            int hash = Origin.GetHashCode();

            hash = HashCodeHelper.CombineHashCodes(hash, Direction.GetHashCode());
            hash = HashCodeHelper.CombineHashCodes(hash, InvDirection.GetHashCode());
            hash = HashCodeHelper.CombineHashCodes(hash, Sign[0].GetHashCode());
            hash = HashCodeHelper.CombineHashCodes(hash, Sign[1].GetHashCode());
            return(hash);
        }
Exemple #3
0
        public override int GetHashCode()
        {
            var corners = new List <Vertex>()
            {
                A, B
            };

            corners.Reorder();
            return(HashCodeHelper.CombineHashCodes(corners[0], corners[1]));
        }
        public void CombineHashCodes_ShouldThrowExceptionForNull()
        {
            // Arrange
            int    hash          = 0;
            Action combineAction = () => hash = HashCodeHelper.CombineHashCodes(null);

            // Act & Assert
            combineAction.Should().Throw <ArgumentException>("objects list mustn't be null");
            Console.WriteLine(hash);
        }
Exemple #5
0
        public override int GetHashCode()
        {
            int hashCode = ParticleTemplateType.GetHashCode();

            hashCode = HashCodeHelper.CombineHashCodes(hashCode, ParticleOffset.GetHashCode());
            hashCode = HashCodeHelper.CombineHashCodes(hashCode, ParticleEmitterType.GetHashCode());
            hashCode = HashCodeHelper.CombineHashCodes(hashCode, GameObject?.GetHashCode() ?? 0);

            return(hashCode);
        }
Exemple #6
0
        public override int GetHashCode()
        {
            int hashCode = TimeToLive.GetHashCode();

            hashCode = HashCodeHelper.CombineHashCodes(hashCode, ParticleOffset.GetHashCode());
            hashCode = HashCodeHelper.CombineHashCodes(hashCode, InitialVelocityFactor.GetHashCode());
            hashCode = HashCodeHelper.CombineHashCodes(hashCode, NumberOfParticles.GetHashCode());
            hashCode = HashCodeHelper.CombineHashCodes(hashCode, GameObject?.GetHashCode() ?? 0);

            return(hashCode);
        }
        public void CombineHashCodes_ShouldRunWithoutException()
        {
            // Arrange
            var objects = new List <object> {
                3, "apple"
            };

            // Act
            var hash = HashCodeHelper.CombineHashCodes(objects);

            Console.WriteLine(hash);
        }
        public void CombineHashCodes_ShouldReturnSameValueForSameObject()
        {
            // Arrange
            var objects = new List <object> {
                "apple"
            };

            // Act
            var hash1 = HashCodeHelper.CombineHashCodes(objects);
            var hash2 = HashCodeHelper.CombineHashCodes(objects);

            // Assert
            Console.WriteLine(hash1);
            Console.WriteLine(hash2);
            hash2.Should().Be(hash1);
        }
Exemple #9
0
        /// <summary>
        /// <see cref="M:System.Object.GetHashCode"/>
        /// </summary>
        /// <returns><see cref="M:System.Object.GetHashCode"/></returns>
        public override int GetHashCode()
        {
            //如果GetEqualityComponents有元素则只计算这些元素的hash值
            //否则计算全部属性值
            if (this.EqualityComponents().Any())
            {
                return(HashCodeHelper.CombineHashCodes(this.EqualityComponents()));
            }

            int  hashCode         = 31;
            bool changeMultiplier = false;
            int  index            = 1;

            //compare all public properties
            PropertyInfo[] publicProperties = this.GetType().GetProperties();


            if ((object)publicProperties != null
                &&
                publicProperties.Any())
            {
                foreach (var item in publicProperties)
                {
                    object value = item.GetValue(this, null);

                    if ((object)value != null)
                    {
                        hashCode = hashCode * ((changeMultiplier) ? 59 : 114) + value.GetHashCode();

                        changeMultiplier = !changeMultiplier;
                    }
                    else
                    {
                        hashCode = hashCode ^ (index * 13);//only for support {"a",null,null,"a"} <> {null,"a","a",null}
                    }
                }
            }

            return(hashCode);
        }
 public override int GetHashCode()
 {
     return(HashCodeHelper.CombineHashCodes(8637, TableVariable, IndexExpression));
 }
 public override int GetHashCode()
 {
     return(HashCodeHelper.CombineHashCodes(Center.GetHashCode(), Radius.GetHashCode()));
 }
Exemple #12
0
 public override int GetHashCode()
 {
     return(HashCodeHelper.CombineHashCodes(12347, Condition, Body));
 }
Exemple #13
0
 public override int GetHashCode()
 {
     return(HashCodeHelper.CombineHashCodes(Math.Round(Position.x, HASH_CODE_PRECISION), Math.Round(Position.y, HASH_CODE_PRECISION)));
 }
 public ValueObject()
 {
     this._hashCodeCache = new Lazy <int>(() => HashCodeHelper.CombineHashCodes(this.GetValueIngredients()), LazyThreadSafetyMode.PublicationOnly);
 }
 public override int GetHashCode() => HashCodeHelper.CombineHashCodes(PageNumber, Pager.GetHashCode());
 public override int GetHashCode()
 {
     return HashCodeHelper.CombineHashCodes(Table.GetHashCode(), Parameters);
 }
 public override int GetHashCode()
 {
     return(HashCodeHelper.CombineHashCodes(FunctionName.GetHashCode(), Parameters));
 }
Exemple #18
0
 public int GetHashCode(ISearchCriteria obj)
 {
     return(HashCodeHelper.CombineHashCodes(new object[] { obj.CountryCode(), obj.StateCode(), obj.City(), obj.Zip() }));
 }
 public override int GetHashCode()
 {
     return(HashCodeHelper.CombineHashCodes(new object[] { IsDynamic, MessageName, MessageType, MessageHandlerType }));
 }
Exemple #20
0
 public override int GetHashCode()
 {
     return(HashCodeHelper.CombineHashCodes(Vertices));
 }
Exemple #21
0
 public override int GetHashCode()
 {
     return(HashCodeHelper.CombineHashCodes(GetEqualityComponents()));
 }
Exemple #22
0
 public override int GetHashCode()
 {
     return(HashCodeHelper.CombineHashCodes(Position.GetHashCode(), Direction.GetHashCode()));
 }
Exemple #23
0
 public override int GetHashCode()
 {
     return(HashCodeHelper.CombineHashCodes(Min.GetHashCode(), Max.GetHashCode()));
 }
Exemple #24
0
 /// <remarks>Not 100% right because SelectedYear and SelectedSemester could be different from the year and semester of the classes in the page.</remarks>
 public override int GetHashCode() => HashCodeHelper.CombineHashCodes(SelectedYear, (int)SelectedSemester, PageNumber);
Exemple #25
0
 public override int GetHashCode()
 {
     return(HashCodeHelper.CombineHashCodes(this.GetIdentityComponents()));
 }
Exemple #26
0
 public override int GetHashCode()
 {
     return(HashCodeHelper.CombineHashCodes(97621, Condition, IfBlock, ElseBlock));
 }
Exemple #27
0
 public override int GetHashCode()
 {
     return(HashCodeHelper.CombineHashCodes(5347, Statements));
 }
Exemple #28
0
 public override int GetHashCode()
 {
     return(HashCodeHelper.CombineHashCodes(X, Y));
 }