public bool DeepEquals(DestinyRecordDefinition other) { return(other != null && DisplayProperties.DeepEquals(other.DisplayProperties) && CompletionInfo.DeepEquals(other.CompletionInfo) && ExpirationInfo.DeepEquals(other.ExpirationInfo) && IntervalInfo.DeepEquals(other.IntervalInfo) && StateInfo.DeepEquals(other.StateInfo) && TitleInfo.DeepEquals(other.TitleInfo) && Objectives.DeepEqualsReadOnlyCollections(other.Objectives) && ParentNodes.DeepEqualsReadOnlyCollections(other.ParentNodes) && PresentationNodeType == other.PresentationNodeType && RecordValueStyle == other.RecordValueStyle && Requirements.DeepEquals(other.Requirements) && RewardItems.DeepEqualsReadOnlyCollections(other.RewardItems) && Scope == other.Scope && Traits.DeepEqualsReadOnlyCollections(other.Traits) && TraitIds.DeepEqualsReadOnlySimpleCollection(other.TraitIds) && Lore.DeepEquals(other.Lore) && PresentationInfo.DeepEquals(other.PresentationInfo) && ForTitleGilding == other.ForTitleGilding && Blacklisted == other.Blacklisted && Hash == other.Hash && Index == other.Index && Redacted == other.Redacted); }
public bool DeepEquals(DestinyRecordDefinition?other) { return(other is not null && (DisplayProperties is not null ? DisplayProperties.DeepEquals(other.DisplayProperties) : other.DisplayProperties is null) && Scope == other.Scope && (PresentationInfo is not null ? PresentationInfo.DeepEquals(other.PresentationInfo) : other.PresentationInfo is null) && LoreHash == other.LoreHash && ObjectiveHashes.DeepEqualsListNaive(other.ObjectiveHashes) && RecordValueStyle == other.RecordValueStyle && ForTitleGilding == other.ForTitleGilding && (TitleInfo is not null ? TitleInfo.DeepEquals(other.TitleInfo) : other.TitleInfo is null) && (CompletionInfo is not null ? CompletionInfo.DeepEquals(other.CompletionInfo) : other.CompletionInfo is null) && (StateInfo is not null ? StateInfo.DeepEquals(other.StateInfo) : other.StateInfo is null) && (Requirements is not null ? Requirements.DeepEquals(other.Requirements) : other.Requirements is null) && (ExpirationInfo is not null ? ExpirationInfo.DeepEquals(other.ExpirationInfo) : other.ExpirationInfo is null) && (IntervalInfo is not null ? IntervalInfo.DeepEquals(other.IntervalInfo) : other.IntervalInfo is null) && RewardItems.DeepEqualsList(other.RewardItems) && PresentationNodeType == other.PresentationNodeType && TraitIds.DeepEqualsListNaive(other.TraitIds) && TraitHashes.DeepEqualsListNaive(other.TraitHashes) && ParentNodeHashes.DeepEqualsListNaive(other.ParentNodeHashes) && Hash == other.Hash && Index == other.Index && Redacted == other.Redacted); }
public void Update(DestinyRecordDefinition?other) { if (other is null) { return; } if (!DisplayProperties.DeepEquals(other.DisplayProperties)) { DisplayProperties.Update(other.DisplayProperties); OnPropertyChanged(nameof(DisplayProperties)); } if (Scope != other.Scope) { Scope = other.Scope; OnPropertyChanged(nameof(Scope)); } if (!PresentationInfo.DeepEquals(other.PresentationInfo)) { PresentationInfo.Update(other.PresentationInfo); OnPropertyChanged(nameof(PresentationInfo)); } if (LoreHash != other.LoreHash) { LoreHash = other.LoreHash; OnPropertyChanged(nameof(LoreHash)); } if (!ObjectiveHashes.DeepEqualsListNaive(other.ObjectiveHashes)) { ObjectiveHashes = other.ObjectiveHashes; OnPropertyChanged(nameof(ObjectiveHashes)); } if (RecordValueStyle != other.RecordValueStyle) { RecordValueStyle = other.RecordValueStyle; OnPropertyChanged(nameof(RecordValueStyle)); } if (ForTitleGilding != other.ForTitleGilding) { ForTitleGilding = other.ForTitleGilding; OnPropertyChanged(nameof(ForTitleGilding)); } if (!TitleInfo.DeepEquals(other.TitleInfo)) { TitleInfo.Update(other.TitleInfo); OnPropertyChanged(nameof(TitleInfo)); } if (!CompletionInfo.DeepEquals(other.CompletionInfo)) { CompletionInfo.Update(other.CompletionInfo); OnPropertyChanged(nameof(CompletionInfo)); } if (!StateInfo.DeepEquals(other.StateInfo)) { StateInfo.Update(other.StateInfo); OnPropertyChanged(nameof(StateInfo)); } if (!Requirements.DeepEquals(other.Requirements)) { Requirements.Update(other.Requirements); OnPropertyChanged(nameof(Requirements)); } if (!ExpirationInfo.DeepEquals(other.ExpirationInfo)) { ExpirationInfo.Update(other.ExpirationInfo); OnPropertyChanged(nameof(ExpirationInfo)); } if (!IntervalInfo.DeepEquals(other.IntervalInfo)) { IntervalInfo.Update(other.IntervalInfo); OnPropertyChanged(nameof(IntervalInfo)); } if (!RewardItems.DeepEqualsList(other.RewardItems)) { RewardItems = other.RewardItems; OnPropertyChanged(nameof(RewardItems)); } if (PresentationNodeType != other.PresentationNodeType) { PresentationNodeType = other.PresentationNodeType; OnPropertyChanged(nameof(PresentationNodeType)); } if (!TraitIds.DeepEqualsListNaive(other.TraitIds)) { TraitIds = other.TraitIds; OnPropertyChanged(nameof(TraitIds)); } if (!TraitHashes.DeepEqualsListNaive(other.TraitHashes)) { TraitHashes = other.TraitHashes; OnPropertyChanged(nameof(TraitHashes)); } if (!ParentNodeHashes.DeepEqualsListNaive(other.ParentNodeHashes)) { ParentNodeHashes = other.ParentNodeHashes; OnPropertyChanged(nameof(ParentNodeHashes)); } if (Hash != other.Hash) { Hash = other.Hash; OnPropertyChanged(nameof(Hash)); } if (Index != other.Index) { Index = other.Index; OnPropertyChanged(nameof(Index)); } if (Redacted != other.Redacted) { Redacted = other.Redacted; OnPropertyChanged(nameof(Redacted)); } }