public void Update(DestinyItemComponentSetOfint64?other)
 {
     if (other is null)
     {
         return;
     }
     if (!Instances.DeepEquals(other.Instances))
     {
         Instances.Update(other.Instances);
         OnPropertyChanged(nameof(Instances));
     }
     if (!RenderData.DeepEquals(other.RenderData))
     {
         RenderData.Update(other.RenderData);
         OnPropertyChanged(nameof(RenderData));
     }
     if (!Stats.DeepEquals(other.Stats))
     {
         Stats.Update(other.Stats);
         OnPropertyChanged(nameof(Stats));
     }
     if (!Sockets.DeepEquals(other.Sockets))
     {
         Sockets.Update(other.Sockets);
         OnPropertyChanged(nameof(Sockets));
     }
     if (!ReusablePlugs.DeepEquals(other.ReusablePlugs))
     {
         ReusablePlugs.Update(other.ReusablePlugs);
         OnPropertyChanged(nameof(ReusablePlugs));
     }
     if (!PlugObjectives.DeepEquals(other.PlugObjectives))
     {
         PlugObjectives.Update(other.PlugObjectives);
         OnPropertyChanged(nameof(PlugObjectives));
     }
     if (!TalentGrids.DeepEquals(other.TalentGrids))
     {
         TalentGrids.Update(other.TalentGrids);
         OnPropertyChanged(nameof(TalentGrids));
     }
     if (!PlugStates.DeepEquals(other.PlugStates))
     {
         PlugStates.Update(other.PlugStates);
         OnPropertyChanged(nameof(PlugStates));
     }
     if (!Objectives.DeepEquals(other.Objectives))
     {
         Objectives.Update(other.Objectives);
         OnPropertyChanged(nameof(Objectives));
     }
     if (!Perks.DeepEquals(other.Perks))
     {
         Perks.Update(other.Perks);
         OnPropertyChanged(nameof(Perks));
     }
 }
 public bool DeepEquals(DestinyItemComponentSetOfint64?other)
 {
     return(other is not null &&
            (Instances is not null ? Instances.DeepEquals(other.Instances) : other.Instances is null) &&
            (RenderData is not null ? RenderData.DeepEquals(other.RenderData) : other.RenderData is null) &&
            (Stats is not null ? Stats.DeepEquals(other.Stats) : other.Stats is null) &&
            (Sockets is not null ? Sockets.DeepEquals(other.Sockets) : other.Sockets is null) &&
            (ReusablePlugs is not null ? ReusablePlugs.DeepEquals(other.ReusablePlugs) : other.ReusablePlugs is null) &&
            (PlugObjectives is not null ? PlugObjectives.DeepEquals(other.PlugObjectives) : other.PlugObjectives is null) &&
            (TalentGrids is not null ? TalentGrids.DeepEquals(other.TalentGrids) : other.TalentGrids is null) &&
            (PlugStates is not null ? PlugStates.DeepEquals(other.PlugStates) : other.PlugStates is null) &&
            (Objectives is not null ? Objectives.DeepEquals(other.Objectives) : other.Objectives is null) &&
            (Perks is not null ? Perks.DeepEquals(other.Perks) : other.Perks is null));
 }
 public bool DeepEquals(DestinyItemResponse?other)
 {
     return(other is not null &&
            CharacterId == other.CharacterId &&
            (Item is not null ? Item.DeepEquals(other.Item) : other.Item is null) &&
            (Instance is not null ? Instance.DeepEquals(other.Instance) : other.Instance is null) &&
            (Objectives is not null ? Objectives.DeepEquals(other.Objectives) : other.Objectives is null) &&
            (Perks is not null ? Perks.DeepEquals(other.Perks) : other.Perks is null) &&
            (RenderData is not null ? RenderData.DeepEquals(other.RenderData) : other.RenderData is null) &&
            (Stats is not null ? Stats.DeepEquals(other.Stats) : other.Stats is null) &&
            (TalentGrid is not null ? TalentGrid.DeepEquals(other.TalentGrid) : other.TalentGrid is null) &&
            (Sockets is not null ? Sockets.DeepEquals(other.Sockets) : other.Sockets is null) &&
            (ReusablePlugs is not null ? ReusablePlugs.DeepEquals(other.ReusablePlugs) : other.ReusablePlugs is null) &&
            (PlugObjectives is not null ? PlugObjectives.DeepEquals(other.PlugObjectives) : other.PlugObjectives is null));
 }
 public void Update(DestinyItemResponse?other)
 {
     if (other is null)
     {
         return;
     }
     if (CharacterId != other.CharacterId)
     {
         CharacterId = other.CharacterId;
         OnPropertyChanged(nameof(CharacterId));
     }
     if (!Item.DeepEquals(other.Item))
     {
         Item.Update(other.Item);
         OnPropertyChanged(nameof(Item));
     }
     if (!Instance.DeepEquals(other.Instance))
     {
         Instance.Update(other.Instance);
         OnPropertyChanged(nameof(Instance));
     }
     if (!Objectives.DeepEquals(other.Objectives))
     {
         Objectives.Update(other.Objectives);
         OnPropertyChanged(nameof(Objectives));
     }
     if (!Perks.DeepEquals(other.Perks))
     {
         Perks.Update(other.Perks);
         OnPropertyChanged(nameof(Perks));
     }
     if (!RenderData.DeepEquals(other.RenderData))
     {
         RenderData.Update(other.RenderData);
         OnPropertyChanged(nameof(RenderData));
     }
     if (!Stats.DeepEquals(other.Stats))
     {
         Stats.Update(other.Stats);
         OnPropertyChanged(nameof(Stats));
     }
     if (!TalentGrid.DeepEquals(other.TalentGrid))
     {
         TalentGrid.Update(other.TalentGrid);
         OnPropertyChanged(nameof(TalentGrid));
     }
     if (!Sockets.DeepEquals(other.Sockets))
     {
         Sockets.Update(other.Sockets);
         OnPropertyChanged(nameof(Sockets));
     }
     if (!ReusablePlugs.DeepEquals(other.ReusablePlugs))
     {
         ReusablePlugs.Update(other.ReusablePlugs);
         OnPropertyChanged(nameof(ReusablePlugs));
     }
     if (!PlugObjectives.DeepEquals(other.PlugObjectives))
     {
         PlugObjectives.Update(other.PlugObjectives);
         OnPropertyChanged(nameof(PlugObjectives));
     }
 }