Cleanup around DatItem and DatItem<T>

This is both big and not big. The not big part of this is that I essentially just moved some stuff up to the typed type that used to live in the untyped type. The big part is that this allows every single DatItem implementation to be significantly cleaner with their implementations of the methods and internal model.
This commit is contained in:
Matt Nadareski
2026-04-05 01:36:32 -04:00
parent 1a10e10fd6
commit 5ffc9fef43
45 changed files with 837 additions and 823 deletions

View File

@@ -2,7 +2,6 @@ using System;
using System.Xml.Serialization;
using Newtonsoft.Json;
using SabreTools.Hashing;
using SabreTools.Logging;
using SabreTools.Metadata.DatItems.Formats;
using SabreTools.Metadata.Filter;
@@ -84,25 +83,6 @@ namespace SabreTools.Metadata.DatItems
#endregion
#region Private Fields
/// <summary>
/// Internal model
/// </summary>
protected Data.Models.Metadata.DatItem _internal = new();
#endregion
#region Logging
/// <summary>
/// Static logger for static methods
/// </summary>
[JsonIgnore, XmlIgnore]
protected static readonly Logger _staticLogger = new();
#endregion
#region Accessors
/// <summary>
@@ -193,21 +173,14 @@ namespace SabreTools.Metadata.DatItems
/// </summary>
/// <param name="filterRunner">Filter runner to use for checking</param>
/// <returns>True if the item and its machine passes the filter, false otherwise</returns>
public bool PassesFilter(FilterRunner filterRunner)
{
if (Machine is not null && !Machine.PassesFilter(filterRunner))
return false;
return filterRunner.Run(_internal);
}
public abstract bool PassesFilter(FilterRunner filterRunner);
/// <summary>
/// Runs a filter and determines if it passes or not
/// </summary>
/// <param name="filterRunner">Filter runner to use for checking</param>
/// <returns>True if the item passes the filter, false otherwise</returns>
public bool PassesFilterDB(FilterRunner filterRunner)
=> filterRunner.Run(_internal);
public abstract bool PassesFilterDB(FilterRunner filterRunner);
#endregion

View File

@@ -1,12 +1,23 @@
using System;
using SabreTools.Metadata.Filter;
namespace SabreTools.Metadata.DatItems
{
/// <summary>
/// Base class for all items included in a set that are backed by an internal model
/// </summary>
public abstract class DatItem<T> : DatItem, IEquatable<DatItem<T>>, IComparable<DatItem<T>>, ICloneable where T : Data.Models.Metadata.DatItem, new()
public abstract class DatItem<T> : DatItem, IEquatable<DatItem<T>>, IComparable<DatItem<T>>, ICloneable
where T : Data.Models.Metadata.DatItem, new()
{
#region Private Fields
/// <summary>
/// Internal model
/// </summary>
protected T _internal;
#endregion
#region Constructors
/// <summary>
@@ -71,5 +82,22 @@ namespace SabreTools.Metadata.DatItems
public abstract bool Equals(DatItem<T>? other);
#endregion
#region Manipulation
/// <inheritdoc/>
public override bool PassesFilter(FilterRunner filterRunner)
{
if (Machine is not null && !Machine.PassesFilter(filterRunner))
return false;
return filterRunner.Run(_internal);
}
/// <inheritdoc/>
public override bool PassesFilterDB(FilterRunner filterRunner)
=> filterRunner.Run(_internal);
#endregion
}
}

View File

@@ -18,8 +18,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public bool? Default
{
get => (_internal as Data.Models.Metadata.Adjuster)?.Default;
set => (_internal as Data.Models.Metadata.Adjuster)?.Default = value;
get => _internal.Default;
set => _internal.Default = value;
}
/// <inheritdoc>/>
@@ -28,8 +28,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Name
{
get => (_internal as Data.Models.Metadata.Adjuster)?.Name;
set => (_internal as Data.Models.Metadata.Adjuster)?.Name = value;
get => _internal.Name;
set => _internal.Name = value;
}
#endregion
@@ -71,7 +71,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.Adjuster GetInternalClone()
{
var adjusterItem = (_internal as Data.Models.Metadata.Adjuster)?.Clone() as Data.Models.Metadata.Adjuster ?? new();
var adjusterItem = _internal.Clone() as Data.Models.Metadata.Adjuster ?? new();
if (Condition is not null)
adjusterItem.Condition = Condition.GetInternalClone();
@@ -92,7 +92,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Adjuster otherAdjuster)
return ((Data.Models.Metadata.Adjuster)_internal).Equals((Data.Models.Metadata.Adjuster)otherAdjuster._internal);
return _internal.Equals(otherAdjuster._internal);
// Everything else fails
return false;
@@ -107,7 +107,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Adjuster otherAdjuster)
return ((Data.Models.Metadata.Adjuster)_internal).Equals((Data.Models.Metadata.Adjuster)otherAdjuster._internal);
return _internal.Equals(otherAdjuster._internal);
// Everything else fails
return false;

View File

@@ -17,8 +17,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Mask
{
get => (_internal as Data.Models.Metadata.Analog)?.Mask;
set => (_internal as Data.Models.Metadata.Analog)?.Mask = value;
get => _internal.Mask;
set => _internal.Mask = value;
}
#endregion
@@ -54,7 +54,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.Analog GetInternalClone()
=> (_internal as Data.Models.Metadata.Analog)?.Clone() as Data.Models.Metadata.Analog ?? new();
=> _internal.Clone() as Data.Models.Metadata.Analog ?? new();
#endregion
@@ -69,7 +69,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Analog otherAnalog)
return ((Data.Models.Metadata.Analog)_internal).Equals((Data.Models.Metadata.Analog)otherAnalog._internal);
return _internal.Equals(otherAnalog._internal);
// Everything else fails
return false;
@@ -84,7 +84,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Analog otherAnalog)
return ((Data.Models.Metadata.Analog)_internal).Equals((Data.Models.Metadata.Analog)otherAnalog._internal);
return _internal.Equals(otherAnalog._internal);
// Everything else fails
return false;

View File

@@ -13,79 +13,79 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Additional
{
get => (_internal as Data.Models.Metadata.Archive)?.Additional;
set => (_internal as Data.Models.Metadata.Archive)?.Additional = value;
get => _internal.Additional;
set => _internal.Additional = value;
}
public bool? Adult
{
get => (_internal as Data.Models.Metadata.Archive)?.Adult;
set => (_internal as Data.Models.Metadata.Archive)?.Adult = value;
get => _internal.Adult;
set => _internal.Adult = value;
}
public bool? Alt
{
get => (_internal as Data.Models.Metadata.Archive)?.Alt;
set => (_internal as Data.Models.Metadata.Archive)?.Alt = value;
get => _internal.Alt;
set => _internal.Alt = value;
}
public bool? Bios
{
get => (_internal as Data.Models.Metadata.Archive)?.Bios;
set => (_internal as Data.Models.Metadata.Archive)?.Bios = value;
get => _internal.Bios;
set => _internal.Bios = value;
}
public string? Categories
{
get => (_internal as Data.Models.Metadata.Archive)?.Categories;
set => (_internal as Data.Models.Metadata.Archive)?.Categories = value;
get => _internal.Categories;
set => _internal.Categories = value;
}
public string? CloneTag
{
get => (_internal as Data.Models.Metadata.Archive)?.CloneTag;
set => (_internal as Data.Models.Metadata.Archive)?.CloneTag = value;
get => _internal.CloneTag;
set => _internal.CloneTag = value;
}
public bool? Complete
{
get => (_internal as Data.Models.Metadata.Archive)?.Complete;
set => (_internal as Data.Models.Metadata.Archive)?.Complete = value;
get => _internal.Complete;
set => _internal.Complete = value;
}
public bool? Dat
{
get => (_internal as Data.Models.Metadata.Archive)?.Dat;
set => (_internal as Data.Models.Metadata.Archive)?.Dat = value;
get => _internal.Dat;
set => _internal.Dat = value;
}
public string? DatterNote
{
get => (_internal as Data.Models.Metadata.Archive)?.DatterNote;
set => (_internal as Data.Models.Metadata.Archive)?.DatterNote = value;
get => _internal.DatterNote;
set => _internal.DatterNote = value;
}
public string? Description
{
get => (_internal as Data.Models.Metadata.Archive)?.Description;
set => (_internal as Data.Models.Metadata.Archive)?.Description = value;
get => _internal.Description;
set => _internal.Description = value;
}
public string? DevStatus
{
get => (_internal as Data.Models.Metadata.Archive)?.DevStatus;
set => (_internal as Data.Models.Metadata.Archive)?.DevStatus = value;
get => _internal.DevStatus;
set => _internal.DevStatus = value;
}
public string? GameId1
{
get => (_internal as Data.Models.Metadata.Archive)?.GameId1;
set => (_internal as Data.Models.Metadata.Archive)?.GameId1 = value;
get => _internal.GameId1;
set => _internal.GameId1 = value;
}
public string? GameId2
{
get => (_internal as Data.Models.Metadata.Archive)?.GameId2;
set => (_internal as Data.Models.Metadata.Archive)?.GameId2 = value;
get => _internal.GameId2;
set => _internal.GameId2 = value;
}
/// <inheritdoc>/>
@@ -94,122 +94,122 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? LangChecked
{
get => (_internal as Data.Models.Metadata.Archive)?.LangChecked;
set => (_internal as Data.Models.Metadata.Archive)?.LangChecked = value;
get => _internal.LangChecked;
set => _internal.LangChecked = value;
}
public string? Languages
{
get => (_internal as Data.Models.Metadata.Archive)?.Languages;
set => (_internal as Data.Models.Metadata.Archive)?.Languages = value;
get => _internal.Languages;
set => _internal.Languages = value;
}
public bool? Licensed
{
get => (_internal as Data.Models.Metadata.Archive)?.Licensed;
set => (_internal as Data.Models.Metadata.Archive)?.Licensed = value;
get => _internal.Licensed;
set => _internal.Licensed = value;
}
public bool? Listed
{
get => (_internal as Data.Models.Metadata.Archive)?.Listed;
set => (_internal as Data.Models.Metadata.Archive)?.Listed = value;
get => _internal.Listed;
set => _internal.Listed = value;
}
public string? MergeOf
{
get => (_internal as Data.Models.Metadata.Archive)?.MergeOf;
set => (_internal as Data.Models.Metadata.Archive)?.MergeOf = value;
get => _internal.MergeOf;
set => _internal.MergeOf = value;
}
public string? MergeName
{
get => (_internal as Data.Models.Metadata.Archive)?.MergeName;
set => (_internal as Data.Models.Metadata.Archive)?.MergeName = value;
get => _internal.MergeName;
set => _internal.MergeName = value;
}
public string? Name
{
get => (_internal as Data.Models.Metadata.Archive)?.Name;
set => (_internal as Data.Models.Metadata.Archive)?.Name = value;
get => _internal.Name;
set => _internal.Name = value;
}
public string? NameAlt
{
get => (_internal as Data.Models.Metadata.Archive)?.NameAlt;
set => (_internal as Data.Models.Metadata.Archive)?.NameAlt = value;
get => _internal.NameAlt;
set => _internal.NameAlt = value;
}
public string? Number
{
get => (_internal as Data.Models.Metadata.Archive)?.Number;
set => (_internal as Data.Models.Metadata.Archive)?.Number = value;
get => _internal.Number;
set => _internal.Number = value;
}
public bool? Physical
{
get => (_internal as Data.Models.Metadata.Archive)?.Physical;
set => (_internal as Data.Models.Metadata.Archive)?.Physical = value;
get => _internal.Physical;
set => _internal.Physical = value;
}
public bool? Pirate
{
get => (_internal as Data.Models.Metadata.Archive)?.Pirate;
set => (_internal as Data.Models.Metadata.Archive)?.Pirate = value;
get => _internal.Pirate;
set => _internal.Pirate = value;
}
public bool? Private
{
get => (_internal as Data.Models.Metadata.Archive)?.Private;
set => (_internal as Data.Models.Metadata.Archive)?.Private = value;
get => _internal.Private;
set => _internal.Private = value;
}
public string? Region
{
get => (_internal as Data.Models.Metadata.Archive)?.Region;
set => (_internal as Data.Models.Metadata.Archive)?.Region = value;
get => _internal.Region;
set => _internal.Region = value;
}
public string? RegParent
{
get => (_internal as Data.Models.Metadata.Archive)?.RegParent;
set => (_internal as Data.Models.Metadata.Archive)?.RegParent = value;
get => _internal.RegParent;
set => _internal.RegParent = value;
}
public bool? ShowLang
{
get => (_internal as Data.Models.Metadata.Archive)?.ShowLang;
set => (_internal as Data.Models.Metadata.Archive)?.ShowLang = value;
get => _internal.ShowLang;
set => _internal.ShowLang = value;
}
public string? Special1
{
get => (_internal as Data.Models.Metadata.Archive)?.Special1;
set => (_internal as Data.Models.Metadata.Archive)?.Special1 = value;
get => _internal.Special1;
set => _internal.Special1 = value;
}
public string? Special2
{
get => (_internal as Data.Models.Metadata.Archive)?.Special2;
set => (_internal as Data.Models.Metadata.Archive)?.Special2 = value;
get => _internal.Special2;
set => _internal.Special2 = value;
}
public string? StickyNote
{
get => (_internal as Data.Models.Metadata.Archive)?.StickyNote;
set => (_internal as Data.Models.Metadata.Archive)?.StickyNote = value;
get => _internal.StickyNote;
set => _internal.StickyNote = value;
}
public string? Version1
{
get => (_internal as Data.Models.Metadata.Archive)?.Version1;
set => (_internal as Data.Models.Metadata.Archive)?.Version1 = value;
get => _internal.Version1;
set => _internal.Version1 = value;
}
public string? Version2
{
get => (_internal as Data.Models.Metadata.Archive)?.Version2;
set => (_internal as Data.Models.Metadata.Archive)?.Version2 = value;
get => _internal.Version2;
set => _internal.Version2 = value;
}
#endregion
@@ -245,7 +245,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.Archive GetInternalClone()
=> (_internal as Data.Models.Metadata.Archive)?.Clone() as Data.Models.Metadata.Archive ?? new();
=> _internal.Clone() as Data.Models.Metadata.Archive ?? new();
#endregion
@@ -260,7 +260,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Archive otherArchive)
return ((Data.Models.Metadata.Archive)_internal).Equals((Data.Models.Metadata.Archive)otherArchive._internal);
return _internal.Equals(otherArchive._internal);
// Everything else fails
return false;
@@ -275,7 +275,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Archive otherArchive)
return ((Data.Models.Metadata.Archive)_internal).Equals((Data.Models.Metadata.Archive)otherArchive._internal);
return _internal.Equals(otherArchive._internal);
// Everything else fails
return false;

View File

@@ -13,14 +13,14 @@ namespace SabreTools.Metadata.DatItems.Formats
public bool? Default
{
get => (_internal as Data.Models.Metadata.BiosSet)?.Default;
set => (_internal as Data.Models.Metadata.BiosSet)?.Default = value;
get => _internal.Default;
set => _internal.Default = value;
}
public string? Description
{
get => (_internal as Data.Models.Metadata.BiosSet)?.Description;
set => (_internal as Data.Models.Metadata.BiosSet)?.Description = value;
get => _internal.Description;
set => _internal.Description = value;
}
/// <inheritdoc>/>
@@ -29,8 +29,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Name
{
get => (_internal as Data.Models.Metadata.BiosSet)?.Name;
set => (_internal as Data.Models.Metadata.BiosSet)?.Name = value;
get => _internal.Name;
set => _internal.Name = value;
}
#endregion
@@ -66,7 +66,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.BiosSet GetInternalClone()
=> (_internal as Data.Models.Metadata.BiosSet)?.Clone() as Data.Models.Metadata.BiosSet ?? new();
=> _internal.Clone() as Data.Models.Metadata.BiosSet ?? new();
#endregion
@@ -81,7 +81,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is BiosSet otherBiosSet)
return ((Data.Models.Metadata.BiosSet)_internal).Equals((Data.Models.Metadata.BiosSet)otherBiosSet._internal);
return _internal.Equals(otherBiosSet._internal);
// Everything else fails
return false;
@@ -96,7 +96,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is BiosSet otherBiosSet)
return ((Data.Models.Metadata.BiosSet)_internal).Equals((Data.Models.Metadata.BiosSet)otherBiosSet._internal);
return _internal.Equals(otherBiosSet._internal);
// Everything else fails
return false;

View File

