KVP >> Tuple

This commit is contained in:
Matt Nadareski
2020-06-14 23:07:31 -07:00
parent a230b44898
commit 78340b6813
6 changed files with 34 additions and 34 deletions

View File

@@ -734,11 +734,11 @@ namespace SabreTools.Library.DatFiles
if (!ExcludeFields[(int)Field.Infos] && datItem.Infos != null && datItem.Infos.Count > 0) if (!ExcludeFields[(int)Field.Infos] && datItem.Infos != null && datItem.Infos.Count > 0)
{ {
foreach (Tuple<string, string> kvp in datItem.Infos) foreach (KeyValuePair<string, string> kvp in datItem.Infos)
{ {
xtw.WriteStartElement("info"); xtw.WriteStartElement("info");
xtw.WriteAttributeString("name", kvp.Item1); xtw.WriteAttributeString("name", kvp.Key);
xtw.WriteAttributeString("value", kvp.Item2); xtw.WriteAttributeString("value", kvp.Value);
xtw.WriteEndElement(); xtw.WriteEndElement();
} }
} }

View File

@@ -699,8 +699,8 @@ namespace SabreTools.Library.DatFiles
bool remUnicode) bool remUnicode)
{ {
// Prepare all internal variables // Prepare all internal variables
List<Tuple<string, string>> extensionToCrc = new List<Tuple<string, string>>(); var extensionToCrc = new List<KeyValuePair<string, string>>();
List<Rom> roms = new List<Rom>(); var roms = new List<Rom>();
// If there's no subtree to the configuration, skip it // If there's no subtree to the configuration, skip it
if (reader == null) if (reader == null)
@@ -724,7 +724,7 @@ namespace SabreTools.Library.DatFiles
{ {
case "romcrc": case "romcrc":
extensionToCrc.Add( extensionToCrc.Add(
new Tuple<string, string>( new KeyValuePair<string, string>(
reader.GetAttribute("extension") ?? string.Empty, reader.GetAttribute("extension") ?? string.Empty,
reader.ReadElementContentAsString().ToLowerInvariant())); reader.ReadElementContentAsString().ToLowerInvariant()));
break; break;
@@ -736,12 +736,12 @@ namespace SabreTools.Library.DatFiles
} }
// Now process the roms with the proper information // Now process the roms with the proper information
foreach (Tuple<string, string> pair in extensionToCrc) foreach (KeyValuePair<string, string> pair in extensionToCrc)
{ {
roms.Add(new Rom() roms.Add(new Rom()
{ {
Name = (releaseNumber != "0" ? releaseNumber + " - " : string.Empty) + machineName + pair.Item1, Name = (releaseNumber != "0" ? releaseNumber + " - " : string.Empty) + machineName + pair.Key,
CRC = Utilities.CleanHashData(pair.Item2, Constants.CRCLength), CRC = Utilities.CleanHashData(pair.Value, Constants.CRCLength),
ItemStatus = ItemStatus.None, ItemStatus = ItemStatus.None,
}); });

View File

@@ -109,7 +109,7 @@ namespace SabreTools.Library.DatFiles
long size = -1; long size = -1;
ItemType itemType = ItemType.Rom; ItemType itemType = ItemType.Rom;
ItemStatus status = ItemStatus.None; ItemStatus status = ItemStatus.None;
List<Tuple<string, string>> features = null; List<KeyValuePair<string, string>> features = null;
// Now we loop through and get values for everything // Now we loop through and get values for everything
for (int i = 0; i < svr.HeaderValues.Count; i++) for (int i = 0; i < svr.HeaderValues.Count; i++)
@@ -293,12 +293,12 @@ namespace SabreTools.Library.DatFiles
break; break;
case "Machine.Infos": case "Machine.Infos":
machine.Infos = new List<Tuple<string, string>>(); machine.Infos = new List<KeyValuePair<string, string>>();
var infos = value.Split(';'); var infos = value.Split(';');
foreach (var info in infos) foreach (var info in infos)
{ {
var infoPair = info.Split('='); var infoPair = info.Split('=');
machine.Infos.Add(new Tuple<string, string>(infoPair[0], infoPair[1])); machine.Infos.Add(new KeyValuePair<string, string>(infoPair[0], infoPair[1]));
} }
break; break;
@@ -328,12 +328,12 @@ namespace SabreTools.Library.DatFiles
break; break;
case "DatItem.Features": case "DatItem.Features":
features = new List<Tuple<string, string>>(); features = new List<KeyValuePair<string, string>>();
var splitFeatures = value.Split(';'); var splitFeatures = value.Split(';');
foreach (var splitFeature in splitFeatures) foreach (var splitFeature in splitFeatures)
{ {
var featurePair = splitFeature.Split('='); var featurePair = splitFeature.Split('=');
features.Add(new Tuple<string, string>(featurePair[0], featurePair[1])); features.Add(new KeyValuePair<string, string>(featurePair[0], featurePair[1]));
} }
break; break;

View File

@@ -161,7 +161,7 @@ namespace SabreTools.Library.DatFiles
Supported = Utilities.GetYesNo(reader.GetAttribute("supported")), // (yes|partial|no) "yes" Supported = Utilities.GetYesNo(reader.GetAttribute("supported")), // (yes|partial|no) "yes"
CloneOf = reader.GetAttribute("cloneof") ?? string.Empty, CloneOf = reader.GetAttribute("cloneof") ?? string.Empty,
Infos = new List<Tuple<string, string>>(), Infos = new List<KeyValuePair<string, string>>(),
MachineType = (machineType == MachineType.NULL ? MachineType.None : machineType), MachineType = (machineType == MachineType.NULL ? MachineType.None : machineType),
}; };
@@ -191,7 +191,7 @@ namespace SabreTools.Library.DatFiles
break; break;
case "info": case "info":
machine.Infos.Add(new Tuple<string, string>(reader.GetAttribute("name"), reader.GetAttribute("value"))); machine.Infos.Add(new KeyValuePair<string, string>(reader.GetAttribute("name"), reader.GetAttribute("value")));
reader.Read(); reader.Read();
break; break;
@@ -258,7 +258,7 @@ namespace SabreTools.Library.DatFiles
string key = string.Empty, areaname = string.Empty, partname = string.Empty, partinterface = string.Empty; string key = string.Empty, areaname = string.Empty, partname = string.Empty, partinterface = string.Empty;
string temptype = reader.Name; string temptype = reader.Name;
long? areasize = null; long? areasize = null;
List<Tuple<string, string>> features = new List<Tuple<string, string>>(); var features = new List<KeyValuePair<string, string>>();
bool containsItems = false; bool containsItems = false;
while (!reader.EOF) while (!reader.EOF)
@@ -270,7 +270,7 @@ namespace SabreTools.Library.DatFiles
{ {
partname = string.Empty; partname = string.Empty;
partinterface = string.Empty; partinterface = string.Empty;
features = new List<Tuple<string, string>>(); features = new List<KeyValuePair<string, string>>();
} }
if (reader.NodeType == XmlNodeType.EndElement && (reader.Name == "dataarea" || reader.Name == "diskarea")) if (reader.NodeType == XmlNodeType.EndElement && (reader.Name == "dataarea" || reader.Name == "diskarea"))
@@ -293,7 +293,7 @@ namespace SabreTools.Library.DatFiles
break; break;
case "feature": case "feature":
features.Add(new Tuple<string, string>(reader.GetAttribute("name"), reader.GetAttribute("feature"))); features.Add(new KeyValuePair<string, string>(reader.GetAttribute("name"), reader.GetAttribute("feature")));
reader.Read(); reader.Read();
break; break;
@@ -366,7 +366,7 @@ namespace SabreTools.Library.DatFiles
private bool ReadDataArea( private bool ReadDataArea(
XmlReader reader, XmlReader reader,
Machine machine, Machine machine,
List<Tuple<string, string>> features, List<KeyValuePair<string, string>> features,
string areaname, string areaname,
long? areasize, long? areasize,
string partname, string partname,
@@ -479,7 +479,7 @@ namespace SabreTools.Library.DatFiles
private bool ReadDiskArea( private bool ReadDiskArea(
XmlReader reader, XmlReader reader,
Machine machine, Machine machine,
List<Tuple<string, string>> features, List<KeyValuePair<string, string>> features,
string areaname, string areaname,
long? areasize, long? areasize,
string partname, string partname,
@@ -755,11 +755,11 @@ namespace SabreTools.Library.DatFiles
if (!ExcludeFields[(int)Field.Infos] && datItem.Infos != null && datItem.Infos.Count > 0) if (!ExcludeFields[(int)Field.Infos] && datItem.Infos != null && datItem.Infos.Count > 0)
{ {
foreach (Tuple<string, string> kvp in datItem.Infos) foreach (KeyValuePair<string, string> kvp in datItem.Infos)
{ {
xtw.WriteStartElement("info"); xtw.WriteStartElement("info");
xtw.WriteAttributeString("name", kvp.Item1); xtw.WriteAttributeString("name", kvp.Key);
xtw.WriteAttributeString("value", kvp.Item2); xtw.WriteAttributeString("value", kvp.Value);
xtw.WriteEndElement(); xtw.WriteEndElement();
} }
} }
@@ -823,11 +823,11 @@ namespace SabreTools.Library.DatFiles
if (!ExcludeFields[(int)Field.Features] && datItem.Features != null && datItem.Features.Count > 0) if (!ExcludeFields[(int)Field.Features] && datItem.Features != null && datItem.Features.Count > 0)
{ {
foreach (Tuple<string, string> kvp in datItem.Features) foreach (KeyValuePair<string, string> kvp in datItem.Features)
{ {
xtw.WriteStartElement("feature"); xtw.WriteStartElement("feature");
xtw.WriteAttributeString("name", kvp.Item1); xtw.WriteAttributeString("name", kvp.Key);
xtw.WriteAttributeString("value", kvp.Item2); xtw.WriteAttributeString("value", kvp.Value);
xtw.WriteEndElement(); xtw.WriteEndElement();
} }
} }

View File

@@ -450,7 +450,7 @@ namespace SabreTools.Library.DatItems
/// <summary> /// <summary>
/// List of info items /// List of info items
/// </summary> /// </summary>
public List<Tuple<string, string>> Infos public List<KeyValuePair<string, string>> Infos
{ {
get get
{ {
@@ -514,7 +514,7 @@ namespace SabreTools.Library.DatItems
/// <summary> /// <summary>
/// Features provided to/by the item /// Features provided to/by the item
/// </summary> /// </summary>
public List<Tuple<string, string>> Features { get; set; } public List<KeyValuePair<string, string>> Features { get; set; }
/// <summary> /// <summary>
/// Original hardware part name within an item /// Original hardware part name within an item
@@ -585,7 +585,7 @@ namespace SabreTools.Library.DatItems
fieldValue = this.PartInterface; fieldValue = this.PartInterface;
break; break;
case Field.Features: case Field.Features:
fieldValue = string.Join(", ", (this.Features ?? new List<Tuple<string, string>>()).Select(f => $"{f.Item1}={f.Item2}")); fieldValue = string.Join(";", (this.Features ?? new List<KeyValuePair<string, string>>()).Select(f => $"{f.Key}={f.Value}"));
break; break;
case Field.AreaName: case Field.AreaName:
fieldValue = this.AreaName; fieldValue = this.AreaName;
@@ -637,13 +637,13 @@ namespace SabreTools.Library.DatItems
fieldValue = this.RebuildTo; fieldValue = this.RebuildTo;
break; break;
case Field.Devices: case Field.Devices:
fieldValue = string.Join(", ", this.Devices ?? new List<string>()); fieldValue = string.Join(";", this.Devices ?? new List<string>());
break; break;
case Field.SlotOptions: case Field.SlotOptions:
fieldValue = string.Join(", ", this.SlotOptions ?? new List<string>()); fieldValue = string.Join(";", this.SlotOptions ?? new List<string>());
break; break;
case Field.Infos: case Field.Infos:
fieldValue = string.Join(", ", (this.Infos ?? new List<Tuple<string, string>>()).Select(i => $"{i.Item1}={i.Item2}")); fieldValue = string.Join(";", (this.Infos ?? new List<KeyValuePair<string, string>>()).Select(i => $"{i.Key}={i.Value}"));
break; break;
case Field.MachineType: case Field.MachineType:
fieldValue = this.MachineType.ToString(); fieldValue = this.MachineType.ToString();

View File

@@ -97,7 +97,7 @@ namespace SabreTools.Library.DatItems
/// <summary> /// <summary>
/// List of info items /// List of info items
/// </summary> /// </summary>
public List<Tuple<string, string>> Infos { get; set; } public List<KeyValuePair<string, string>> Infos { get; set; }
/// <summary> /// <summary>
/// Type of the machine /// Type of the machine