public bool DeepEquals(DestinyItemComponent?other) { return(other is not null && ItemHash == other.ItemHash && ItemInstanceId == other.ItemInstanceId && Quantity == other.Quantity && BindStatus == other.BindStatus && Location == other.Location && BucketHash == other.BucketHash && TransferStatus == other.TransferStatus && Lockable == other.Lockable && State == other.State && OverrideStyleItemHash == other.OverrideStyleItemHash && ExpirationDate == other.ExpirationDate && IsWrapper == other.IsWrapper && TooltipNotificationIndexes.DeepEqualsListNaive(other.TooltipNotificationIndexes) && MetricHash == other.MetricHash && (MetricObjective is not null ? MetricObjective.DeepEquals(other.MetricObjective) : other.MetricObjective is null) && VersionNumber == other.VersionNumber && ItemValueVisibility.DeepEqualsListNaive(other.ItemValueVisibility)); }
public void Update(DestinyItemComponent?other) { if (other is null) { return; } if (ItemHash != other.ItemHash) { ItemHash = other.ItemHash; OnPropertyChanged(nameof(ItemHash)); } if (ItemInstanceId != other.ItemInstanceId) { ItemInstanceId = other.ItemInstanceId; OnPropertyChanged(nameof(ItemInstanceId)); } if (Quantity != other.Quantity) { Quantity = other.Quantity; OnPropertyChanged(nameof(Quantity)); } if (BindStatus != other.BindStatus) { BindStatus = other.BindStatus; OnPropertyChanged(nameof(BindStatus)); } if (Location != other.Location) { Location = other.Location; OnPropertyChanged(nameof(Location)); } if (BucketHash != other.BucketHash) { BucketHash = other.BucketHash; OnPropertyChanged(nameof(BucketHash)); } if (TransferStatus != other.TransferStatus) { TransferStatus = other.TransferStatus; OnPropertyChanged(nameof(TransferStatus)); } if (Lockable != other.Lockable) { Lockable = other.Lockable; OnPropertyChanged(nameof(Lockable)); } if (State != other.State) { State = other.State; OnPropertyChanged(nameof(State)); } if (OverrideStyleItemHash != other.OverrideStyleItemHash) { OverrideStyleItemHash = other.OverrideStyleItemHash; OnPropertyChanged(nameof(OverrideStyleItemHash)); } if (ExpirationDate != other.ExpirationDate) { ExpirationDate = other.ExpirationDate; OnPropertyChanged(nameof(ExpirationDate)); } if (IsWrapper != other.IsWrapper) { IsWrapper = other.IsWrapper; OnPropertyChanged(nameof(IsWrapper)); } if (!TooltipNotificationIndexes.DeepEqualsListNaive(other.TooltipNotificationIndexes)) { TooltipNotificationIndexes = other.TooltipNotificationIndexes; OnPropertyChanged(nameof(TooltipNotificationIndexes)); } if (MetricHash != other.MetricHash) { MetricHash = other.MetricHash; OnPropertyChanged(nameof(MetricHash)); } if (!MetricObjective.DeepEquals(other.MetricObjective)) { MetricObjective.Update(other.MetricObjective); OnPropertyChanged(nameof(MetricObjective)); } if (VersionNumber != other.VersionNumber) { VersionNumber = other.VersionNumber; OnPropertyChanged(nameof(VersionNumber)); } if (!ItemValueVisibility.DeepEqualsListNaive(other.ItemValueVisibility)) { ItemValueVisibility = other.ItemValueVisibility; OnPropertyChanged(nameof(ItemValueVisibility)); } }
public bool Equals(DestinyItemComponent input) { if (input == null) { return(false); } return (( ItemHash == input.ItemHash || (ItemHash.Equals(input.ItemHash)) ) && ( ItemInstanceId == input.ItemInstanceId || (ItemInstanceId.Equals(input.ItemInstanceId)) ) && ( Quantity == input.Quantity || (Quantity.Equals(input.Quantity)) ) && ( BindStatus == input.BindStatus || (BindStatus != null && BindStatus.Equals(input.BindStatus)) ) && ( Location == input.Location || (Location != null && Location.Equals(input.Location)) ) && ( BucketHash == input.BucketHash || (BucketHash.Equals(input.BucketHash)) ) && ( TransferStatus == input.TransferStatus || (TransferStatus != null && TransferStatus.Equals(input.TransferStatus)) ) && ( Lockable == input.Lockable || (Lockable != null && Lockable.Equals(input.Lockable)) ) && ( State == input.State || (State != null && State.Equals(input.State)) ) && ( OverrideStyleItemHash == input.OverrideStyleItemHash || (OverrideStyleItemHash.Equals(input.OverrideStyleItemHash)) ) && ( ExpirationDate == input.ExpirationDate || (ExpirationDate != null && ExpirationDate.Equals(input.ExpirationDate)) ) && ( IsWrapper == input.IsWrapper || (IsWrapper != null && IsWrapper.Equals(input.IsWrapper)) ) && ( TooltipNotificationIndexes == input.TooltipNotificationIndexes || (TooltipNotificationIndexes != null && TooltipNotificationIndexes.SequenceEqual(input.TooltipNotificationIndexes)) ) && ( MetricHash == input.MetricHash || (MetricHash.Equals(input.MetricHash)) ) && ( MetricObjective == input.MetricObjective || (MetricObjective != null && MetricObjective.Equals(input.MetricObjective)) ) && ( VersionNumber == input.VersionNumber || (VersionNumber.Equals(input.VersionNumber)) ) && ( ItemValueVisibility == input.ItemValueVisibility || (ItemValueVisibility != null && ItemValueVisibility.SequenceEqual(input.ItemValueVisibility)) )); }