BFPK model cleanup

This commit is contained in:
Matt Nadareski
2025-10-30 20:57:35 -04:00
parent 9f3c263328
commit 7884b0b775
7 changed files with 10 additions and 17 deletions

View File

@@ -9,11 +9,11 @@
/// <summary>
/// Header
/// </summary>
public Header? Header { get; set; }
public Header Header { get; set; }
/// <summary>
/// Files
/// </summary>
public FileEntry[]? Files { get; set; }
public FileEntry[] Files { get; set; }
}
}

View File

@@ -8,4 +8,4 @@ namespace SabreTools.Data.Models.BFPK
public const uint SignatureUInt32 = 0x4b504642;
}
}
}

View File

@@ -14,7 +14,7 @@
/// <summary>
/// Name
/// </summary>
public string? Name { get; set; }
public string Name { get; set; }
/// <summary>
/// Uncompressed size

View File

@@ -13,7 +13,7 @@ namespace SabreTools.Data.Models.BFPK
/// "BFPK"
/// </summary>
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 4)]
public string? Magic;
public string Magic;
/// <summary>
/// Version

View File

@@ -61,7 +61,7 @@ namespace SabreTools.Serialization.Wrappers
return false;
// Ensure directory separators are consistent
string filename = file.Name ?? $"file{index}";
string filename = file.Name.Length == 0 ? $"file{index}" : file.Name;
if (Path.DirectorySeparatorChar == '\\')
filename = filename.Replace('/', '\\');
else if (Path.DirectorySeparatorChar == '/')

View File

@@ -22,28 +22,21 @@ namespace SabreTools.Serialization.Wrappers
Print(builder, Model.Files);
}
private static void Print(StringBuilder builder, Header? header)
private static void Print(StringBuilder builder, Header header)
{
builder.AppendLine(" Header Information:");
builder.AppendLine(" -------------------------");
if (header == null)
{
builder.AppendLine(" No header");
builder.AppendLine();
return;
}
builder.AppendLine(header.Magic, " Magic");
builder.AppendLine(header.Version, " Version");
builder.AppendLine(header.Files, " Files");
builder.AppendLine();
}
private static void Print(StringBuilder builder, FileEntry[]? entries)
private static void Print(StringBuilder builder, FileEntry[] entries)
{
builder.AppendLine(" File Table Information:");
builder.AppendLine(" -------------------------");
if (entries == null || entries.Length == 0)
if (entries.Length == 0)
{
builder.AppendLine(" No file table items");
return;

View File

@@ -15,7 +15,7 @@ namespace SabreTools.Serialization.Wrappers
#region Extension Properties
/// <inheritdoc cref="Archive.Files"/>
public FileEntry[] Files => Model.Files ?? [];
public FileEntry[] Files => Model.Files;
#endregion