@@ -48,7 +48,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.Blank GetInternalClone()
=> (_internal as Data.Models.Metadata.Blank)?.Clone() as Data.Models.Metadata.Blank ?? new();
=> _internal.Clone() as Data.Models.Metadata.Blank ?? new();
#endregion
@@ -63,7 +63,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Blank otherBlank)
return ((Data.Models.Metadata.Blank)_internal).Equals((Data.Models.Metadata.Blank)otherBlank._internal);
return _internal.Equals(otherBlank._internal);
// Everything else fails
return false;
@@ -78,7 +78,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Blank otherBlank)
return ((Data.Models.Metadata.Blank)_internal).Equals((Data.Models.Metadata.Blank)otherBlank._internal);
return _internal.Equals(otherBlank._internal);
// Everything else fails
return false;

View File

@@ -13,8 +13,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public Data.Models.Metadata.ChipType? ChipType
{
get => (_internal as Data.Models.Metadata.Chip)?.ChipType;
set => (_internal as Data.Models.Metadata.Chip)?.ChipType = value;
get => _internal.ChipType;
set => _internal.ChipType = value;
}
/// <inheritdoc>/>
@@ -23,32 +23,32 @@ namespace SabreTools.Metadata.DatItems.Formats
public long? Clock
{
get => (_internal as Data.Models.Metadata.Chip)?.Clock;
set => (_internal as Data.Models.Metadata.Chip)?.Clock = value;
get => _internal.Clock;
set => _internal.Clock = value;
}
public string? Flags
{
get => (_internal as Data.Models.Metadata.Chip)?.Flags;
set => (_internal as Data.Models.Metadata.Chip)?.Flags = value;
get => _internal.Flags;
set => _internal.Flags = value;
}
public string? Name
{
get => (_internal as Data.Models.Metadata.Chip)?.Name;
set => (_internal as Data.Models.Metadata.Chip)?.Name = value;
get => _internal.Name;
set => _internal.Name = value;
}
public bool? SoundOnly
{
get => (_internal as Data.Models.Metadata.Chip)?.SoundOnly;
set => (_internal as Data.Models.Metadata.Chip)?.SoundOnly = value;
get => _internal.SoundOnly;
set => _internal.SoundOnly = value;
}
public string? Tag
{
get => (_internal as Data.Models.Metadata.Chip)?.Tag;
set => (_internal as Data.Models.Metadata.Chip)?.Tag = value;
get => _internal.Tag;
set => _internal.Tag = value;
}
#endregion
@@ -84,7 +84,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.Chip GetInternalClone()
=> (_internal as Data.Models.Metadata.Chip)?.Clone() as Data.Models.Metadata.Chip ?? new();
=> _internal.Clone() as Data.Models.Metadata.Chip ?? new();
#endregion
@@ -99,7 +99,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Chip otherChip)
return ((Data.Models.Metadata.Chip)_internal).Equals((Data.Models.Metadata.Chip)otherChip._internal);
return _internal.Equals(otherChip._internal);
// Everything else fails
return false;
@@ -114,7 +114,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Chip otherChip)
return ((Data.Models.Metadata.Chip)_internal).Equals((Data.Models.Metadata.Chip)otherChip._internal);
return _internal.Equals(otherChip._internal);
// Everything else fails
return false;

View File

@@ -17,26 +17,26 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Mask
{
get => (_internal as Data.Models.Metadata.Condition)?.Mask;
set => (_internal as Data.Models.Metadata.Condition)?.Mask = value;
get => _internal.Mask;
set => _internal.Mask = value;
}
public Data.Models.Metadata.Relation? Relation
{
get => (_internal as Data.Models.Metadata.Condition)?.Relation;
set => (_internal as Data.Models.Metadata.Condition)?.Relation = value;
get => _internal.Relation;
set => _internal.Relation = value;
}
public string? Tag
{
get => (_internal as Data.Models.Metadata.Condition)?.Tag;
set => (_internal as Data.Models.Metadata.Condition)?.Tag = value;
get => _internal.Tag;
set => _internal.Tag = value;
}
public string? Value
{
get => (_internal as Data.Models.Metadata.Condition)?.Value;
set => (_internal as Data.Models.Metadata.Condition)?.Value = value;
get => _internal.Value;
set => _internal.Value = value;
}
#endregion
@@ -72,7 +72,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.Condition GetInternalClone()
=> (_internal as Data.Models.Metadata.Condition)?.Clone() as Data.Models.Metadata.Condition ?? new();
=> _internal.Clone() as Data.Models.Metadata.Condition ?? new();
#endregion
@@ -87,7 +87,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Condition otherCondition)
return ((Data.Models.Metadata.Condition)_internal).Equals((Data.Models.Metadata.Condition)otherCondition._internal);
return _internal.Equals(otherCondition._internal);
// Everything else fails
return false;
@@ -102,7 +102,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Condition otherCondition)
return ((Data.Models.Metadata.Condition)_internal).Equals((Data.Models.Metadata.Condition)otherCondition._internal);
return _internal.Equals(otherCondition._internal);
// Everything else fails
return false;

View File

@@ -17,20 +17,20 @@ namespace SabreTools.Metadata.DatItems.Formats
public bool? Inverted
{
get => (_internal as Data.Models.Metadata.ConfLocation)?.Inverted;
set => (_internal as Data.Models.Metadata.ConfLocation)?.Inverted = value;
get => _internal.Inverted;
set => _internal.Inverted = value;
}
public string? Name
{
get => (_internal as Data.Models.Metadata.ConfLocation)?.Name;
set => (_internal as Data.Models.Metadata.ConfLocation)?.Name = value;
get => _internal.Name;
set => _internal.Name = value;
}
public long? Number
{
get => (_internal as Data.Models.Metadata.ConfLocation)?.Number;
set => (_internal as Data.Models.Metadata.ConfLocation)?.Number = value;
get => _internal.Number;
set => _internal.Number = value;
}
#endregion
@@ -66,7 +66,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.ConfLocation GetInternalClone()
=> (_internal as Data.Models.Metadata.ConfLocation)?.Clone() as Data.Models.Metadata.ConfLocation ?? new();
=> _internal.Clone() as Data.Models.Metadata.ConfLocation ?? new();
#endregion
@@ -81,7 +81,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is ConfLocation otherConfLocation)
return ((Data.Models.Metadata.ConfLocation)_internal).Equals((Data.Models.Metadata.ConfLocation)otherConfLocation._internal);
return _internal.Equals(otherConfLocation._internal);
// Everything else fails
return false;
@@ -96,7 +96,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is ConfLocation otherConfLocation)
return ((Data.Models.Metadata.ConfLocation)_internal).Equals((Data.Models.Metadata.ConfLocation)otherConfLocation._internal);
return _internal.Equals(otherConfLocation._internal);
// Everything else fails
return false;

View File

@@ -18,8 +18,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public bool? Default
{
get => (_internal as Data.Models.Metadata.ConfSetting)?.Default;
set => (_internal as Data.Models.Metadata.ConfSetting)?.Default = value;
get => _internal.Default;
set => _internal.Default = value;
}
/// <inheritdoc>/>
@@ -28,14 +28,14 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Name
{
get => (_internal as Data.Models.Metadata.ConfSetting)?.Name;
set => (_internal as Data.Models.Metadata.ConfSetting)?.Name = value;
get => _internal.Name;
set => _internal.Name = value;
}
public string? Value
{
get => (_internal as Data.Models.Metadata.ConfSetting)?.Value;
set => (_internal as Data.Models.Metadata.ConfSetting)?.Value = value;
get => _internal.Value;
set => _internal.Value = value;
}
#endregion
@@ -77,7 +77,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.ConfSetting GetInternalClone()
{
var confSettingItem = (_internal as Data.Models.Metadata.ConfSetting)?.Clone() as Data.Models.Metadata.ConfSetting ?? new();
var confSettingItem = _internal.Clone() as Data.Models.Metadata.ConfSetting ?? new();
if (Condition is not null)
confSettingItem.Condition = Condition.GetInternalClone();
@@ -98,7 +98,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is ConfSetting otherConfSetting)
return ((Data.Models.Metadata.ConfSetting)_internal).Equals((Data.Models.Metadata.ConfSetting)otherConfSetting._internal);
return _internal.Equals(otherConfSetting._internal);
// Everything else fails
return false;
@@ -113,7 +113,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is ConfSetting otherConfSetting)
return ((Data.Models.Metadata.ConfSetting)_internal).Equals((Data.Models.Metadata.ConfSetting)otherConfSetting._internal);
return _internal.Equals(otherConfSetting._internal);
// Everything else fails
return false;

View File

@@ -33,20 +33,20 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Mask
{
get => (_internal as Data.Models.Metadata.Configuration)?.Mask;
set => (_internal as Data.Models.Metadata.Configuration)?.Mask = value;
get => _internal.Mask;
set => _internal.Mask = value;
}
public string? Name
{
get => (_internal as Data.Models.Metadata.Configuration)?.Name;
set => (_internal as Data.Models.Metadata.Configuration)?.Name = value;
get => _internal.Name;
set => _internal.Name = value;
}
public string? Tag
{
get => (_internal as Data.Models.Metadata.Configuration)?.Tag;
set => (_internal as Data.Models.Metadata.Configuration)?.Tag = value;
get => _internal.Tag;
set => _internal.Tag = value;
}
#endregion
@@ -94,7 +94,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.Configuration GetInternalClone()
{
var configurationItem = (_internal as Data.Models.Metadata.Configuration)?.Clone() as Data.Models.Metadata.Configuration ?? new();
var configurationItem = _internal.Clone() as Data.Models.Metadata.Configuration ?? new();
if (Condition is not null)
configurationItem.Condition = Condition.GetInternalClone();
@@ -121,7 +121,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Configuration otherConfiguration)
return ((Data.Models.Metadata.Configuration)_internal).Equals((Data.Models.Metadata.Configuration)otherConfiguration._internal);
return _internal.Equals(otherConfiguration._internal);
// Everything else fails
return false;
@@ -136,7 +136,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Configuration otherConfiguration)
return ((Data.Models.Metadata.Configuration)_internal).Equals((Data.Models.Metadata.Configuration)otherConfiguration._internal);
return _internal.Equals(otherConfiguration._internal);
// Everything else fails
return false;

View File

@@ -13,14 +13,14 @@ namespace SabreTools.Metadata.DatItems.Formats
public long? Buttons
{
get => (_internal as Data.Models.Metadata.Control)?.Buttons;
set => (_internal as Data.Models.Metadata.Control)?.Buttons = value;
get => _internal.Buttons;
set => _internal.Buttons = value;
}
public Data.Models.Metadata.ControlType? ControlType
{
get => (_internal as Data.Models.Metadata.Control)?.ControlType;
set => (_internal as Data.Models.Metadata.Control)?.ControlType = value;
get => _internal.ControlType;
set => _internal.ControlType = value;
}
/// <inheritdoc>/>
@@ -29,62 +29,62 @@ namespace SabreTools.Metadata.DatItems.Formats
public long? KeyDelta
{
get => (_internal as Data.Models.Metadata.Control)?.KeyDelta;
set => (_internal as Data.Models.Metadata.Control)?.KeyDelta = value;
get => _internal.KeyDelta;
set => _internal.KeyDelta = value;
}
public long? Maximum
{
get => (_internal as Data.Models.Metadata.Control)?.Maximum;
set => (_internal as Data.Models.Metadata.Control)?.Maximum = value;
get => _internal.Maximum;
set => _internal.Maximum = value;
}
public long? Minimum
{
get => (_internal as Data.Models.Metadata.Control)?.Minimum;
set => (_internal as Data.Models.Metadata.Control)?.Minimum = value;
get => _internal.Minimum;
set => _internal.Minimum = value;
}
public long? Player
{
get => (_internal as Data.Models.Metadata.Control)?.Player;
set => (_internal as Data.Models.Metadata.Control)?.Player = value;
get => _internal.Player;
set => _internal.Player = value;
}
public long? ReqButtons
{
get => (_internal as Data.Models.Metadata.Control)?.ReqButtons;
set => (_internal as Data.Models.Metadata.Control)?.ReqButtons = value;
get => _internal.ReqButtons;
set => _internal.ReqButtons = value;
}
public bool? Reverse
{
get => (_internal as Data.Models.Metadata.Control)?.Reverse;
set => (_internal as Data.Models.Metadata.Control)?.Reverse = value;
get => _internal.Reverse;
set => _internal.Reverse = value;
}
public long? Sensitivity
{
get => (_internal as Data.Models.Metadata.Control)?.Sensitivity;
set => (_internal as Data.Models.Metadata.Control)?.Sensitivity = value;
get => _internal.Sensitivity;
set => _internal.Sensitivity = value;
}
public string? Ways
{
get => (_internal as Data.Models.Metadata.Control)?.Ways;
set => (_internal as Data.Models.Metadata.Control)?.Ways = value;
get => _internal.Ways;
set => _internal.Ways = value;
}
public string? Ways2
{
get => (_internal as Data.Models.Metadata.Control)?.Ways2;
set => (_internal as Data.Models.Metadata.Control)?.Ways2 = value;
get => _internal.Ways2;
set => _internal.Ways2 = value;
}
public string? Ways3
{
get => (_internal as Data.Models.Metadata.Control)?.Ways3;
set => (_internal as Data.Models.Metadata.Control)?.Ways3 = value;
get => _internal.Ways3;
set => _internal.Ways3 = value;
}
#endregion
@@ -120,7 +120,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.Control GetInternalClone()
=> (_internal as Data.Models.Metadata.Control)?.Clone() as Data.Models.Metadata.Control ?? new();
=> _internal.Clone() as Data.Models.Metadata.Control ?? new();
#endregion
@@ -135,7 +135,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Control otherControl)
return ((Data.Models.Metadata.Control)_internal).Equals((Data.Models.Metadata.Control)otherControl._internal);
return _internal.Equals(otherControl._internal);
// Everything else fails
return false;
@@ -150,7 +150,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Control otherControl)
return ((Data.Models.Metadata.Control)_internal).Equals((Data.Models.Metadata.Control)otherControl._internal);
return _internal.Equals(otherControl._internal);
// Everything else fails
return false;

View File

@@ -15,8 +15,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public Data.Models.Metadata.Endianness? Endianness
{
get => (_internal as Data.Models.Metadata.DataArea)?.Endianness;
set => (_internal as Data.Models.Metadata.DataArea)?.Endianness = value;
get => _internal.Endianness;
set => _internal.Endianness = value;
}
/// <inheritdoc>/>
@@ -25,8 +25,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Name
{
get => (_internal as Data.Models.Metadata.DataArea)?.Name;
set => (_internal as Data.Models.Metadata.DataArea)?.Name = value;
get => _internal.Name;
set => _internal.Name = value;
}
public Rom[]? Rom { get; set; }
@@ -36,14 +36,14 @@ namespace SabreTools.Metadata.DatItems.Formats
public long? Size
{
get => (_internal as Data.Models.Metadata.DataArea)?.Size;
set => (_internal as Data.Models.Metadata.DataArea)?.Size = value;
get => _internal.Size;
set => _internal.Size = value;
}
public Data.Models.Metadata.Width? Width
{
get => (_internal as Data.Models.Metadata.DataArea)?.Width;
set => (_internal as Data.Models.Metadata.DataArea)?.Width = value;
get => _internal.Width;
set => _internal.Width = value;
}
#endregion
@@ -84,7 +84,7 @@ namespace SabreTools.Metadata.DatItems.Formats
public override Data.Models.Metadata.DataArea GetInternalClone()
{
var partItem = (_internal as Data.Models.Metadata.DataArea)?.Clone() as Data.Models.Metadata.DataArea ?? new();
var partItem = _internal.Clone() as Data.Models.Metadata.DataArea ?? new();
if (Rom is not null)
partItem.Rom = Array.ConvertAll(Rom, rom => rom.GetInternalClone());
@@ -105,7 +105,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is DataArea otherDataArea)
return ((Data.Models.Metadata.DataArea)_internal).Equals((Data.Models.Metadata.DataArea)otherDataArea._internal);
return _internal.Equals(otherDataArea._internal);
// Everything else fails
return false;
@@ -120,7 +120,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is DataArea otherDataArea)
return ((Data.Models.Metadata.DataArea)_internal).Equals((Data.Models.Metadata.DataArea)otherDataArea._internal);
return _internal.Equals(otherDataArea._internal);
// Everything else fails
return false;

View File

