mirror of
https://github.com/claunia/SabreTools.git
synced 2025-12-16 19:14:27 +00:00
Reduce implicit null checks
This commit is contained in:
@@ -23,7 +23,12 @@ namespace SabreTools.Serialization
|
||||
|
||||
var machines = item.Read<Models.Internal.Machine[]>(Models.Internal.MetadataFile.MachineKey);
|
||||
if (machines != null && machines.Any())
|
||||
softwareDb.Software = machines.Select(ConvertMachineFromInternalModel).ToArray();
|
||||
{
|
||||
softwareDb.Software = machines
|
||||
.Where(m => m != null)
|
||||
.Select(ConvertMachineFromInternalModel)
|
||||
.ToArray();
|
||||
}
|
||||
|
||||
return softwareDb;
|
||||
}
|
||||
@@ -31,11 +36,8 @@ namespace SabreTools.Serialization
|
||||
/// <summary>
|
||||
/// Convert from <cref="Models.Internal.Header"/> to <cref="Models.OpenMSX.SoftwareDb"/>
|
||||
/// </summary>
|
||||
private static SoftwareDb? ConvertHeaderFromInternalModel(Models.Internal.Header? item)
|
||||
private static SoftwareDb ConvertHeaderFromInternalModel(Models.Internal.Header item)
|
||||
{
|
||||
if (item == null)
|
||||
return null;
|
||||
|
||||
var softwareDb = new SoftwareDb
|
||||
{
|
||||
Timestamp = item.ReadString(Models.Internal.Header.TimestampKey),
|
||||
@@ -46,11 +48,8 @@ namespace SabreTools.Serialization
|
||||
/// <summary>
|
||||
/// Convert from <cref="Models.Internal.Machine"/> to <cref="Models.OpenMSX.Software"/>
|
||||
/// </summary>
|
||||
private static Software? ConvertMachineFromInternalModel(Models.Internal.Machine? item)
|
||||
private static Software ConvertMachineFromInternalModel(Models.Internal.Machine item)
|
||||
{
|
||||
if (item == null)
|
||||
return null;
|
||||
|
||||
var game = new Software
|
||||
{
|
||||
Title = item.ReadString(Models.Internal.Machine.NameKey),
|
||||
@@ -62,7 +61,13 @@ namespace SabreTools.Serialization
|
||||
};
|
||||
|
||||
var dumps = item.Read<Models.Internal.Dump[]>(Models.Internal.Machine.DumpKey);
|
||||
game.Dump = dumps?.Select(ConvertFromInternalModel)?.ToArray();
|
||||
if (dumps != null && dumps.Any())
|
||||
{
|
||||
game.Dump = dumps
|
||||
.Where(d => d != null)
|
||||
.Select(ConvertFromInternalModel)
|
||||
.ToArray();
|
||||
}
|
||||
|
||||
return game;
|
||||
}
|
||||
@@ -70,24 +75,25 @@ namespace SabreTools.Serialization
|
||||
/// <summary>
|
||||
/// Convert from <cref="Models.Internal.Dump"/> to <cref="Models.OpenMSX.Dump"/>
|
||||
/// </summary>
|
||||
private static Dump? ConvertFromInternalModel(Models.Internal.Dump? item)
|
||||
private static Dump ConvertFromInternalModel(Models.Internal.Dump item)
|
||||
{
|
||||
if (item == null)
|
||||
return null;
|
||||
|
||||
var dump = new Dump();
|
||||
|
||||
var original = item.Read<Models.Internal.Original>(Models.Internal.Dump.OriginalKey);
|
||||
dump.Original = ConvertFromInternalModel(original);
|
||||
if (original != null)
|
||||
dump.Original = ConvertFromInternalModel(original);
|
||||
|
||||
var rom = item.Read<Models.Internal.Rom>(Models.Internal.Dump.RomKey);
|
||||
dump.Rom = ConvertRomFromInternalModel(rom);
|
||||
if (rom != null)
|
||||
dump.Rom = ConvertRomFromInternalModel(rom);
|
||||
|
||||
var megaRom = item.Read<Models.Internal.Rom>(Models.Internal.Dump.MegaRomKey);
|
||||
dump.Rom = ConvertMegaRomFromInternalModel(megaRom);
|
||||
if (megaRom != null)
|
||||
dump.Rom = ConvertMegaRomFromInternalModel(megaRom);
|
||||
|
||||
var sccPlusCart = item.Read<Models.Internal.Rom>(Models.Internal.Dump.SCCPlusCartKey);
|
||||
dump.Rom = ConvertSCCPlusCartFromInternalModel(sccPlusCart);
|
||||
if (sccPlusCart != null)
|
||||
dump.Rom = ConvertSCCPlusCartFromInternalModel(sccPlusCart);
|
||||
|
||||
return dump;
|
||||
}
|
||||
@@ -95,11 +101,8 @@ namespace SabreTools.Serialization
|
||||
/// <summary>
|
||||
/// Convert from <cref="Models.Internal.Rom"/> to <cref="Models.OpenMSX.MegaRom"/>
|
||||
/// </summary>
|
||||
private static MegaRom? ConvertMegaRomFromInternalModel(Models.Internal.Rom? item)
|
||||
private static MegaRom ConvertMegaRomFromInternalModel(Models.Internal.Rom item)
|
||||
{
|
||||
if (item == null)
|
||||
return null;
|
||||
|
||||
var megaRom = new MegaRom
|
||||
{
|
||||
Start = item.ReadString(Models.Internal.Rom.StartKey),
|
||||
@@ -113,11 +116,8 @@ namespace SabreTools.Serialization
|
||||
/// <summary>
|
||||
/// Convert from <cref="Models.Internal.Original"/> to <cref="Models.OpenMSX.Original"/>
|
||||
/// </summary>
|
||||
private static Original? ConvertFromInternalModel(Models.Internal.Original? item)
|
||||
private static Original ConvertFromInternalModel(Models.Internal.Original item)
|
||||
{
|
||||
if (item == null)
|
||||
return null;
|
||||
|
||||
var original = new Original
|
||||
{
|
||||
Value = item.ReadString(Models.Internal.Original.ValueKey),
|
||||
@@ -129,11 +129,8 @@ namespace SabreTools.Serialization
|
||||
/// <summary>
|
||||
/// Convert from <cref="Models.Internal.Rom"/> to <cref="Models.OpenMSX.Rom"/>
|
||||
/// </summary>
|
||||
private static Rom? ConvertRomFromInternalModel(Models.Internal.Rom? item)
|
||||
private static Rom ConvertRomFromInternalModel(Models.Internal.Rom item)
|
||||
{
|
||||
if (item == null)
|
||||
return null;
|
||||
|
||||
var rom = new Rom
|
||||
{
|
||||
Start = item.ReadString(Models.Internal.Rom.StartKey),
|
||||
@@ -147,11 +144,8 @@ namespace SabreTools.Serialization
|
||||
/// <summary>
|
||||
/// Convert from <cref="Models.Internal.Rom"/> to <cref="Models.OpenMSX.SCCPlusCart"/>
|
||||
/// </summary>
|
||||
private static SCCPlusCart? ConvertSCCPlusCartFromInternalModel(Models.Internal.Rom? item)
|
||||
private static SCCPlusCart ConvertSCCPlusCartFromInternalModel(Models.Internal.Rom item)
|
||||
{
|
||||
if (item == null)
|
||||
return null;
|
||||
|
||||
var sccPlusCart = new SCCPlusCart
|
||||
{
|
||||
Start = item.ReadString(Models.Internal.Rom.StartKey),
|
||||
|
||||
Reference in New Issue
Block a user