public static int GetHashCode(this List <Vertex> vertices) { var orderedVertices = new List <Vertex>(vertices); orderedVertices.Reorder(); return(HashCodeHelper.CombineHashCodes(orderedVertices.Map(c => c.GetHashCode()))); }
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); }
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); }
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); }
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); }
/// <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())); }
public override int GetHashCode() { return(HashCodeHelper.CombineHashCodes(12347, Condition, Body)); }
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)); }
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 })); }
public override int GetHashCode() { return(HashCodeHelper.CombineHashCodes(Vertices)); }
public override int GetHashCode() { return(HashCodeHelper.CombineHashCodes(GetEqualityComponents())); }
public override int GetHashCode() { return(HashCodeHelper.CombineHashCodes(Position.GetHashCode(), Direction.GetHashCode())); }
public override int GetHashCode() { return(HashCodeHelper.CombineHashCodes(Min.GetHashCode(), Max.GetHashCode())); }
/// <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);
public override int GetHashCode() { return(HashCodeHelper.CombineHashCodes(this.GetIdentityComponents())); }
public override int GetHashCode() { return(HashCodeHelper.CombineHashCodes(97621, Condition, IfBlock, ElseBlock)); }
public override int GetHashCode() { return(HashCodeHelper.CombineHashCodes(5347, Statements)); }
public override int GetHashCode() { return(HashCodeHelper.CombineHashCodes(X, Y)); }