@@ -14,8 +14,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public Data.Models.Metadata.DeviceType? DeviceType
{
get => (_internal as Data.Models.Metadata.Device)?.DeviceType;
set => (_internal as Data.Models.Metadata.Device)?.DeviceType = value;
get => _internal.DeviceType;
set => _internal.DeviceType = value;
}
public Extension[]? Extension { get; set; }
@@ -25,8 +25,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? FixedImage
{
get => (_internal as Data.Models.Metadata.Device)?.FixedImage;
set => (_internal as Data.Models.Metadata.Device)?.FixedImage = value;
get => _internal.FixedImage;
set => _internal.FixedImage = value;
}
public Instance? Instance { get; set; }
@@ -36,8 +36,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Interface
{
get => (_internal as Data.Models.Metadata.Device)?.Interface;
set => (_internal as Data.Models.Metadata.Device)?.Interface = value;
get => _internal.Interface;
set => _internal.Interface = value;
}
/// <inheritdoc>/>
@@ -46,14 +46,14 @@ namespace SabreTools.Metadata.DatItems.Formats
public bool? Mandatory
{
get => (_internal as Data.Models.Metadata.Device)?.Mandatory;
set => (_internal as Data.Models.Metadata.Device)?.Mandatory = value;
get => _internal.Mandatory;
set => _internal.Mandatory = value;
}
public string? Tag
{
get => (_internal as Data.Models.Metadata.Device)?.Tag;
set => (_internal as Data.Models.Metadata.Device)?.Tag = value;
get => _internal.Tag;
set => _internal.Tag = value;
}
#endregion
@@ -98,7 +98,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.Device GetInternalClone()
{
var deviceItem = (_internal as Data.Models.Metadata.Device)?.Clone() as Data.Models.Metadata.Device ?? new();
var deviceItem = _internal.Clone() as Data.Models.Metadata.Device ?? new();
deviceItem.DeviceType = DeviceType;
deviceItem.FixedImage = FixedImage;
@@ -128,7 +128,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Device otherDevice)
return ((Data.Models.Metadata.Device)_internal).Equals((Data.Models.Metadata.Device)otherDevice._internal);
return _internal.Equals(otherDevice._internal);
// Everything else fails
return false;
@@ -143,7 +143,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Device otherDevice)
return ((Data.Models.Metadata.Device)_internal).Equals((Data.Models.Metadata.Device)otherDevice._internal);
return _internal.Equals(otherDevice._internal);
// Everything else fails
return false;

View File

@@ -17,8 +17,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Name
{
get => (_internal as Data.Models.Metadata.DeviceRef)?.Name;
set => (_internal as Data.Models.Metadata.DeviceRef)?.Name = value;
get => _internal.Name;
set => _internal.Name = value;
}
#endregion
@@ -54,7 +54,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.DeviceRef GetInternalClone()
=> (_internal as Data.Models.Metadata.DeviceRef)?.Clone() as Data.Models.Metadata.DeviceRef ?? new();
=> _internal.Clone() as Data.Models.Metadata.DeviceRef ?? new();
#endregion
@@ -69,7 +69,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is DeviceRef otherDeviceRef)
return ((Data.Models.Metadata.DeviceRef)_internal).Equals((Data.Models.Metadata.DeviceRef)otherDeviceRef._internal);
return _internal.Equals(otherDeviceRef._internal);
// Everything else fails
return false;
@@ -84,7 +84,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is DeviceRef otherDeviceRef)
return ((Data.Models.Metadata.DeviceRef)_internal).Equals((Data.Models.Metadata.DeviceRef)otherDeviceRef._internal);
return _internal.Equals(otherDeviceRef._internal);
// Everything else fails
return false;

View File

@@ -13,8 +13,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public bool? Inverted
{
get => (_internal as Data.Models.Metadata.DipLocation)?.Inverted;
set => (_internal as Data.Models.Metadata.DipLocation)?.Inverted = value;
get => _internal.Inverted;
set => _internal.Inverted = value;
}
/// <inheritdoc>/>
@@ -23,14 +23,14 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Name
{
get => (_internal as Data.Models.Metadata.DipLocation)?.Name;
set => (_internal as Data.Models.Metadata.DipLocation)?.Name = value;
get => _internal.Name;
set => _internal.Name = value;
}
public long? Number
{
get => (_internal as Data.Models.Metadata.DipLocation)?.Number;
set => (_internal as Data.Models.Metadata.DipLocation)?.Number = value;
get => _internal.Number;
set => _internal.Number = value;
}
#endregion
@@ -66,7 +66,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.DipLocation GetInternalClone()
=> (_internal as Data.Models.Metadata.DipLocation)?.Clone() as Data.Models.Metadata.DipLocation ?? new();
=> _internal.Clone() as Data.Models.Metadata.DipLocation ?? new();
#endregion
@@ -81,7 +81,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is DipLocation otherDipLocation)
return ((Data.Models.Metadata.DipLocation)_internal).Equals((Data.Models.Metadata.DipLocation)otherDipLocation._internal);
return _internal.Equals(otherDipLocation._internal);
// Everything else fails
return false;
@@ -96,7 +96,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is DipLocation otherDipLocation)
return ((Data.Models.Metadata.DipLocation)_internal).Equals((Data.Models.Metadata.DipLocation)otherDipLocation._internal);
return _internal.Equals(otherDipLocation._internal);
// Everything else fails
return false;

View File

@@ -19,8 +19,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public bool? Default
{
get => (_internal as Data.Models.Metadata.DipSwitch)?.Default;
set => (_internal as Data.Models.Metadata.DipSwitch)?.Default = value;
get => _internal.Default;
set => _internal.Default = value;
}
public DipLocation[]? DipLocation { get; set; }
@@ -44,14 +44,14 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Mask
{
get => (_internal as Data.Models.Metadata.DipSwitch)?.Mask;
set => (_internal as Data.Models.Metadata.DipSwitch)?.Mask = value;
get => _internal.Mask;
set => _internal.Mask = value;
}
public string? Name
{
get => (_internal as Data.Models.Metadata.DipSwitch)?.Name;
set => (_internal as Data.Models.Metadata.DipSwitch)?.Name = value;
get => _internal.Name;
set => _internal.Name = value;
}
public Part? Part { get; set; }
@@ -69,8 +69,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Tag
{
get => (_internal as Data.Models.Metadata.DipSwitch)?.Tag;
set => (_internal as Data.Models.Metadata.DipSwitch)?.Tag = value;
get => _internal.Tag;
set => _internal.Tag = value;
}
#endregion
@@ -121,7 +121,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.DipSwitch GetInternalClone()
{
var dipSwitchItem = (_internal as Data.Models.Metadata.DipSwitch)?.Clone() as Data.Models.Metadata.DipSwitch ?? new();
var dipSwitchItem = _internal.Clone() as Data.Models.Metadata.DipSwitch ?? new();
if (Condition is not null)
dipSwitchItem.Condition = Condition.GetInternalClone();
@@ -151,7 +151,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is DipSwitch otherDipSwitch)
return ((Data.Models.Metadata.DipSwitch)_internal).Equals((Data.Models.Metadata.DipSwitch)otherDipSwitch._internal);
return _internal.Equals(otherDipSwitch._internal);
// Everything else fails
return false;
@@ -166,7 +166,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is DipSwitch otherDipSwitch)
return ((Data.Models.Metadata.DipSwitch)_internal).Equals((Data.Models.Metadata.DipSwitch)otherDipSwitch._internal);
return _internal.Equals(otherDipSwitch._internal);
// Everything else fails
return false;

View File

@@ -18,8 +18,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public bool? Default
{
get => (_internal as Data.Models.Metadata.DipValue)?.Default;
set => (_internal as Data.Models.Metadata.DipValue)?.Default = value;
get => _internal.Default;
set => _internal.Default = value;
}
/// <inheritdoc>/>
@@ -28,14 +28,14 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Name
{
get => (_internal as Data.Models.Metadata.DipValue)?.Name;
set => (_internal as Data.Models.Metadata.DipValue)?.Name = value;
get => _internal.Name;
set => _internal.Name = value;
}
public string? Value
{
get => (_internal as Data.Models.Metadata.DipValue)?.Value;
set => (_internal as Data.Models.Metadata.DipValue)?.Value = value;
get => _internal.Value;
set => _internal.Value = value;
}
#endregion
@@ -77,7 +77,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.DipValue GetInternalClone()
{
var dipValueItem = (_internal as Data.Models.Metadata.DipValue)?.Clone() as Data.Models.Metadata.DipValue ?? new();
var dipValueItem = _internal.Clone() as Data.Models.Metadata.DipValue ?? new();
if (Condition is not null)
dipValueItem.Condition = Condition.GetInternalClone();
@@ -98,7 +98,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is DipValue otherDipValue)
return ((Data.Models.Metadata.DipValue)_internal).Equals((Data.Models.Metadata.DipValue)otherDipValue._internal);
return _internal.Equals(otherDipValue._internal);
// Everything else fails
return false;
@@ -113,7 +113,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is DipValue otherDipValue)
return ((Data.Models.Metadata.DipValue)_internal).Equals((Data.Models.Metadata.DipValue)otherDipValue._internal);
return _internal.Equals(otherDipValue._internal);
// Everything else fails
return false;

View File

@@ -22,14 +22,14 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Flags
{
get => (_internal as Data.Models.Metadata.Disk)?.Flags;
set => (_internal as Data.Models.Metadata.Disk)?.Flags = value;
get => _internal.Flags;
set => _internal.Flags = value;
}
public long? Index
{
get => (_internal as Data.Models.Metadata.Disk)?.Index;
set => (_internal as Data.Models.Metadata.Disk)?.Index = value;
get => _internal.Index;
set => _internal.Index = value;
}
/// <inheritdoc>/>
@@ -37,26 +37,26 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? MD5
{
get => (_internal as Data.Models.Metadata.Disk)?.MD5;
set => (_internal as Data.Models.Metadata.Disk)?.MD5 = value;
get => _internal.MD5;
set => _internal.MD5 = value;
}
public string? Merge
{
get => (_internal as Data.Models.Metadata.Disk)?.Merge;
set => (_internal as Data.Models.Metadata.Disk)?.Merge = value;
get => _internal.Merge;
set => _internal.Merge = value;
}
public string? Name
{
get => (_internal as Data.Models.Metadata.Disk)?.Name;
set => (_internal as Data.Models.Metadata.Disk)?.Name = value;
get => _internal.Name;
set => _internal.Name = value;
}
public bool? Optional
{
get => (_internal as Data.Models.Metadata.Disk)?.Optional;
set => (_internal as Data.Models.Metadata.Disk)?.Optional = value;
get => _internal.Optional;
set => _internal.Optional = value;
}
public Part? Part { get; set; }
@@ -74,26 +74,26 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Region
{
get => (_internal as Data.Models.Metadata.Disk)?.Region;
set => (_internal as Data.Models.Metadata.Disk)?.Region = value;
get => _internal.Region;
set => _internal.Region = value;
}
public string? SHA1
{
get => (_internal as Data.Models.Metadata.Disk)?.SHA1;
set => (_internal as Data.Models.Metadata.Disk)?.SHA1 = value;
get => _internal.SHA1;
set => _internal.SHA1 = value;
}
public ItemStatus? Status
{
get => (_internal as Data.Models.Metadata.Disk)?.Status;
set => (_internal as Data.Models.Metadata.Disk)?.Status = value;
get => _internal.Status;
set => _internal.Status = value;
}
public bool? Writable
{
get => (_internal as Data.Models.Metadata.Disk)?.Writable;
set => (_internal as Data.Models.Metadata.Disk)?.Writable = value;
get => _internal.Writable;
set => _internal.Writable = value;
}
#endregion
@@ -143,7 +143,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.Disk GetInternalClone()
=> (_internal as Data.Models.Metadata.Disk)?.Clone() as Data.Models.Metadata.Disk ?? new();
=> _internal.Clone() as Data.Models.Metadata.Disk ?? new();
/// <summary>
/// Convert a disk to the closest Rom approximation
@@ -151,7 +151,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <returns></returns>
public Rom ConvertToRom()
{
var rom = new Rom((_internal as Data.Models.Metadata.Disk).ConvertToRom()!);
var rom = new Rom(_internal.ConvertToRom()!);
// Create a DataArea if there was an existing DiskArea
if (DiskArea is not null)
@@ -182,7 +182,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Disk otherDisk)
return ((Data.Models.Metadata.Disk)_internal).PartialEquals((Data.Models.Metadata.Disk)otherDisk._internal);
return _internal.PartialEquals(otherDisk._internal);
// Everything else fails
return false;
@@ -197,7 +197,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Disk otherDisk)
return ((Data.Models.Metadata.Disk)_internal).PartialEquals((Data.Models.Metadata.Disk)otherDisk._internal);
return _internal.PartialEquals(otherDisk._internal);
// Everything else fails
return false;
@@ -208,19 +208,19 @@ namespace SabreTools.Metadata.DatItems.Formats
/// </summary>
/// <param name="other">Disk to fill information from</param>
public void FillMissingInformation(Disk other)
=> (_internal as Data.Models.Metadata.Disk).FillMissingHashes(other._internal as Data.Models.Metadata.Disk);
=> _internal.FillMissingHashes(other._internal);
/// <summary>
/// Returns if the Rom contains any hashes
/// </summary>
/// <returns>True if any hash exists, false otherwise</returns>
public bool HasHashes() => (_internal as Data.Models.Metadata.Disk)?.HasHashes() ?? false;
public bool HasHashes() => _internal.HasHashes();
/// <summary>
/// Returns if all of the hashes are set to their 0-byte values
/// </summary>
/// <returns>True if any hash matches the 0-byte value, false otherwise</returns>
public bool HasZeroHash() => (_internal as Data.Models.Metadata.Disk)?.HasZeroHash() ?? false;
public bool HasZeroHash() => _internal.HasZeroHash();
#endregion

View File

@@ -24,8 +24,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Name
{
get => (_internal as Data.Models.Metadata.DiskArea)?.Name;
set => (_internal as Data.Models.Metadata.DiskArea)?.Name = value;
get => _internal.Name;
set => _internal.Name = value;
}
#endregion
@@ -66,7 +66,7 @@ namespace SabreTools.Metadata.DatItems.Formats
public override Data.Models.Metadata.DiskArea GetInternalClone()
{
var partItem = (_internal as Data.Models.Metadata.DiskArea)?.Clone() as Data.Models.Metadata.DiskArea ?? new();
var partItem = _internal.Clone() as Data.Models.Metadata.DiskArea ?? new();
if (Disk is not null)
partItem.Disk = Array.ConvertAll(Disk, rom => rom.GetInternalClone());
@@ -87,7 +87,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is DiskArea otherDiskArea)
return ((Data.Models.Metadata.DiskArea)_internal).Equals((Data.Models.Metadata.DiskArea)otherDiskArea._internal);
return _internal.Equals(otherDiskArea._internal);
// Everything else fails
return false;
@@ -102,7 +102,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is DiskArea otherDiskArea)
return ((Data.Models.Metadata.DiskArea)_internal).Equals((Data.Models.Metadata.DiskArea)otherDiskArea._internal);
return _internal.Equals(otherDiskArea._internal);
// Everything else fails
return false;

View File

