public bool DeepEquals(DestinyItemSourceDefinition?other) { return(other is not null && Level == other.Level && MinQuality == other.MinQuality && MaxQuality == other.MaxQuality && MinLevelRequired == other.MinLevelRequired && MaxLevelRequired == other.MaxLevelRequired && ComputedStats.DeepEqualsDictionary(other.ComputedStats) && SourceHashes.DeepEqualsListNaive(other.SourceHashes)); }
public void Update(DestinyItemSourceDefinition?other) { if (other is null) { return; } if (Level != other.Level) { Level = other.Level; OnPropertyChanged(nameof(Level)); } if (MinQuality != other.MinQuality) { MinQuality = other.MinQuality; OnPropertyChanged(nameof(MinQuality)); } if (MaxQuality != other.MaxQuality) { MaxQuality = other.MaxQuality; OnPropertyChanged(nameof(MaxQuality)); } if (MinLevelRequired != other.MinLevelRequired) { MinLevelRequired = other.MinLevelRequired; OnPropertyChanged(nameof(MinLevelRequired)); } if (MaxLevelRequired != other.MaxLevelRequired) { MaxLevelRequired = other.MaxLevelRequired; OnPropertyChanged(nameof(MaxLevelRequired)); } if (!ComputedStats.DeepEqualsDictionary(other.ComputedStats)) { ComputedStats = other.ComputedStats; OnPropertyChanged(nameof(ComputedStats)); } if (!SourceHashes.DeepEqualsListNaive(other.SourceHashes)) { SourceHashes = other.SourceHashes; OnPropertyChanged(nameof(SourceHashes)); } }