@@ -13,50 +13,50 @@ namespace SabreTools.Metadata.DatItems.Formats
public long? AspectX
{
get => (_internal as Data.Models.Metadata.Display)?.AspectX;
set => (_internal as Data.Models.Metadata.Display)?.AspectX = value;
get => _internal.AspectX;
set => _internal.AspectX = value;
}
public long? AspectY
{
get => (_internal as Data.Models.Metadata.Display)?.AspectY;
set => (_internal as Data.Models.Metadata.Display)?.AspectY = value;
get => _internal.AspectY;
set => _internal.AspectY = value;
}
public Data.Models.Metadata.DisplayType? DisplayType
{
get => (_internal as Data.Models.Metadata.Display)?.DisplayType;
set => (_internal as Data.Models.Metadata.Display)?.DisplayType = value;
get => _internal.DisplayType;
set => _internal.DisplayType = value;
}
public bool? FlipX
{
get => (_internal as Data.Models.Metadata.Display)?.FlipX;
set => (_internal as Data.Models.Metadata.Display)?.FlipX = value;
get => _internal.FlipX;
set => _internal.FlipX = value;
}
public long? HBEnd
{
get => (_internal as Data.Models.Metadata.Display)?.HBEnd;
set => (_internal as Data.Models.Metadata.Display)?.HBEnd = value;
get => _internal.HBEnd;
set => _internal.HBEnd = value;
}
public long? HBStart
{
get => (_internal as Data.Models.Metadata.Display)?.HBStart;
set => (_internal as Data.Models.Metadata.Display)?.HBStart = value;
get => _internal.HBStart;
set => _internal.HBStart = value;
}
public long? Height
{
get => (_internal as Data.Models.Metadata.Display)?.Height;
set => (_internal as Data.Models.Metadata.Display)?.Height = value;
get => _internal.Height;
set => _internal.Height = value;
}
public long? HTotal
{
get => (_internal as Data.Models.Metadata.Display)?.HTotal;
set => (_internal as Data.Models.Metadata.Display)?.HTotal = value;
get => _internal.HTotal;
set => _internal.HTotal = value;
}
/// <inheritdoc>/>
@@ -65,50 +65,50 @@ namespace SabreTools.Metadata.DatItems.Formats
public long? PixClock
{
get => (_internal as Data.Models.Metadata.Display)?.PixClock;
set => (_internal as Data.Models.Metadata.Display)?.PixClock = value;
get => _internal.PixClock;
set => _internal.PixClock = value;
}
public double? Refresh
{
get => (_internal as Data.Models.Metadata.Display)?.Refresh;
set => (_internal as Data.Models.Metadata.Display)?.Refresh = value;
get => _internal.Refresh;
set => _internal.Refresh = value;
}
public Data.Models.Metadata.Rotation? Rotate
{
get => (_internal as Data.Models.Metadata.Display)?.Rotate;
set => (_internal as Data.Models.Metadata.Display)?.Rotate = value;
get => _internal.Rotate;
set => _internal.Rotate = value;
}
public string? Tag
{
get => (_internal as Data.Models.Metadata.Display)?.Tag;
set => (_internal as Data.Models.Metadata.Display)?.Tag = value;
get => _internal.Tag;
set => _internal.Tag = value;
}
public long? VBEnd
{
get => (_internal as Data.Models.Metadata.Display)?.VBEnd;
set => (_internal as Data.Models.Metadata.Display)?.VBEnd = value;
get => _internal.VBEnd;
set => _internal.VBEnd = value;
}
public long? VBStart
{
get => (_internal as Data.Models.Metadata.Display)?.VBStart;
set => (_internal as Data.Models.Metadata.Display)?.VBStart = value;
get => _internal.VBStart;
set => _internal.VBStart = value;
}
public long? VTotal
{
get => (_internal as Data.Models.Metadata.Display)?.VTotal;
set => (_internal as Data.Models.Metadata.Display)?.VTotal = value;
get => _internal.VTotal;
set => _internal.VTotal = value;
}
public long? Width
{
get => (_internal as Data.Models.Metadata.Display)?.Width;
set => (_internal as Data.Models.Metadata.Display)?.Width = value;
get => _internal.Width;
set => _internal.Width = value;
}
#endregion
@@ -161,7 +161,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.Display GetInternalClone()
=> (_internal as Data.Models.Metadata.Display)?.Clone() as Data.Models.Metadata.Display ?? new();
=> _internal.Clone() as Data.Models.Metadata.Display ?? new();
#endregion
@@ -176,7 +176,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Display otherDisplay)
return ((Data.Models.Metadata.Display)_internal).Equals((Data.Models.Metadata.Display)otherDisplay._internal);
return _internal.Equals(otherDisplay._internal);
// Everything else fails
return false;
@@ -191,7 +191,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Display otherDisplay)
return ((Data.Models.Metadata.Display)_internal).Equals((Data.Models.Metadata.Display)otherDisplay._internal);
return _internal.Equals(otherDisplay._internal);
// Everything else fails
return false;

View File

@@ -13,32 +13,32 @@ namespace SabreTools.Metadata.DatItems.Formats
public Data.Models.Metadata.Blit? Blit
{
get => (_internal as Data.Models.Metadata.Driver)?.Blit;
set => (_internal as Data.Models.Metadata.Driver)?.Blit = value;
get => _internal.Blit;
set => _internal.Blit = value;
}
public Data.Models.Metadata.SupportStatus? Cocktail
{
get => (_internal as Data.Models.Metadata.Driver)?.Cocktail;
set => (_internal as Data.Models.Metadata.Driver)?.Cocktail = value;
get => _internal.Cocktail;
set => _internal.Cocktail = value;
}
public Data.Models.Metadata.SupportStatus? Color
{
get => (_internal as Data.Models.Metadata.Driver)?.Color;
set => (_internal as Data.Models.Metadata.Driver)?.Color = value;
get => _internal.Color;
set => _internal.Color = value;
}
public Data.Models.Metadata.SupportStatus? Emulation
{
get => (_internal as Data.Models.Metadata.Driver)?.Emulation;
set => (_internal as Data.Models.Metadata.Driver)?.Emulation = value;
get => _internal.Emulation;
set => _internal.Emulation = value;
}
public bool? Incomplete
{
get => (_internal as Data.Models.Metadata.Driver)?.Incomplete;
set => (_internal as Data.Models.Metadata.Driver)?.Incomplete = value;
get => _internal.Incomplete;
set => _internal.Incomplete = value;
}
/// <inheritdoc>/>
@@ -47,44 +47,44 @@ namespace SabreTools.Metadata.DatItems.Formats
public bool? NoSoundHardware
{
get => (_internal as Data.Models.Metadata.Driver)?.NoSoundHardware;
set => (_internal as Data.Models.Metadata.Driver)?.NoSoundHardware = value;
get => _internal.NoSoundHardware;
set => _internal.NoSoundHardware = value;
}
public string? PaletteSize
{
get => (_internal as Data.Models.Metadata.Driver)?.PaletteSize;
set => (_internal as Data.Models.Metadata.Driver)?.PaletteSize = value;
get => _internal.PaletteSize;
set => _internal.PaletteSize = value;
}
public bool? RequiresArtwork
{
get => (_internal as Data.Models.Metadata.Driver)?.RequiresArtwork;
set => (_internal as Data.Models.Metadata.Driver)?.RequiresArtwork = value;
get => _internal.RequiresArtwork;
set => _internal.RequiresArtwork = value;
}
public Data.Models.Metadata.Supported? SaveState
{
get => (_internal as Data.Models.Metadata.Driver)?.SaveState;
set => (_internal as Data.Models.Metadata.Driver)?.SaveState = value;
get => _internal.SaveState;
set => _internal.SaveState = value;
}
public Data.Models.Metadata.SupportStatus? Sound
{
get => (_internal as Data.Models.Metadata.Driver)?.Sound;
set => (_internal as Data.Models.Metadata.Driver)?.Sound = value;
get => _internal.Sound;
set => _internal.Sound = value;
}
public Data.Models.Metadata.SupportStatus? Status
{
get => (_internal as Data.Models.Metadata.Driver)?.Status;
set => (_internal as Data.Models.Metadata.Driver)?.Status = value;
get => _internal.Status;
set => _internal.Status = value;
}
public bool? Unofficial
{
get => (_internal as Data.Models.Metadata.Driver)?.Unofficial;
set => (_internal as Data.Models.Metadata.Driver)?.Unofficial = value;
get => _internal.Unofficial;
set => _internal.Unofficial = value;
}
#endregion
@@ -120,7 +120,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.Driver GetInternalClone()
=> (_internal as Data.Models.Metadata.Driver)?.Clone() as Data.Models.Metadata.Driver ?? new();
=> _internal.Clone() as Data.Models.Metadata.Driver ?? new();
#endregion
@@ -135,7 +135,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Driver otherDriver)
return ((Data.Models.Metadata.Driver)_internal).Equals((Data.Models.Metadata.Driver)otherDriver._internal);
return _internal.Equals(otherDriver._internal);
// Everything else fails
return false;
@@ -150,7 +150,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Driver otherDriver)
return ((Data.Models.Metadata.Driver)_internal).Equals((Data.Models.Metadata.Driver)otherDriver._internal);
return _internal.Equals(otherDriver._internal);
// Everything else fails
return false;

View File

@@ -17,8 +17,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Name
{
get => (_internal as Data.Models.Metadata.Extension)?.Name;
set => (_internal as Data.Models.Metadata.Extension)?.Name = value;
get => _internal.Name;
set => _internal.Name = value;
}
#endregion
@@ -54,7 +54,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.Extension GetInternalClone()
=> (_internal as Data.Models.Metadata.Extension)?.Clone() as Data.Models.Metadata.Extension ?? new();
=> _internal.Clone() as Data.Models.Metadata.Extension ?? new();
#endregion
@@ -69,7 +69,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Extension otherExtension)
return ((Data.Models.Metadata.Extension)_internal).Equals((Data.Models.Metadata.Extension)otherExtension._internal);
return _internal.Equals(otherExtension._internal);
// Everything else fails
return false;
@@ -84,7 +84,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Extension otherExtension)
return ((Data.Models.Metadata.Extension)_internal).Equals((Data.Models.Metadata.Extension)otherExtension._internal);
return _internal.Equals(otherExtension._internal);
// Everything else fails
return false;

View File

@@ -13,8 +13,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public Data.Models.Metadata.FeatureType? FeatureType
{
get => (_internal as Data.Models.Metadata.Feature)?.FeatureType;
set => (_internal as Data.Models.Metadata.Feature)?.FeatureType = value;
get => _internal.FeatureType;
set => _internal.FeatureType = value;
}
/// <inheritdoc>/>
@@ -23,26 +23,26 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Name
{
get => (_internal as Data.Models.Metadata.Feature)?.Name;
set => (_internal as Data.Models.Metadata.Feature)?.Name = value;
get => _internal.Name;
set => _internal.Name = value;
}
public Data.Models.Metadata.FeatureStatus? Overall
{
get => (_internal as Data.Models.Metadata.Feature)?.Overall;
set => (_internal as Data.Models.Metadata.Feature)?.Overall = value;
get => _internal.Overall;
set => _internal.Overall = value;
}
public Data.Models.Metadata.FeatureStatus? Status
{
get => (_internal as Data.Models.Metadata.Feature)?.Status;
set => (_internal as Data.Models.Metadata.Feature)?.Status = value;
get => _internal.Status;
set => _internal.Status = value;
}
public string? Value
{
get => (_internal as Data.Models.Metadata.Feature)?.Value;
set => (_internal as Data.Models.Metadata.Feature)?.Value = value;
get => _internal.Value;
set => _internal.Value = value;
}
#endregion
@@ -78,7 +78,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.Feature GetInternalClone()
=> (_internal as Data.Models.Metadata.Feature)?.Clone() as Data.Models.Metadata.Feature ?? new();
=> _internal.Clone() as Data.Models.Metadata.Feature ?? new();
#endregion
@@ -93,7 +93,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Feature otherFeature)
return ((Data.Models.Metadata.Feature)_internal).Equals((Data.Models.Metadata.Feature)otherFeature._internal);
return _internal.Equals(otherFeature._internal);
// Everything else fails
return false;
@@ -108,7 +108,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Feature otherFeature)
return ((Data.Models.Metadata.Feature)_internal).Equals((Data.Models.Metadata.Feature)otherFeature._internal);
return _internal.Equals(otherFeature._internal);
// Everything else fails
return false;

View File

@@ -4,6 +4,7 @@ using Newtonsoft.Json;
using SabreTools.Data.Extensions;
using SabreTools.Hashing;
using SabreTools.IO.Extensions;
using SabreTools.Metadata.Filter;
using SabreTools.Text.Extensions;
// TODO: Add item mappings for all fields
@@ -327,5 +328,17 @@ namespace SabreTools.Metadata.DatItems.Formats
}
#endregion
#region Manipulation
/// <inheritdoc/>
/// <remarks>Not implemented</remarks>
public override bool PassesFilter(FilterRunner filterRunner) => false;
/// <inheritdoc/>
/// <remarks>Not implemented</remarks>
public override bool PassesFilterDB(FilterRunner filterRunner) => false;
#endregion
}
}

View File

@@ -17,14 +17,14 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Name
{
get => (_internal as Data.Models.Metadata.Info)?.Name;
set => (_internal as Data.Models.Metadata.Info)?.Name = value;
get => _internal.Name;
set => _internal.Name = value;
}
public string? Value
{
get => (_internal as Data.Models.Metadata.Info)?.Value;
set => (_internal as Data.Models.Metadata.Info)?.Value = value;
get => _internal.Value;
set => _internal.Value = value;
}
#endregion
@@ -60,7 +60,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.Info GetInternalClone()
=> (_internal as Data.Models.Metadata.Info)?.Clone() as Data.Models.Metadata.Info ?? new();
=> _internal.Clone() as Data.Models.Metadata.Info ?? new();
#endregion
@@ -75,7 +75,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Info otherInfo)
return ((Data.Models.Metadata.Info)_internal).Equals((Data.Models.Metadata.Info)otherInfo._internal);
return _internal.Equals(otherInfo._internal);
// Everything else fails
return false;
@@ -90,7 +90,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Info otherInfo)
return ((Data.Models.Metadata.Info)_internal).Equals((Data.Models.Metadata.Info)otherInfo._internal);
return _internal.Equals(otherInfo._internal);
// Everything else fails
return false;

View File

@@ -14,14 +14,14 @@ namespace SabreTools.Metadata.DatItems.Formats
public long? Buttons
{
get => (_internal as Data.Models.Metadata.Input)?.Buttons;
set => (_internal as Data.Models.Metadata.Input)?.Buttons = value;
get => _internal.Buttons;
set => _internal.Buttons = value;
}
public long? Coins
{
get => (_internal as Data.Models.Metadata.Input)?.Coins;
set => (_internal as Data.Models.Metadata.Input)?.Coins = value;
get => _internal.Coins;
set => _internal.Coins = value;
}
public Control[]? Control { get; set; }
@@ -31,8 +31,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? ControlAttr
{
get => (_internal as Data.Models.Metadata.Input)?.ControlAttr;
set => (_internal as Data.Models.Metadata.Input)?.ControlAttr = value;
get => _internal.ControlAttr;
set => _internal.ControlAttr = value;
}
/// <inheritdoc>/>
@@ -41,20 +41,20 @@ namespace SabreTools.Metadata.DatItems.Formats
public long? Players
{
get => (_internal as Data.Models.Metadata.Input)?.Players;
set => (_internal as Data.Models.Metadata.Input)?.Players = value;
get => _internal.Players;
set => _internal.Players = value;
}
public bool? Service
{
get => (_internal as Data.Models.Metadata.Input)?.Service;
set => (_internal as Data.Models.Metadata.Input)?.Service = value;
get => _internal.Service;
set => _internal.Service = value;
}
public bool? Tilt
{
get => (_internal as Data.Models.Metadata.Input)?.Tilt;
set => (_internal as Data.Models.Metadata.Input)?.Tilt = value;
get => _internal.Tilt;
set => _internal.Tilt = value;
}
#endregion
@@ -96,7 +96,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.Input GetInternalClone()
{
var inputItem = (_internal as Data.Models.Metadata.Input)?.Clone() as Data.Models.Metadata.Input ?? new();
var inputItem = _internal.Clone() as Data.Models.Metadata.Input ?? new();
if (Control is not null)
inputItem.Control = Array.ConvertAll(Control, control => control.GetInternalClone());
@@ -117,7 +117,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Input otherInput)
return ((Data.Models.Metadata.Input)_internal).Equals((Data.Models.Metadata.Input)otherInput._internal);
return _internal.Equals(otherInput._internal);
// Everything else fails
return false;
@@ -132,7 +132,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Input otherInput)
return ((Data.Models.Metadata.Input)_internal).Equals((Data.Models.Metadata.Input)otherInput._internal);
return _internal.Equals(otherInput._internal);
// Everything else fails
return false;

View File

@@ -13,8 +13,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? BriefName
{
get => (_internal as Data.Models.Metadata.Instance)?.BriefName;
set => (_internal as Data.Models.Metadata.Instance)?.BriefName = value;
get => _internal.BriefName;
set => _internal.BriefName = value;
}
/// <inheritdoc>/>
@@ -23,8 +23,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Name
{
get => (_internal as Data.Models.Metadata.Instance)?.Name;
set => (_internal as Data.Models.Metadata.Instance)?.Name = value;
get => _internal.Name;
set => _internal.Name = value;
}
#endregion
@@ -60,7 +60,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.Instance GetInternalClone()
=> (_internal as Data.Models.Metadata.Instance)?.Clone() as Data.Models.Metadata.Instance ?? new();
=> _internal.Clone() as Data.Models.Metadata.Instance ?? new();
#endregion
@@ -75,7 +75,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Instance otherInstance)
return ((Data.Models.Metadata.Instance)_internal).Equals((Data.Models.Metadata.Instance)otherInstance._internal);
return _internal.Equals(otherInstance._internal);
// Everything else fails
return false;
@@ -90,7 +90,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Instance otherInstance)
return ((Data.Models.Metadata.Instance)_internal).Equals((Data.Models.Metadata.Instance)otherInstance._internal);
return _internal.Equals(otherInstance._internal);
// Everything else fails
return false;

View File

@@ -15,8 +15,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? MD5
{
get => (_internal as Data.Models.Metadata.Media)?.MD5;
set => (_internal as Data.Models.Metadata.Media)?.MD5 = value;
get => _internal.MD5;
set => _internal.MD5 = value;
}
/// <inheritdoc>/>
@@ -25,26 +25,26 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Name
{
get => (_internal as Data.Models.Metadata.Media)?.Name;
set => (_internal as Data.Models.Metadata.Media)?.Name = value;
get => _internal.Name;
set => _internal.Name = value;
}
public string? SHA1
{
get => (_internal as Data.Models.Metadata.Media)?.SHA1;
set => (_internal as Data.Models.Metadata.Media)?.SHA1 = value;
get => _internal.SHA1;
set => _internal.SHA1 = value;
}
public string? SHA256
{
get => (_internal as Data.Models.Metadata.Media)?.SHA256;
set => (_internal as Data.Models.Metadata.Media)?.SHA256 = value;
get => _internal.SHA256;
set => _internal.SHA256 = value;
}
public string? SpamSum
{
get => (_internal as Data.Models.Metadata.Media)?.SpamSum;
set => (_internal as Data.Models.Metadata.Media)?.SpamSum = value;
get => _internal.SpamSum;
set => _internal.SpamSum = value;
}
#endregion
@@ -96,7 +96,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.Media GetInternalClone()
=> (_internal as Data.Models.Metadata.Media)?.Clone() as Data.Models.Metadata.Media ?? new();
=> _internal.Clone() as Data.Models.Metadata.Media ?? new();
/// <summary>
/// Convert a media to the closest Rom approximation
@@ -104,7 +104,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <returns></returns>
public Rom ConvertToRom()
{
var rom = new Rom((_internal as Data.Models.Metadata.Media).ConvertToRom()!);
var rom = new Rom(_internal.ConvertToRom()!);
rom.DupeType = DupeType;
rom.Machine = Machine?.Clone() as Machine;
@@ -127,7 +127,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Media otherMedia)
return ((Data.Models.Metadata.Media)_internal).PartialEquals((Data.Models.Metadata.Media)otherMedia._internal);
return _internal.PartialEquals(otherMedia._internal);
// Everything else fails
return false;
@@ -142,7 +142,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Media otherMedia)
return ((Data.Models.Metadata.Media)_internal).PartialEquals((Data.Models.Metadata.Media)otherMedia._internal);
return _internal.PartialEquals(otherMedia._internal);
// Everything else fails
return false;
@@ -153,19 +153,19 @@ namespace SabreTools.Metadata.DatItems.Formats
/// </summary>
/// <param name="other">Media to fill information from</param>
public void FillMissingInformation(Media other)
=> (_internal as Data.Models.Metadata.Media).FillMissingHashes(other._internal as Data.Models.Metadata.Media);
=> _internal.FillMissingHashes(other._internal);
/// <summary>
/// Returns if the Rom contains any hashes
/// </summary>
/// <returns>True if any hash exists, false otherwise</returns>
public bool HasHashes() => (_internal as Data.Models.Metadata.Media)?.HasHashes() ?? false;
public bool HasHashes() => _internal.HasHashes();
/// <summary>
/// Returns if all of the hashes are set to their 0-byte values
/// </summary>
/// <returns>True if any hash matches the 0-byte value, false otherwise</returns>
public bool HasZeroHash() => (_internal as Data.Models.Metadata.Media)?.HasZeroHash() ?? false;
public bool HasZeroHash() => _internal.HasZeroHash();
#endregion

View File

@@ -35,8 +35,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Interface
{
get => (_internal as Data.Models.Metadata.Part)?.Interface;
set => (_internal as Data.Models.Metadata.Part)?.Interface = value;
get => _internal.Interface;
set => _internal.Interface = value;
}
/// <inheritdoc>/>
@@ -45,8 +45,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Name
{
get => (_internal as Data.Models.Metadata.Part)?.Name;
set => (_internal as Data.Models.Metadata.Part)?.Name = value;
get => _internal.Name;
set => _internal.Name = value;
}
#endregion
@@ -97,7 +97,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.Part GetInternalClone()
{
var partItem = (_internal as Data.Models.Metadata.Part)?.Clone() as Data.Models.Metadata.Part ?? new();
var partItem = _internal.Clone() as Data.Models.Metadata.Part ?? new();
if (DataArea is not null)
partItem.DataArea = Array.ConvertAll(DataArea, dataArea => dataArea.GetInternalClone());
@@ -127,7 +127,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Part otherPart)
return ((Data.Models.Metadata.Part)_internal).Equals((Data.Models.Metadata.Part)otherPart._internal);
return _internal.Equals(otherPart._internal);
// Everything else fails
return false;
@@ -142,7 +142,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Part otherPart)
return ((Data.Models.Metadata.Part)_internal).Equals((Data.Models.Metadata.Part)otherPart._internal);
return _internal.Equals(otherPart._internal);
// Everything else fails
return false;

View File

@@ -13,8 +13,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public Data.Models.Metadata.FeatureType? FeatureType
{
get => (_internal as Data.Models.Metadata.Feature)?.FeatureType;
set => (_internal as Data.Models.Metadata.Feature)?.FeatureType = value;
get => _internal.FeatureType;
set => _internal.FeatureType = value;
}
/// <inheritdoc>/>
@@ -23,14 +23,14 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Name
{
get => (_internal as Data.Models.Metadata.Feature)?.Name;
set => (_internal as Data.Models.Metadata.Feature)?.Name = value;
get => _internal.Name;
set => _internal.Name = value;
}
public Data.Models.Metadata.FeatureStatus? Overall
{
get => (_internal as Data.Models.Metadata.Feature)?.Overall;
set => (_internal as Data.Models.Metadata.Feature)?.Overall = value;
get => _internal.Overall;
set => _internal.Overall = value;
}
public Part? Part { get; set; }
@@ -40,14 +40,14 @@ namespace SabreTools.Metadata.DatItems.Formats
public Data.Models.Metadata.FeatureStatus? Status
{
get => (_internal as Data.Models.Metadata.Feature)?.Status;
set => (_internal as Data.Models.Metadata.Feature)?.Status = value;
get => _internal.Status;
set => _internal.Status = value;
}
public string? Value
{
get => (_internal as Data.Models.Metadata.Feature)?.Value;
set => (_internal as Data.Models.Metadata.Feature)?.Value = value;
get => _internal.Value;
set => _internal.Value = value;
}
#endregion
@@ -83,7 +83,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.Feature GetInternalClone()
=> (_internal as Data.Models.Metadata.Feature)?.Clone() as Data.Models.Metadata.Feature ?? new();
=> _internal.Clone() as Data.Models.Metadata.Feature ?? new();
#endregion
@@ -98,7 +98,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is PartFeature otherPartFeature)
return ((Data.Models.Metadata.Feature)_internal).Equals((Data.Models.Metadata.Feature)otherPartFeature._internal);
return _internal.Equals(otherPartFeature._internal);
// Everything else fails
return false;
@@ -113,7 +113,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is PartFeature otherPartFeature)
return ((Data.Models.Metadata.Feature)_internal).Equals((Data.Models.Metadata.Feature)otherPartFeature._internal);
return _internal.Equals(otherPartFeature._internal);
// Everything else fails
return false;

View File

@@ -23,8 +23,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Tag
{
get => (_internal as Data.Models.Metadata.Port)?.Tag;
set => (_internal as Data.Models.Metadata.Port)?.Tag = value;
get => _internal.Tag;
set => _internal.Tag = value;
}
#endregion
@@ -66,7 +66,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.Port GetInternalClone()
{
var portItem = (_internal as Data.Models.Metadata.Port)?.Clone() as Data.Models.Metadata.Port ?? new();
var portItem = _internal.Clone() as Data.Models.Metadata.Port ?? new();
if (Analog is not null)
portItem.Analog = Array.ConvertAll(Analog, analog => analog.GetInternalClone());
@@ -87,7 +87,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Port otherPort)
return ((Data.Models.Metadata.Port)_internal).Equals((Data.Models.Metadata.Port)otherPort._internal);
return _internal.Equals(otherPort._internal);
// Everything else fails
return false;
@@ -102,7 +102,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Port otherPort)
return ((Data.Models.Metadata.Port)_internal).Equals((Data.Models.Metadata.Port)otherPort._internal);
return _internal.Equals(otherPort._internal);
// Everything else fails
return false;

View File

@@ -13,14 +13,14 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Content
{
get => (_internal as Data.Models.Metadata.RamOption)?.Content;
set => (_internal as Data.Models.Metadata.RamOption)?.Content = value;
get => _internal.Content;
set => _internal.Content = value;
}
public bool? Default
{
get => (_internal as Data.Models.Metadata.RamOption)?.Default;
set => (_internal as Data.Models.Metadata.RamOption)?.Default = value;
get => _internal.Default;
set => _internal.Default = value;
}
/// <inheritdoc>/>
@@ -29,8 +29,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Name
{
get => (_internal as Data.Models.Metadata.RamOption)?.Name;
set => (_internal as Data.Models.Metadata.RamOption)?.Name = value;
get => _internal.Name;
set => _internal.Name = value;
}
#endregion
@@ -66,7 +66,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.RamOption GetInternalClone()
=> (_internal as Data.Models.Metadata.RamOption)?.Clone() as Data.Models.Metadata.RamOption ?? new();
=> _internal.Clone() as Data.Models.Metadata.RamOption ?? new();
#endregion
@@ -81,7 +81,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is RamOption otherRamOption)
return ((Data.Models.Metadata.RamOption)_internal).Equals((Data.Models.Metadata.RamOption)otherRamOption._internal);
return _internal.Equals(otherRamOption._internal);
// Everything else fails
return false;
@@ -96,7 +96,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is RamOption otherRamOption)
return ((Data.Models.Metadata.RamOption)_internal).Equals((Data.Models.Metadata.RamOption)otherRamOption._internal);
return _internal.Equals(otherRamOption._internal);
// Everything else fails
return false;

View File

@@ -13,14 +13,14 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Date
{
get => (_internal as Data.Models.Metadata.Release)?.Date;
set => (_internal as Data.Models.Metadata.Release)?.Date = value;
get => _internal.Date;
set => _internal.Date = value;
}
public bool? Default
{
get => (_internal as Data.Models.Metadata.Release)?.Default;
set => (_internal as Data.Models.Metadata.Release)?.Default = value;
get => _internal.Default;
set => _internal.Default = value;
}
/// <inheritdoc>/>
@@ -29,20 +29,20 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Language
{
get => (_internal as Data.Models.Metadata.Release)?.Language;
set => (_internal as Data.Models.Metadata.Release)?.Language = value;
get => _internal.Language;
set => _internal.Language = value;
}
public string? Name
{
get => (_internal as Data.Models.Metadata.Release)?.Name;
set => (_internal as Data.Models.Metadata.Release)?.Name = value;
get => _internal.Name;
set => _internal.Name = value;
}
public string? Region
{
get => (_internal as Data.Models.Metadata.Release)?.Region;
set => (_internal as Data.Models.Metadata.Release)?.Region = value;
get => _internal.Region;
set => _internal.Region = value;
}
#endregion
@@ -78,7 +78,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.Release GetInternalClone()
=> (_internal as Data.Models.Metadata.Release)?.Clone() as Data.Models.Metadata.Release ?? new();
=> _internal.Clone() as Data.Models.Metadata.Release ?? new();
#endregion
@@ -93,7 +93,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Release otherRelease)
return ((Data.Models.Metadata.Release)_internal).Equals((Data.Models.Metadata.Release)otherRelease._internal);
return _internal.Equals(otherRelease._internal);
// Everything else fails
return false;
@@ -108,7 +108,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Release otherRelease)
return ((Data.Models.Metadata.Release)_internal).Equals((Data.Models.Metadata.Release)otherRelease._internal);
return _internal.Equals(otherRelease._internal);
// Everything else fails
return false;

View File

@@ -13,50 +13,50 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? AppendToNumber
{
get => (_internal as Data.Models.Metadata.ReleaseDetails)?.AppendToNumber;
set => (_internal as Data.Models.Metadata.ReleaseDetails)?.AppendToNumber = value;
get => _internal.AppendToNumber;
set => _internal.AppendToNumber = value;
}
public string? ArchiveName
{
get => (_internal as Data.Models.Metadata.ReleaseDetails)?.ArchiveName;
set => (_internal as Data.Models.Metadata.ReleaseDetails)?.ArchiveName = value;
get => _internal.ArchiveName;
set => _internal.ArchiveName = value;
}
public string? Category
{
get => (_internal as Data.Models.Metadata.ReleaseDetails)?.Category;
set => (_internal as Data.Models.Metadata.ReleaseDetails)?.Category = value;
get => _internal.Category;
set => _internal.Category = value;
}
public string? Comment
{
get => (_internal as Data.Models.Metadata.ReleaseDetails)?.Comment;
set => (_internal as Data.Models.Metadata.ReleaseDetails)?.Comment = value;
get => _internal.Comment;
set => _internal.Comment = value;
}
public string? Date
{
get => (_internal as Data.Models.Metadata.ReleaseDetails)?.Date;
set => (_internal as Data.Models.Metadata.ReleaseDetails)?.Date = value;
get => _internal.Date;
set => _internal.Date = value;
}
public string? DirName
{
get => (_internal as Data.Models.Metadata.ReleaseDetails)?.DirName;
set => (_internal as Data.Models.Metadata.ReleaseDetails)?.DirName = value;
get => _internal.DirName;
set => _internal.DirName = value;
}
public string? Group
{
get => (_internal as Data.Models.Metadata.ReleaseDetails)?.Group;
set => (_internal as Data.Models.Metadata.ReleaseDetails)?.Group = value;
get => _internal.Group;
set => _internal.Group = value;
}
public string? Id
{
get => (_internal as Data.Models.Metadata.ReleaseDetails)?.Id;
set => (_internal as Data.Models.Metadata.ReleaseDetails)?.Id = value;
get => _internal.Id;
set => _internal.Id = value;
}
/// <inheritdoc>/>
@@ -65,50 +65,50 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? NfoCRC
{
get => (_internal as Data.Models.Metadata.ReleaseDetails)?.NfoCRC;
set => (_internal as Data.Models.Metadata.ReleaseDetails)?.NfoCRC = value;
get => _internal.NfoCRC;
set => _internal.NfoCRC = value;
}
public string? NfoName
{
get => (_internal as Data.Models.Metadata.ReleaseDetails)?.NfoName;
set => (_internal as Data.Models.Metadata.ReleaseDetails)?.NfoName = value;
get => _internal.NfoName;
set => _internal.NfoName = value;
}
public string? NfoSize
{
get => (_internal as Data.Models.Metadata.ReleaseDetails)?.NfoSize;
set => (_internal as Data.Models.Metadata.ReleaseDetails)?.NfoSize = value;
get => _internal.NfoSize;
set => _internal.NfoSize = value;
}
public string? Origin
{
get => (_internal as Data.Models.Metadata.ReleaseDetails)?.Origin;
set => (_internal as Data.Models.Metadata.ReleaseDetails)?.Origin = value;
get => _internal.Origin;
set => _internal.Origin = value;
}
public string? OriginalFormat
{
get => (_internal as Data.Models.Metadata.ReleaseDetails)?.OriginalFormat;
set => (_internal as Data.Models.Metadata.ReleaseDetails)?.OriginalFormat = value;
get => _internal.OriginalFormat;
set => _internal.OriginalFormat = value;
}
public string? Region
{
get => (_internal as Data.Models.Metadata.ReleaseDetails)?.Region;
set => (_internal as Data.Models.Metadata.ReleaseDetails)?.Region = value;
get => _internal.Region;
set => _internal.Region = value;
}
public string? RomInfo
{
get => (_internal as Data.Models.Metadata.ReleaseDetails)?.RomInfo;
set => (_internal as Data.Models.Metadata.ReleaseDetails)?.RomInfo = value;
get => _internal.RomInfo;
set => _internal.RomInfo = value;
}
public string? Tool
{
get => (_internal as Data.Models.Metadata.ReleaseDetails)?.Tool;
set => (_internal as Data.Models.Metadata.ReleaseDetails)?.Tool = value;
get => _internal.Tool;
set => _internal.Tool = value;
}
#endregion
@@ -143,7 +143,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.ReleaseDetails GetInternalClone()
=> (_internal as Data.Models.Metadata.ReleaseDetails)?.Clone() as Data.Models.Metadata.ReleaseDetails ?? new();
=> _internal.Clone() as Data.Models.Metadata.ReleaseDetails ?? new();
#endregion
@@ -158,7 +158,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is ReleaseDetails otherReleaseDetails)
return ((Data.Models.Metadata.ReleaseDetails)_internal).Equals((Data.Models.Metadata.ReleaseDetails)otherReleaseDetails._internal);
return _internal.Equals(otherReleaseDetails._internal);
// Everything else fails
return false;
@@ -173,7 +173,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is ReleaseDetails otherReleaseDetails)
return ((Data.Models.Metadata.ReleaseDetails)_internal).Equals((Data.Models.Metadata.ReleaseDetails)otherReleaseDetails._internal);
return _internal.Equals(otherReleaseDetails._internal);
// Everything else fails
return false;

View File

@@ -16,104 +16,104 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Album
{
get => (_internal as Data.Models.Metadata.Rom)?.Album;
set => (_internal as Data.Models.Metadata.Rom)?.Album = value;
get => _internal.Album;
set => _internal.Album = value;
}
public string? AltRomname
{
get => (_internal as Data.Models.Metadata.Rom)?.AltRomname;
set => (_internal as Data.Models.Metadata.Rom)?.AltRomname = value;
get => _internal.AltRomname;
set => _internal.AltRomname = value;
}
public string? AltTitle
{
get => (_internal as Data.Models.Metadata.Rom)?.AltTitle;
set => (_internal as Data.Models.Metadata.Rom)?.AltTitle = value;
get => _internal.AltTitle;
set => _internal.AltTitle = value;
}
public string? Artist
{
get => (_internal as Data.Models.Metadata.Rom)?.Artist;
set => (_internal as Data.Models.Metadata.Rom)?.Artist = value;
get => _internal.Artist;
set => _internal.Artist = value;
}
public string? ASRDetectedLang
{
get => (_internal as Data.Models.Metadata.Rom)?.ASRDetectedLang;
set => (_internal as Data.Models.Metadata.Rom)?.ASRDetectedLang = value;
get => _internal.ASRDetectedLang;
set => _internal.ASRDetectedLang = value;
}
public string? ASRDetectedLangConf
{
get => (_internal as Data.Models.Metadata.Rom)?.ASRDetectedLangConf;
set => (_internal as Data.Models.Metadata.Rom)?.ASRDetectedLangConf = value;
get => _internal.ASRDetectedLangConf;
set => _internal.ASRDetectedLangConf = value;
}
public string? ASRTranscribedLang
{
get => (_internal as Data.Models.Metadata.Rom)?.ASRTranscribedLang;
set => (_internal as Data.Models.Metadata.Rom)?.ASRTranscribedLang = value;
get => _internal.ASRTranscribedLang;
set => _internal.ASRTranscribedLang = value;
}
public string? Bios
{
get => (_internal as Data.Models.Metadata.Rom)?.Bios;
set => (_internal as Data.Models.Metadata.Rom)?.Bios = value;
get => _internal.Bios;
set => _internal.Bios = value;
}
public string? Bitrate
{
get => (_internal as Data.Models.Metadata.Rom)?.Bitrate;
set => (_internal as Data.Models.Metadata.Rom)?.Bitrate = value;
get => _internal.Bitrate;
set => _internal.Bitrate = value;
}
public string? BitTorrentMagnetHash
{
get => (_internal as Data.Models.Metadata.Rom)?.BitTorrentMagnetHash;
set => (_internal as Data.Models.Metadata.Rom)?.BitTorrentMagnetHash = value;
get => _internal.BitTorrentMagnetHash;
set => _internal.BitTorrentMagnetHash = value;
}
public string? ClothCoverDetectionModuleVersion
{
get => (_internal as Data.Models.Metadata.Rom)?.ClothCoverDetectionModuleVersion;
set => (_internal as Data.Models.Metadata.Rom)?.ClothCoverDetectionModuleVersion = value;
get => _internal.ClothCoverDetectionModuleVersion;
set => _internal.ClothCoverDetectionModuleVersion = value;
}
public string? CollectionCatalogNumber
{
get => (_internal as Data.Models.Metadata.Rom)?.CollectionCatalogNumber;
set => (_internal as Data.Models.Metadata.Rom)?.CollectionCatalogNumber = value;
get => _internal.CollectionCatalogNumber;
set => _internal.CollectionCatalogNumber = value;
}
public string? Comment
{
get => (_internal as Data.Models.Metadata.Rom)?.Comment;
set => (_internal as Data.Models.Metadata.Rom)?.Comment = value;
get => _internal.Comment;
set => _internal.Comment = value;
}
public string? CRC
{
get => (_internal as Data.Models.Metadata.Rom)?.CRC;
set => (_internal as Data.Models.Metadata.Rom)?.CRC = value;
get => _internal.CRC;
set => _internal.CRC = value;
}
public string? CRC16
{
get => (_internal as Data.Models.Metadata.Rom)?.CRC16;
set => (_internal as Data.Models.Metadata.Rom)?.CRC16 = value;
get => _internal.CRC16;
set => _internal.CRC16 = value;
}
public string? CRC64
{
get => (_internal as Data.Models.Metadata.Rom)?.CRC64;
set => (_internal as Data.Models.Metadata.Rom)?.CRC64 = value;
get => _internal.CRC64;
set => _internal.CRC64 = value;
}
public string? Creator
{
get => (_internal as Data.Models.Metadata.Rom)?.Creator;
set => (_internal as Data.Models.Metadata.Rom)?.Creator = value;
get => _internal.Creator;
set => _internal.Creator = value;
}
public DataArea? DataArea { get; set; }
@@ -133,104 +133,104 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Date
{
get => (_internal as Data.Models.Metadata.Rom)?.Date;
set => (_internal as Data.Models.Metadata.Rom)?.Date = value;
get => _internal.Date;
set => _internal.Date = value;
}
public bool? Dispose
{
get => (_internal as Data.Models.Metadata.Rom)?.Dispose;
set => (_internal as Data.Models.Metadata.Rom)?.Dispose = value;
get => _internal.Dispose;
set => _internal.Dispose = value;
}
public string? Extension
{
get => (_internal as Data.Models.Metadata.Rom)?.Extension;
set => (_internal as Data.Models.Metadata.Rom)?.Extension = value;
get => _internal.Extension;
set => _internal.Extension = value;
}
public long? FileCount
{
get => (_internal as Data.Models.Metadata.Rom)?.FileCount;
set => (_internal as Data.Models.Metadata.Rom)?.FileCount = value;
get => _internal.FileCount;
set => _internal.FileCount = value;
}
public bool? FileIsAvailable
{
get => (_internal as Data.Models.Metadata.Rom)?.FileIsAvailable;
set => (_internal as Data.Models.Metadata.Rom)?.FileIsAvailable = value;
get => _internal.FileIsAvailable;
set => _internal.FileIsAvailable = value;
}
public string? Flags
{
get => (_internal as Data.Models.Metadata.Rom)?.Flags;
set => (_internal as Data.Models.Metadata.Rom)?.Flags = value;
get => _internal.Flags;
set => _internal.Flags = value;
}
public string? Format
{
get => (_internal as Data.Models.Metadata.Rom)?.Format;
set => (_internal as Data.Models.Metadata.Rom)?.Format = value;
get => _internal.Format;
set => _internal.Format = value;
}
public string? Header
{
get => (_internal as Data.Models.Metadata.Rom)?.Header;
set => (_internal as Data.Models.Metadata.Rom)?.Header = value;
get => _internal.Header;
set => _internal.Header = value;
}
public string? Height
{
get => (_internal as Data.Models.Metadata.Rom)?.Height;
set => (_internal as Data.Models.Metadata.Rom)?.Height = value;
get => _internal.Height;
set => _internal.Height = value;
}
public string? hOCRCharToWordhOCRVersion
{
get => (_internal as Data.Models.Metadata.Rom)?.hOCRCharToWordhOCRVersion;
set => (_internal as Data.Models.Metadata.Rom)?.hOCRCharToWordhOCRVersion = value;
get => _internal.hOCRCharToWordhOCRVersion;
set => _internal.hOCRCharToWordhOCRVersion = value;
}
public string? hOCRCharToWordModuleVersion
{
get => (_internal as Data.Models.Metadata.Rom)?.hOCRCharToWordModuleVersion;
set => (_internal as Data.Models.Metadata.Rom)?.hOCRCharToWordModuleVersion = value;
get => _internal.hOCRCharToWordModuleVersion;
set => _internal.hOCRCharToWordModuleVersion = value;
}
public string? hOCRFtsTexthOCRVersion
{
get => (_internal as Data.Models.Metadata.Rom)?.hOCRFtsTexthOCRVersion;
set => (_internal as Data.Models.Metadata.Rom)?.hOCRFtsTexthOCRVersion = value;
get => _internal.hOCRFtsTexthOCRVersion;
set => _internal.hOCRFtsTexthOCRVersion = value;
}
public string? hOCRFtsTextModuleVersion
{
get => (_internal as Data.Models.Metadata.Rom)?.hOCRFtsTextModuleVersion;
set => (_internal as Data.Models.Metadata.Rom)?.hOCRFtsTextModuleVersion = value;
get => _internal.hOCRFtsTextModuleVersion;
set => _internal.hOCRFtsTextModuleVersion = value;
}
public string? hOCRPageIndexhOCRVersion
{
get => (_internal as Data.Models.Metadata.Rom)?.hOCRPageIndexhOCRVersion;
set => (_internal as Data.Models.Metadata.Rom)?.hOCRPageIndexhOCRVersion = value;
get => _internal.hOCRPageIndexhOCRVersion;
set => _internal.hOCRPageIndexhOCRVersion = value;
}
public string? hOCRPageIndexModuleVersion
{
get => (_internal as Data.Models.Metadata.Rom)?.hOCRPageIndexModuleVersion;
set => (_internal as Data.Models.Metadata.Rom)?.hOCRPageIndexModuleVersion = value;
get => _internal.hOCRPageIndexModuleVersion;
set => _internal.hOCRPageIndexModuleVersion = value;
}
public bool? Inverted
{
get => (_internal as Data.Models.Metadata.Rom)?.Inverted;
set => (_internal as Data.Models.Metadata.Rom)?.Inverted = value;
get => _internal.Inverted;
set => _internal.Inverted = value;
}
public string? LastModifiedTime
{
get => (_internal as Data.Models.Metadata.Rom)?.LastModifiedTime;
set => (_internal as Data.Models.Metadata.Rom)?.LastModifiedTime = value;
get => _internal.LastModifiedTime;
set => _internal.LastModifiedTime = value;
}
/// <inheritdoc>/>
@@ -238,82 +238,82 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Length
{
get => (_internal as Data.Models.Metadata.Rom)?.Length;
set => (_internal as Data.Models.Metadata.Rom)?.Length = value;
get => _internal.Length;
set => _internal.Length = value;
}
public LoadFlag? LoadFlag
{
get => (_internal as Data.Models.Metadata.Rom)?.LoadFlag;
set => (_internal as Data.Models.Metadata.Rom)?.LoadFlag = value;
get => _internal.LoadFlag;
set => _internal.LoadFlag = value;
}
public string? MatrixNumber
{
get => (_internal as Data.Models.Metadata.Rom)?.MatrixNumber;
set => (_internal as Data.Models.Metadata.Rom)?.MatrixNumber = value;
get => _internal.MatrixNumber;
set => _internal.MatrixNumber = value;
}
public string? MD2
{
get => (_internal as Data.Models.Metadata.Rom)?.MD2;
set => (_internal as Data.Models.Metadata.Rom)?.MD2 = value;
get => _internal.MD2;
set => _internal.MD2 = value;
}
public string? MD4
{
get => (_internal as Data.Models.Metadata.Rom)?.MD4;
set => (_internal as Data.Models.Metadata.Rom)?.MD4 = value;
get => _internal.MD4;
set => _internal.MD4 = value;
}
public string? MD5
{
get => (_internal as Data.Models.Metadata.Rom)?.MD5;
set => (_internal as Data.Models.Metadata.Rom)?.MD5 = value;
get => _internal.MD5;
set => _internal.MD5 = value;
}
public string? Merge
{
get => (_internal as Data.Models.Metadata.Rom)?.Merge;
set => (_internal as Data.Models.Metadata.Rom)?.Merge = value;
get => _internal.Merge;
set => _internal.Merge = value;
}
public bool? MIA
{
get => (_internal as Data.Models.Metadata.Rom)?.MIA;
set => (_internal as Data.Models.Metadata.Rom)?.MIA = value;
get => _internal.MIA;
set => _internal.MIA = value;
}
public string? Name
{
get => (_internal as Data.Models.Metadata.Rom)?.Name;
set => (_internal as Data.Models.Metadata.Rom)?.Name = value;
get => _internal.Name;
set => _internal.Name = value;
}
public string? Offset
{
get => (_internal as Data.Models.Metadata.Rom)?.Offset;
set => (_internal as Data.Models.Metadata.Rom)?.Offset = value;
get => _internal.Offset;
set => _internal.Offset = value;
}
public string? OpenMSXType
{
get => (_internal as Data.Models.Metadata.Rom)?.OpenMSXType;
set => (_internal as Data.Models.Metadata.Rom)?.OpenMSXType = value;
get => _internal.OpenMSXType;
set => _internal.OpenMSXType = value;
}
public OpenMSXSubType? OpenMSXMediaType
{
get => (_internal as Data.Models.Metadata.Rom)?.OpenMSXMediaType;
set => (_internal as Data.Models.Metadata.Rom)?.OpenMSXMediaType = value;
get => _internal.OpenMSXMediaType;
set => _internal.OpenMSXMediaType = value;
}
public Original? Original { get; set; }
public string? OriginalProperty
{
get => (_internal as Data.Models.Metadata.Rom)?.Original;
set => (_internal as Data.Models.Metadata.Rom)?.Original = value;
get => _internal.Original;
set => _internal.Original = value;
}
[JsonIgnore]
@@ -321,8 +321,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public bool? Optional
{
get => (_internal as Data.Models.Metadata.Rom)?.Optional;
set => (_internal as Data.Models.Metadata.Rom)?.Optional = value;
get => _internal.Optional;
set => _internal.Optional = value;
}
public Part? Part { get; set; }
@@ -340,290 +340,290 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? PDFModuleVersion
{
get => (_internal as Data.Models.Metadata.Rom)?.PDFModuleVersion;
set => (_internal as Data.Models.Metadata.Rom)?.PDFModuleVersion = value;
get => _internal.PDFModuleVersion;
set => _internal.PDFModuleVersion = value;
}
public string? PreviewImage
{
get => (_internal as Data.Models.Metadata.Rom)?.PreviewImage;
set => (_internal as Data.Models.Metadata.Rom)?.PreviewImage = value;
get => _internal.PreviewImage;
set => _internal.PreviewImage = value;
}
public string? Publisher
{
get => (_internal as Data.Models.Metadata.Rom)?.Publisher;
set => (_internal as Data.Models.Metadata.Rom)?.Publisher = value;
get => _internal.Publisher;
set => _internal.Publisher = value;
}
public string? Region
{
get => (_internal as Data.Models.Metadata.Rom)?.Region;
set => (_internal as Data.Models.Metadata.Rom)?.Region = value;
get => _internal.Region;
set => _internal.Region = value;
}
public string? Remark
{
get => (_internal as Data.Models.Metadata.Rom)?.Remark;
set => (_internal as Data.Models.Metadata.Rom)?.Remark = value;
get => _internal.Remark;
set => _internal.Remark = value;
}
public string? RIPEMD128
{
get => (_internal as Data.Models.Metadata.Rom)?.RIPEMD128;
set => (_internal as Data.Models.Metadata.Rom)?.RIPEMD128 = value;
get => _internal.RIPEMD128;
set => _internal.RIPEMD128 = value;
}
public string? RIPEMD160
{
get => (_internal as Data.Models.Metadata.Rom)?.RIPEMD160;
set => (_internal as Data.Models.Metadata.Rom)?.RIPEMD160 = value;
get => _internal.RIPEMD160;
set => _internal.RIPEMD160 = value;
}
public string? Rotation
{
get => (_internal as Data.Models.Metadata.Rom)?.Rotation;
set => (_internal as Data.Models.Metadata.Rom)?.Rotation = value;
get => _internal.Rotation;
set => _internal.Rotation = value;
}
public string? Serial
{
get => (_internal as Data.Models.Metadata.Rom)?.Serial;
set => (_internal as Data.Models.Metadata.Rom)?.Serial = value;
get => _internal.Serial;
set => _internal.Serial = value;
}
public string? SHA1
{
get => (_internal as Data.Models.Metadata.Rom)?.SHA1;
set => (_internal as Data.Models.Metadata.Rom)?.SHA1 = value;
get => _internal.SHA1;
set => _internal.SHA1 = value;
}
public string? SHA256
{
get => (_internal as Data.Models.Metadata.Rom)?.SHA256;
set => (_internal as Data.Models.Metadata.Rom)?.SHA256 = value;
get => _internal.SHA256;
set => _internal.SHA256 = value;
}
public string? SHA384
{
get => (_internal as Data.Models.Metadata.Rom)?.SHA384;
set => (_internal as Data.Models.Metadata.Rom)?.SHA384 = value;
get => _internal.SHA384;
set => _internal.SHA384 = value;
}
public string? SHA512
{
get => (_internal as Data.Models.Metadata.Rom)?.SHA512;
set => (_internal as Data.Models.Metadata.Rom)?.SHA512 = value;
get => _internal.SHA512;
set => _internal.SHA512 = value;
}
public long? Size
{
get => (_internal as Data.Models.Metadata.Rom)?.Size;
set => (_internal as Data.Models.Metadata.Rom)?.Size = value;
get => _internal.Size;
set => _internal.Size = value;
}
public bool? SoundOnly
{
get => (_internal as Data.Models.Metadata.Rom)?.SoundOnly;
set => (_internal as Data.Models.Metadata.Rom)?.SoundOnly = value;
get => _internal.SoundOnly;
set => _internal.SoundOnly = value;
}
public string? SourceProperty
{
get => (_internal as Data.Models.Metadata.Rom)?.Source;
set => (_internal as Data.Models.Metadata.Rom)?.Source = value;
get => _internal.Source;
set => _internal.Source = value;
}
public string? SpamSum
{
get => (_internal as Data.Models.Metadata.Rom)?.SpamSum;
set => (_internal as Data.Models.Metadata.Rom)?.SpamSum = value;
get => _internal.SpamSum;
set => _internal.SpamSum = value;
}
public string? Start
{
get => (_internal as Data.Models.Metadata.Rom)?.Start;
set => (_internal as Data.Models.Metadata.Rom)?.Start = value;
get => _internal.Start;
set => _internal.Start = value;
}
public ItemStatus? Status
{
get => (_internal as Data.Models.Metadata.Rom)?.Status;
set => (_internal as Data.Models.Metadata.Rom)?.Status = value;
get => _internal.Status;
set => _internal.Status = value;
}
public string? Summation
{
get => (_internal as Data.Models.Metadata.Rom)?.Summation;
set => (_internal as Data.Models.Metadata.Rom)?.Summation = value;
get => _internal.Summation;
set => _internal.Summation = value;
}
public string? TesseractOCR
{
get => (_internal as Data.Models.Metadata.Rom)?.TesseractOCR;
set => (_internal as Data.Models.Metadata.Rom)?.TesseractOCR = value;
get => _internal.TesseractOCR;
set => _internal.TesseractOCR = value;
}
public string? TesseractOCRConverted
{
get => (_internal as Data.Models.Metadata.Rom)?.TesseractOCRConverted;
set => (_internal as Data.Models.Metadata.Rom)?.TesseractOCRConverted = value;
get => _internal.TesseractOCRConverted;
set => _internal.TesseractOCRConverted = value;
}
public string? TesseractOCRDetectedLang
{
get => (_internal as Data.Models.Metadata.Rom)?.TesseractOCRDetectedLang;
set => (_internal as Data.Models.Metadata.Rom)?.TesseractOCRDetectedLang = value;
get => _internal.TesseractOCRDetectedLang;
set => _internal.TesseractOCRDetectedLang = value;
}
public string? TesseractOCRDetectedLangConf
{
get => (_internal as Data.Models.Metadata.Rom)?.TesseractOCRDetectedLangConf;
set => (_internal as Data.Models.Metadata.Rom)?.TesseractOCRDetectedLangConf = value;
get => _internal.TesseractOCRDetectedLangConf;
set => _internal.TesseractOCRDetectedLangConf = value;
}
public string? TesseractOCRDetectedScript
{
get => (_internal as Data.Models.Metadata.Rom)?.TesseractOCRDetectedScript;
set => (_internal as Data.Models.Metadata.Rom)?.TesseractOCRDetectedScript = value;
get => _internal.TesseractOCRDetectedScript;
set => _internal.TesseractOCRDetectedScript = value;
}
public string? TesseractOCRDetectedScriptConf
{
get => (_internal as Data.Models.Metadata.Rom)?.TesseractOCRDetectedScriptConf;
set => (_internal as Data.Models.Metadata.Rom)?.TesseractOCRDetectedScriptConf = value;
get => _internal.TesseractOCRDetectedScriptConf;
set => _internal.TesseractOCRDetectedScriptConf = value;
}
public string? TesseractOCRModuleVersion
{
get => (_internal as Data.Models.Metadata.Rom)?.TesseractOCRModuleVersion;
set => (_internal as Data.Models.Metadata.Rom)?.TesseractOCRModuleVersion = value;
get => _internal.TesseractOCRModuleVersion;
set => _internal.TesseractOCRModuleVersion = value;
}
public string? TesseractOCRParameters
{
get => (_internal as Data.Models.Metadata.Rom)?.TesseractOCRParameters;
set => (_internal as Data.Models.Metadata.Rom)?.TesseractOCRParameters = value;
get => _internal.TesseractOCRParameters;
set => _internal.TesseractOCRParameters = value;
}
public string? Title
{
get => (_internal as Data.Models.Metadata.Rom)?.Title;
set => (_internal as Data.Models.Metadata.Rom)?.Title = value;
get => _internal.Title;
set => _internal.Title = value;
}
public string? Track
{
get => (_internal as Data.Models.Metadata.Rom)?.Track;
set => (_internal as Data.Models.Metadata.Rom)?.Track = value;
get => _internal.Track;
set => _internal.Track = value;
}
public string? Value
{
get => (_internal as Data.Models.Metadata.Rom)?.Value;
set => (_internal as Data.Models.Metadata.Rom)?.Value = value;
get => _internal.Value;
set => _internal.Value = value;
}
public string? WhisperASRModuleVersion
{
get => (_internal as Data.Models.Metadata.Rom)?.WhisperASRModuleVersion;
set => (_internal as Data.Models.Metadata.Rom)?.WhisperASRModuleVersion = value;
get => _internal.WhisperASRModuleVersion;
set => _internal.WhisperASRModuleVersion = value;
}
public string? WhisperModelHash
{
get => (_internal as Data.Models.Metadata.Rom)?.WhisperModelHash;
set => (_internal as Data.Models.Metadata.Rom)?.WhisperModelHash = value;
get => _internal.WhisperModelHash;
set => _internal.WhisperModelHash = value;
}
public string? WhisperModelName
{
get => (_internal as Data.Models.Metadata.Rom)?.WhisperModelName;
set => (_internal as Data.Models.Metadata.Rom)?.WhisperModelName = value;
get => _internal.WhisperModelName;
set => _internal.WhisperModelName = value;
}
public string? WhisperVersion
{
get => (_internal as Data.Models.Metadata.Rom)?.WhisperVersion;
set => (_internal as Data.Models.Metadata.Rom)?.WhisperVersion = value;
get => _internal.WhisperVersion;
set => _internal.WhisperVersion = value;
}
public string? Width
{
get => (_internal as Data.Models.Metadata.Rom)?.Width;
set => (_internal as Data.Models.Metadata.Rom)?.Width = value;
get => _internal.Width;
set => _internal.Width = value;
}
public string? WordConfidenceInterval0To10
{
get => (_internal as Data.Models.Metadata.Rom)?.WordConfidenceInterval0To10;
set => (_internal as Data.Models.Metadata.Rom)?.WordConfidenceInterval0To10 = value;
get => _internal.WordConfidenceInterval0To10;
set => _internal.WordConfidenceInterval0To10 = value;
}
public string? WordConfidenceInterval11To20
{
get => (_internal as Data.Models.Metadata.Rom)?.WordConfidenceInterval11To20;
set => (_internal as Data.Models.Metadata.Rom)?.WordConfidenceInterval11To20 = value;
get => _internal.WordConfidenceInterval11To20;
set => _internal.WordConfidenceInterval11To20 = value;
}
public string? WordConfidenceInterval21To30
{
get => (_internal as Data.Models.Metadata.Rom)?.WordConfidenceInterval21To30;
set => (_internal as Data.Models.Metadata.Rom)?.WordConfidenceInterval21To30 = value;
get => _internal.WordConfidenceInterval21To30;
set => _internal.WordConfidenceInterval21To30 = value;
}
public string? WordConfidenceInterval31To40
{
get => (_internal as Data.Models.Metadata.Rom)?.WordConfidenceInterval31To40;
set => (_internal as Data.Models.Metadata.Rom)?.WordConfidenceInterval31To40 = value;
get => _internal.WordConfidenceInterval31To40;
set => _internal.WordConfidenceInterval31To40 = value;
}
public string? WordConfidenceInterval41To50
{
get => (_internal as Data.Models.Metadata.Rom)?.WordConfidenceInterval41To50;
set => (_internal as Data.Models.Metadata.Rom)?.WordConfidenceInterval41To50 = value;
get => _internal.WordConfidenceInterval41To50;
set => _internal.WordConfidenceInterval41To50 = value;
}
public string? WordConfidenceInterval51To60
{
get => (_internal as Data.Models.Metadata.Rom)?.WordConfidenceInterval51To60;
set => (_internal as Data.Models.Metadata.Rom)?.WordConfidenceInterval51To60 = value;
get => _internal.WordConfidenceInterval51To60;
set => _internal.WordConfidenceInterval51To60 = value;
}
public string? WordConfidenceInterval61To70
{
get => (_internal as Data.Models.Metadata.Rom)?.WordConfidenceInterval61To70;
set => (_internal as Data.Models.Metadata.Rom)?.WordConfidenceInterval61To70 = value;
get => _internal.WordConfidenceInterval61To70;
set => _internal.WordConfidenceInterval61To70 = value;
}
public string? WordConfidenceInterval71To80
{
get => (_internal as Data.Models.Metadata.Rom)?.WordConfidenceInterval71To80;
set => (_internal as Data.Models.Metadata.Rom)?.WordConfidenceInterval71To80 = value;
get => _internal.WordConfidenceInterval71To80;
set => _internal.WordConfidenceInterval71To80 = value;
}
public string? WordConfidenceInterval81To90
{
get => (_internal as Data.Models.Metadata.Rom)?.WordConfidenceInterval81To90;
set => (_internal as Data.Models.Metadata.Rom)?.WordConfidenceInterval81To90 = value;
get => _internal.WordConfidenceInterval81To90;
set => _internal.WordConfidenceInterval81To90 = value;
}
public string? WordConfidenceInterval91To100
{
get => (_internal as Data.Models.Metadata.Rom)?.WordConfidenceInterval91To100;
set => (_internal as Data.Models.Metadata.Rom)?.WordConfidenceInterval91To100 = value;
get => _internal.WordConfidenceInterval91To100;
set => _internal.WordConfidenceInterval91To100 = value;
}
public string? xxHash364
{
get => (_internal as Data.Models.Metadata.Rom)?.xxHash364;
set => (_internal as Data.Models.Metadata.Rom)?.xxHash364 = value;
get => _internal.xxHash364;
set => _internal.xxHash364 = value;
}
public string? xxHash3128
{
get => (_internal as Data.Models.Metadata.Rom)?.xxHash3128;
set => (_internal as Data.Models.Metadata.Rom)?.xxHash3128 = value;
get => _internal.xxHash3128;
set => _internal.xxHash3128 = value;
}
#endregion
@@ -899,7 +899,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.Rom GetInternalClone()
=> (_internal as Data.Models.Metadata.Rom)?.Clone() as Data.Models.Metadata.Rom ?? new();
=> _internal.Clone() as Data.Models.Metadata.Rom ?? new();
#endregion
@@ -914,7 +914,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Rom otherRom)
return ((Data.Models.Metadata.Rom)_internal).PartialEquals((Data.Models.Metadata.Rom)otherRom._internal);
return _internal.PartialEquals(otherRom._internal);
// Everything else fails
return false;
@@ -929,7 +929,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Rom otherRom)
return ((Data.Models.Metadata.Rom)_internal).PartialEquals((Data.Models.Metadata.Rom)otherRom._internal);
return _internal.PartialEquals(otherRom._internal);
// Everything else fails
return false;
@@ -940,19 +940,19 @@ namespace SabreTools.Metadata.DatItems.Formats
/// </summary>
/// <param name="other">Rom to fill information from</param>
public void FillMissingInformation(Rom other)
=> (_internal as Data.Models.Metadata.Rom).FillMissingHashes(other._internal as Data.Models.Metadata.Rom);
=> _internal.FillMissingHashes(other._internal);
/// <summary>
/// Returns if the Rom contains any hashes
/// </summary>
/// <returns>True if any hash exists, false otherwise</returns>
public bool HasHashes() => (_internal as Data.Models.Metadata.Rom)?.HasHashes() ?? false;
public bool HasHashes() => _internal.HasHashes();
/// <summary>
/// Returns if all of the hashes are set to their 0-byte values
/// </summary>
/// <returns>True if any hash matches the 0-byte value, false otherwise</returns>
public bool HasZeroHash() => (_internal as Data.Models.Metadata.Rom)?.HasZeroHash() ?? false;
public bool HasZeroHash() => _internal.HasZeroHash();
#endregion

View File

@@ -17,8 +17,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Name
{
get => (_internal as Data.Models.Metadata.Sample)?.Name;
set => (_internal as Data.Models.Metadata.Sample)?.Name = value;
get => _internal.Name;
set => _internal.Name = value;
}
#endregion
@@ -54,7 +54,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.Sample GetInternalClone()
=> (_internal as Data.Models.Metadata.Sample)?.Clone() as Data.Models.Metadata.Sample ?? new();
=> _internal.Clone() as Data.Models.Metadata.Sample ?? new();
#endregion
@@ -69,7 +69,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Sample otherSample)
return ((Data.Models.Metadata.Sample)_internal).Equals((Data.Models.Metadata.Sample)otherSample._internal);
return _internal.Equals(otherSample._internal);
// Everything else fails
return false;
@@ -84,7 +84,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Sample otherSample)
return ((Data.Models.Metadata.Sample)_internal).Equals((Data.Models.Metadata.Sample)otherSample._internal);
return _internal.Equals(otherSample._internal);
// Everything else fails
return false;

View File

@@ -13,32 +13,32 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? BoxBarcode
{
get => (_internal as Data.Models.Metadata.Serials)?.BoxBarcode;
set => (_internal as Data.Models.Metadata.Serials)?.BoxBarcode = value;
get => _internal.BoxBarcode;
set => _internal.BoxBarcode = value;
}
public string? BoxSerial
{
get => (_internal as Data.Models.Metadata.Serials)?.BoxSerial;
set => (_internal as Data.Models.Metadata.Serials)?.BoxSerial = value;
get => _internal.BoxSerial;
set => _internal.BoxSerial = value;
}
public string? ChipSerial
{
get => (_internal as Data.Models.Metadata.Serials)?.ChipSerial;
set => (_internal as Data.Models.Metadata.Serials)?.ChipSerial = value;
get => _internal.ChipSerial;
set => _internal.ChipSerial = value;
}
public string? DigitalSerial1
{
get => (_internal as Data.Models.Metadata.Serials)?.DigitalSerial1;
set => (_internal as Data.Models.Metadata.Serials)?.DigitalSerial1 = value;
get => _internal.DigitalSerial1;
set => _internal.DigitalSerial1 = value;
}
public string? DigitalSerial2
{
get => (_internal as Data.Models.Metadata.Serials)?.DigitalSerial2;
set => (_internal as Data.Models.Metadata.Serials)?.DigitalSerial2 = value;
get => _internal.DigitalSerial2;
set => _internal.DigitalSerial2 = value;
}
/// <inheritdoc>/>
@@ -47,56 +47,56 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? LockoutSerial
{
get => (_internal as Data.Models.Metadata.Serials)?.LockoutSerial;
set => (_internal as Data.Models.Metadata.Serials)?.LockoutSerial = value;
get => _internal.LockoutSerial;
set => _internal.LockoutSerial = value;
}
public string? MediaSerial1
{
get => (_internal as Data.Models.Metadata.Serials)?.MediaSerial1;
set => (_internal as Data.Models.Metadata.Serials)?.MediaSerial1 = value;
get => _internal.MediaSerial1;
set => _internal.MediaSerial1 = value;
}
public string? MediaSerial2
{
get => (_internal as Data.Models.Metadata.Serials)?.MediaSerial2;
set => (_internal as Data.Models.Metadata.Serials)?.MediaSerial2 = value;
get => _internal.MediaSerial2;
set => _internal.MediaSerial2 = value;
}
public string? MediaSerial3
{
get => (_internal as Data.Models.Metadata.Serials)?.MediaSerial3;
set => (_internal as Data.Models.Metadata.Serials)?.MediaSerial3 = value;
get => _internal.MediaSerial3;
set => _internal.MediaSerial3 = value;
}
public string? MediaStamp
{
get => (_internal as Data.Models.Metadata.Serials)?.MediaStamp;
set => (_internal as Data.Models.Metadata.Serials)?.MediaStamp = value;
get => _internal.MediaStamp;
set => _internal.MediaStamp = value;
}
public string? PCBSerial
{
get => (_internal as Data.Models.Metadata.Serials)?.PCBSerial;
set => (_internal as Data.Models.Metadata.Serials)?.PCBSerial = value;
get => _internal.PCBSerial;
set => _internal.PCBSerial = value;
}
public string? RomChipSerial1
{
get => (_internal as Data.Models.Metadata.Serials)?.RomChipSerial1;
set => (_internal as Data.Models.Metadata.Serials)?.RomChipSerial1 = value;
get => _internal.RomChipSerial1;
set => _internal.RomChipSerial1 = value;
}
public string? RomChipSerial2
{
get => (_internal as Data.Models.Metadata.Serials)?.RomChipSerial2;
set => (_internal as Data.Models.Metadata.Serials)?.RomChipSerial2 = value;
get => _internal.RomChipSerial2;
set => _internal.RomChipSerial2 = value;
}
public string? SaveChipSerial
{
get => (_internal as Data.Models.Metadata.Serials)?.SaveChipSerial;
set => (_internal as Data.Models.Metadata.Serials)?.SaveChipSerial = value;
get => _internal.SaveChipSerial;
set => _internal.SaveChipSerial = value;
}
#endregion
@@ -132,7 +132,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.Serials GetInternalClone()
=> (_internal as Data.Models.Metadata.Serials)?.Clone() as Data.Models.Metadata.Serials ?? new();
=> _internal.Clone() as Data.Models.Metadata.Serials ?? new();
#endregion
@@ -147,7 +147,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Serials otherSerials)
return ((Data.Models.Metadata.Serials)_internal).Equals((Data.Models.Metadata.Serials)otherSerials._internal);
return _internal.Equals(otherSerials._internal);
// Everything else fails
return false;
@@ -162,7 +162,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Serials otherSerials)
return ((Data.Models.Metadata.Serials)_internal).Equals((Data.Models.Metadata.Serials)otherSerials._internal);
return _internal.Equals(otherSerials._internal);
// Everything else fails
return false;

View File

@@ -17,14 +17,14 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Name
{
get => (_internal as Data.Models.Metadata.SharedFeat)?.Name;
set => (_internal as Data.Models.Metadata.SharedFeat)?.Name = value;
get => _internal.Name;
set => _internal.Name = value;
}
public string? Value
{
get => (_internal as Data.Models.Metadata.SharedFeat)?.Value;
set => (_internal as Data.Models.Metadata.SharedFeat)?.Value = value;
get => _internal.Value;
set => _internal.Value = value;
}
#endregion
@@ -60,7 +60,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.SharedFeat GetInternalClone()
=> (_internal as Data.Models.Metadata.SharedFeat)?.Clone() as Data.Models.Metadata.SharedFeat ?? new();
=> _internal.Clone() as Data.Models.Metadata.SharedFeat ?? new();
#endregion
@@ -75,7 +75,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is SharedFeat otherSharedFeat)
return ((Data.Models.Metadata.SharedFeat)_internal).Equals((Data.Models.Metadata.SharedFeat)otherSharedFeat._internal);
return _internal.Equals(otherSharedFeat._internal);
// Everything else fails
return false;
@@ -90,7 +90,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is SharedFeat otherSharedFeat)
return ((Data.Models.Metadata.SharedFeat)_internal).Equals((Data.Models.Metadata.SharedFeat)otherSharedFeat._internal);
return _internal.Equals(otherSharedFeat._internal);
// Everything else fails
return false;

View File

@@ -18,8 +18,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Name
{
get => (_internal as Data.Models.Metadata.Slot)?.Name;
set => (_internal as Data.Models.Metadata.Slot)?.Name = value;
get => _internal.Name;
set => _internal.Name = value;
}
public SlotOption[]? SlotOption { get; set; }
@@ -66,7 +66,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.Slot GetInternalClone()
{
var slotItem = (_internal as Data.Models.Metadata.Slot)?.Clone() as Data.Models.Metadata.Slot ?? new();
var slotItem = _internal.Clone() as Data.Models.Metadata.Slot ?? new();
if (SlotOption is not null)
slotItem.SlotOption = Array.ConvertAll(SlotOption, slotOption => slotOption.GetInternalClone());
@@ -87,7 +87,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Slot otherSlot)
return ((Data.Models.Metadata.Slot)_internal).Equals((Data.Models.Metadata.Slot)otherSlot._internal);
return _internal.Equals(otherSlot._internal);
// Everything else fails
return false;
@@ -102,7 +102,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Slot otherSlot)
return ((Data.Models.Metadata.Slot)_internal).Equals((Data.Models.Metadata.Slot)otherSlot._internal);
return _internal.Equals(otherSlot._internal);
// Everything else fails
return false;

View File

@@ -13,14 +13,14 @@ namespace SabreTools.Metadata.DatItems.Formats
public bool? Default
{
get => (_internal as Data.Models.Metadata.SlotOption)?.Default;
set => (_internal as Data.Models.Metadata.SlotOption)?.Default = value;
get => _internal.Default;
set => _internal.Default = value;
}
public string? DevName
{
get => (_internal as Data.Models.Metadata.SlotOption)?.DevName;
set => (_internal as Data.Models.Metadata.SlotOption)?.DevName = value;
get => _internal.DevName;
set => _internal.DevName = value;
}
/// <inheritdoc>/>
@@ -29,8 +29,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Name
{
get => (_internal as Data.Models.Metadata.SlotOption)?.Name;
set => (_internal as Data.Models.Metadata.SlotOption)?.Name = value;
get => _internal.Name;
set => _internal.Name = value;
}
#endregion
@@ -66,7 +66,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.SlotOption GetInternalClone()
=> (_internal as Data.Models.Metadata.SlotOption)?.Clone() as Data.Models.Metadata.SlotOption ?? new();
=> _internal.Clone() as Data.Models.Metadata.SlotOption ?? new();
#endregion
@@ -81,7 +81,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is SlotOption otherSlotOption)
return ((Data.Models.Metadata.SlotOption)_internal).Equals((Data.Models.Metadata.SlotOption)otherSlotOption._internal);
return _internal.Equals(otherSlotOption._internal);
// Everything else fails
return false;
@@ -96,7 +96,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is SlotOption otherSlotOption)
return ((Data.Models.Metadata.SlotOption)_internal).Equals((Data.Models.Metadata.SlotOption)otherSlotOption._internal);
return _internal.Equals(otherSlotOption._internal);
// Everything else fails
return false;

View File

@@ -13,8 +13,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Filter
{
get => (_internal as Data.Models.Metadata.SoftwareList)?.Filter;
set => (_internal as Data.Models.Metadata.SoftwareList)?.Filter = value;
get => _internal.Filter;
set => _internal.Filter = value;
}
/// <inheritdoc>/>
@@ -23,20 +23,20 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Name
{
get => (_internal as Data.Models.Metadata.SoftwareList)?.Name;
set => (_internal as Data.Models.Metadata.SoftwareList)?.Name = value;
get => _internal.Name;
set => _internal.Name = value;
}
public Data.Models.Metadata.SoftwareListStatus? Status
{
get => (_internal as Data.Models.Metadata.SoftwareList)?.Status;
set => (_internal as Data.Models.Metadata.SoftwareList)?.Status = value;
get => _internal.Status;
set => _internal.Status = value;
}
public string? Tag
{
get => (_internal as Data.Models.Metadata.SoftwareList)?.Tag;
set => (_internal as Data.Models.Metadata.SoftwareList)?.Tag = value;
get => _internal.Tag;
set => _internal.Tag = value;
}
#endregion
@@ -72,7 +72,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.SoftwareList GetInternalClone()
=> (_internal as Data.Models.Metadata.SoftwareList)?.Clone() as Data.Models.Metadata.SoftwareList ?? new();
=> _internal.Clone() as Data.Models.Metadata.SoftwareList ?? new();
#endregion
@@ -87,7 +87,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is SoftwareList otherSoftwareList)
return ((Data.Models.Metadata.SoftwareList)_internal).Equals((Data.Models.Metadata.SoftwareList)otherSoftwareList._internal);
return _internal.Equals(otherSoftwareList._internal);
// Everything else fails
return false;
@@ -102,7 +102,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is SoftwareList otherSoftwareList)
return ((Data.Models.Metadata.SoftwareList)_internal).Equals((Data.Models.Metadata.SoftwareList)otherSoftwareList._internal);
return _internal.Equals(otherSoftwareList._internal);
// Everything else fails
return false;

View File

@@ -13,8 +13,8 @@ namespace SabreTools.Metadata.DatItems.Formats
public long? Channels
{
get => (_internal as Data.Models.Metadata.Sound)?.Channels;
set => (_internal as Data.Models.Metadata.Sound)?.Channels = value;
get => _internal.Channels;
set => _internal.Channels = value;
}
/// <inheritdoc>/>
@@ -54,7 +54,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.Sound GetInternalClone()
=> (_internal as Data.Models.Metadata.Sound)?.Clone() as Data.Models.Metadata.Sound ?? new();
=> _internal.Clone() as Data.Models.Metadata.Sound ?? new();
#endregion
@@ -69,7 +69,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Sound otherSound)
return ((Data.Models.Metadata.Sound)_internal).Equals((Data.Models.Metadata.Sound)otherSound._internal);
return _internal.Equals(otherSound._internal);
// Everything else fails
return false;
@@ -84,7 +84,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is Sound otherSound)
return ((Data.Models.Metadata.Sound)_internal).Equals((Data.Models.Metadata.Sound)otherSound._internal);
return _internal.Equals(otherSound._internal);
// Everything else fails
return false;

View File

@@ -13,44 +13,44 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? AppendToNumber
{
get => (_internal as Data.Models.Metadata.SourceDetails)?.AppendToNumber;
set => (_internal as Data.Models.Metadata.SourceDetails)?.AppendToNumber = value;
get => _internal.AppendToNumber;
set => _internal.AppendToNumber = value;
}
public string? Comment1
{
get => (_internal as Data.Models.Metadata.SourceDetails)?.Comment1;
set => (_internal as Data.Models.Metadata.SourceDetails)?.Comment1 = value;
get => _internal.Comment1;
set => _internal.Comment1 = value;
}
public string? Comment2
{
get => (_internal as Data.Models.Metadata.SourceDetails)?.Comment2;
set => (_internal as Data.Models.Metadata.SourceDetails)?.Comment2 = value;
get => _internal.Comment2;
set => _internal.Comment2 = value;
}
public string? DumpDate
{
get => (_internal as Data.Models.Metadata.SourceDetails)?.DumpDate;
set => (_internal as Data.Models.Metadata.SourceDetails)?.DumpDate = value;
get => _internal.DumpDate;
set => _internal.DumpDate = value;
}
public bool? DumpDateInfo
{
get => (_internal as Data.Models.Metadata.SourceDetails)?.DumpDateInfo;
set => (_internal as Data.Models.Metadata.SourceDetails)?.DumpDateInfo = value;
get => _internal.DumpDateInfo;
set => _internal.DumpDateInfo = value;
}
public string? Dumper
{
get => (_internal as Data.Models.Metadata.SourceDetails)?.Dumper;
set => (_internal as Data.Models.Metadata.SourceDetails)?.Dumper = value;
get => _internal.Dumper;
set => _internal.Dumper = value;
}
public string? Id
{
get => (_internal as Data.Models.Metadata.SourceDetails)?.Id;
set => (_internal as Data.Models.Metadata.SourceDetails)?.Id = value;
get => _internal.Id;
set => _internal.Id = value;
}
/// <inheritdoc>/>
@@ -59,104 +59,104 @@ namespace SabreTools.Metadata.DatItems.Formats
public string? Link1
{
get => (_internal as Data.Models.Metadata.SourceDetails)?.Link1;
set => (_internal as Data.Models.Metadata.SourceDetails)?.Link1 = value;
get => _internal.Link1;
set => _internal.Link1 = value;
}
public bool? Link1Public
{
get => (_internal as Data.Models.Metadata.SourceDetails)?.Link1Public;
set => (_internal as Data.Models.Metadata.SourceDetails)?.Link1Public = value;
get => _internal.Link1Public;
set => _internal.Link1Public = value;
}
public string? Link2
{
get => (_internal as Data.Models.Metadata.SourceDetails)?.Link2;
set => (_internal as Data.Models.Metadata.SourceDetails)?.Link2 = value;
get => _internal.Link2;
set => _internal.Link2 = value;
}
public bool? Link2Public
{
get => (_internal as Data.Models.Metadata.SourceDetails)?.Link2Public;
set => (_internal as Data.Models.Metadata.SourceDetails)?.Link2Public = value;
get => _internal.Link2Public;
set => _internal.Link2Public = value;
}
public string? Link3
{
get => (_internal as Data.Models.Metadata.SourceDetails)?.Link3;
set => (_internal as Data.Models.Metadata.SourceDetails)?.Link3 = value;
get => _internal.Link3;
set => _internal.Link3 = value;
}
public bool? Link3Public
{
get => (_internal as Data.Models.Metadata.SourceDetails)?.Link3Public;
set => (_internal as Data.Models.Metadata.SourceDetails)?.Link3Public = value;
get => _internal.Link3Public;
set => _internal.Link3Public = value;
}
public string? MediaTitle
{
get => (_internal as Data.Models.Metadata.SourceDetails)?.MediaTitle;
set => (_internal as Data.Models.Metadata.SourceDetails)?.MediaTitle = value;
get => _internal.MediaTitle;
set => _internal.MediaTitle = value;
}
public bool? Nodump
{
get => (_internal as Data.Models.Metadata.SourceDetails)?.Nodump;
set => (_internal as Data.Models.Metadata.SourceDetails)?.Nodump = value;
get => _internal.Nodump;
set => _internal.Nodump = value;
}
public string? Origin
{
get => (_internal as Data.Models.Metadata.SourceDetails)?.Origin;
set => (_internal as Data.Models.Metadata.SourceDetails)?.Origin = value;
get => _internal.Origin;
set => _internal.Origin = value;
}
public string? OriginalFormat
{
get => (_internal as Data.Models.Metadata.SourceDetails)?.OriginalFormat;
set => (_internal as Data.Models.Metadata.SourceDetails)?.OriginalFormat = value;
get => _internal.OriginalFormat;
set => _internal.OriginalFormat = value;
}
public string? Project
{
get => (_internal as Data.Models.Metadata.SourceDetails)?.Project;
set => (_internal as Data.Models.Metadata.SourceDetails)?.Project = value;
get => _internal.Project;
set => _internal.Project = value;
}
public string? Region
{
get => (_internal as Data.Models.Metadata.SourceDetails)?.Region;
set => (_internal as Data.Models.Metadata.SourceDetails)?.Region = value;
get => _internal.Region;
set => _internal.Region = value;
}
public string? ReleaseDate
{
get => (_internal as Data.Models.Metadata.SourceDetails)?.ReleaseDate;
set => (_internal as Data.Models.Metadata.SourceDetails)?.ReleaseDate = value;
get => _internal.ReleaseDate;
set => _internal.ReleaseDate = value;
}
public bool? ReleaseDateInfo
{
get => (_internal as Data.Models.Metadata.SourceDetails)?.ReleaseDateInfo;
set => (_internal as Data.Models.Metadata.SourceDetails)?.ReleaseDateInfo = value;
get => _internal.ReleaseDateInfo;
set => _internal.ReleaseDateInfo = value;
}
public string? RomInfo
{
get => (_internal as Data.Models.Metadata.SourceDetails)?.RomInfo;
set => (_internal as Data.Models.Metadata.SourceDetails)?.RomInfo = value;
get => _internal.RomInfo;
set => _internal.RomInfo = value;
}
public string? Section
{
get => (_internal as Data.Models.Metadata.SourceDetails)?.Section;
set => (_internal as Data.Models.Metadata.SourceDetails)?.Section = value;
get => _internal.Section;
set => _internal.Section = value;
}
public string? Tool
{
get => (_internal as Data.Models.Metadata.SourceDetails)?.Tool;
set => (_internal as Data.Models.Metadata.SourceDetails)?.Tool = value;
get => _internal.Tool;
set => _internal.Tool = value;
}
#endregion
@@ -192,7 +192,7 @@ namespace SabreTools.Metadata.DatItems.Formats
/// <inheritdoc/>
public override Data.Models.Metadata.SourceDetails GetInternalClone()
=> (_internal as Data.Models.Metadata.SourceDetails)?.Clone() as Data.Models.Metadata.SourceDetails ?? new();
=> _internal.Clone() as Data.Models.Metadata.SourceDetails ?? new();
#endregion
@@ -207,7 +207,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is SourceDetails otherSourceDetails)
return ((Data.Models.Metadata.SourceDetails)_internal).Equals((Data.Models.Metadata.SourceDetails)otherSourceDetails._internal);
return _internal.Equals(otherSourceDetails._internal);
// Everything else fails
return false;
@@ -222,7 +222,7 @@ namespace SabreTools.Metadata.DatItems.Formats
// If the type matches
if (other is SourceDetails otherSourceDetails)
return ((Data.Models.Metadata.SourceDetails)_internal).Equals((Data.Models.Metadata.SourceDetails)otherSourceDetails._internal);
return _internal.Equals(otherSourceDetails._internal);
// Everything else fails
return false;