Rename *Serializer interfaces to *Writer

This commit is contained in:
Matt Nadareski
2025-09-26 15:10:59 -04:00
parent 2c092ed665
commit 592a3d3505
23 changed files with 71 additions and 71 deletions

View File

@@ -84,23 +84,23 @@ Below is a table representing the various conversion interfaces that are impleme
| Interface Name | Source Type | Destination Type |
| --- | --- | --- |
| `IByteReader` | `byte[]?` | Model |
| `IByteSerializer` | Model | `byte[]?` |
| `IFileReader` | `string?` path | Model |
| `IFileSerializer` | Model | `string?` path |
| `IModelSerializer` | Model | Model |
| `IStreamReader` | `Stream?` | Model |
| `IStreamSerializer` | Model | `Stream?` |
| `IStringReader` | `string?` representation | Model |
| `IStringSerializer` | Model | `string?` representation |
| `SabreTools.Serialization.Interfaces.IByteReader` | `byte[]?` | Model |
| `SabreTools.Serialization.Interfaces.IByteWriter` | Model | `byte[]?` |
| `SabreTools.Serialization.Interfaces.IFileReader` | `string?` path | Model |
| `SabreTools.Serialization.Interfaces.IFileWriter` | Model | `string?` path |
| `SabreTools.Serialization.Interfaces.IModelSerializer` | Model | Model |
| `SabreTools.Serialization.Interfaces.IStreamReader` | `Stream?` | Model |
| `SabreTools.Serialization.Interfaces.IStreamWriter` | Model | `Stream?` |
| `SabreTools.Serialization.Interfaces.IStringReader` | `string?` representation | Model |
| `SabreTools.Serialization.Interfaces.IStringWriter` | Model | `string?` representation |
Below is a table representing the various non-conversion interfaces that are implemented within this library.
| Interface Name | Purpose |
| --- | --- |
| `IExtractable` | Marks a wrapper as able to be extracted |
| `IPrinter` | Provides a formatted output for a model |
| `IWrapper` / `IWrapper<T>` | Wraps a model or set of models to provide additional functionality |
| `SabreTools.Serialization.Interfaces.IExtractable` | Marks a wrapper as able to be extracted |
| `SabreTools.Serialization.Interfaces.IPrinter` | Provides a formatted output for a model |
| `SabreTools.Serialization.Interfaces.IWrapper` / `SabreTools.Serialization.Interfaces.IWrapper<T>` | Wraps a model or set of models to provide additional functionality |
## Namespaces

View File

@@ -1,9 +1,9 @@
namespace SabreTools.Serialization.Interfaces
{
/// <summary>
/// Defines how to serialize to byte arrays
/// Defines how to write to byte arrays
/// </summary>
public interface IByteSerializer<T>
public interface IByteWriter<T>
{
/// <summary>
/// Serialize a <typeparamref name="T"/> into a byte array

View File

@@ -1,9 +1,9 @@
namespace SabreTools.Serialization.Interfaces
{
/// <summary>
/// Defines how to serialize to files
/// Defines how to write to files
/// </summary>
public interface IFileSerializer<T>
public interface IFileWriter<T>
{
/// <summary>
/// Serialize a <typeparamref name="T"/> into a file

View File

@@ -1,9 +1,9 @@
namespace SabreTools.Serialization.Interfaces
{
/// <summary>
/// Defines how to serialize to Streams
/// Defines how to write to Streams
/// </summary>
public interface IStreamSerializer<T>
public interface IStreamWriter<T>
{
/// <summary>
/// Serialize a <typeparamref name="T"/> into a Stream

View File

@@ -1,9 +1,9 @@
namespace SabreTools.Serialization.Interfaces
{
/// <summary>
/// Defines how to serialize from strings
/// Defines how to write to strings
/// </summary>
public interface IStringSerializer<T>
public interface IStringWriter<T>
{
/// <summary>
/// Serialize a <typeparamref name="T"/> into a string

View File

@@ -5,7 +5,7 @@ using SabreTools.IO.Writers;
namespace SabreTools.Serialization.Writers
{
public class AttractMode : BaseBinarySerializer<MetadataFile>
public class AttractMode : BaseBinaryWriter<MetadataFile>
{
#region Constants
@@ -62,7 +62,7 @@ namespace SabreTools.Serialization.Writers
#endregion
#region IByteSerializer
#region IByteWriter
/// <inheritdoc/>
public override byte[]? SerializeArray(MetadataFile? obj)
@@ -82,7 +82,7 @@ namespace SabreTools.Serialization.Writers
#endregion
#region IFileSerializer
#region IFileWriter
/// <inheritdoc/>
public override bool SerializeFile(MetadataFile? obj, string? path)
@@ -107,7 +107,7 @@ namespace SabreTools.Serialization.Writers
#endregion
#region IStreamSerializer
#region IStreamWriter
/// <inheritdoc/>
public override Stream? SerializeStream(MetadataFile? obj)

View File

@@ -8,15 +8,15 @@ namespace SabreTools.Serialization.Writers
/// </summary>
/// <typeparam name="TModel">Type of the model to serialize</typeparam>
/// <remarks>
/// This class allows all inheriting types to only implement <see cref="IStreamSerializer<>"/>
/// and still implicitly implement <see cref="IByteSerializer<>"/> and <see cref="IFileSerializer<>"/>
/// This class allows all inheriting types to only implement <see cref="IStreamWriter<>"/>
/// and still implicitly implement <see cref="IByteWriter<>"/> and <see cref="IFileWriter<>"/>
/// </remarks>
public abstract class BaseBinarySerializer<TModel> :
IByteSerializer<TModel>,
IFileSerializer<TModel>,
IStreamSerializer<TModel>
public abstract class BaseBinaryWriter<TModel> :
IByteWriter<TModel>,
IFileWriter<TModel>,
IStreamWriter<TModel>
{
#region IByteSerializer
#region IByteWriter
/// <inheritdoc/>
public virtual byte[]? SerializeArray(TModel? obj)
@@ -32,7 +32,7 @@ namespace SabreTools.Serialization.Writers
#endregion
#region IFileSerializer
#region IFileWriter
/// <inheritdoc/>
public virtual bool SerializeFile(TModel? obj, string? path)
@@ -53,7 +53,7 @@ namespace SabreTools.Serialization.Writers
#endregion
#region IStreamSerializer
#region IStreamWriter
/// <inheritdoc/>
public abstract Stream? SerializeStream(TModel? obj);

View File

@@ -5,9 +5,9 @@ using SabreTools.IO.Writers;
namespace SabreTools.Serialization.Writers
{
public class ClrMamePro : BaseBinarySerializer<MetadataFile>
public class ClrMamePro : BaseBinaryWriter<MetadataFile>
{
#region IByteSerializer
#region IByteWriter
/// <inheritdoc/>
public override byte[]? SerializeArray(MetadataFile? obj)
@@ -27,7 +27,7 @@ namespace SabreTools.Serialization.Writers
#endregion
#region IFileSerializer
#region IFileWriter
/// <inheritdoc/>
public override bool SerializeFile(MetadataFile? obj, string? path)
@@ -52,7 +52,7 @@ namespace SabreTools.Serialization.Writers
#endregion
#region IStreamSerializer
#region IStreamWriter
/// <inheritdoc/>
public override Stream? SerializeStream(MetadataFile? obj)

View File

@@ -5,7 +5,7 @@ using SabreTools.Data.Models.CueSheets;
namespace SabreTools.Serialization.Writers
{
public class CueSheet : BaseBinarySerializer<Data.Models.CueSheets.CueSheet>
public class CueSheet : BaseBinaryWriter<Data.Models.CueSheets.CueSheet>
{
/// <inheritdoc/>
public override Stream? SerializeStream(Data.Models.CueSheets.CueSheet? obj)

View File

@@ -5,7 +5,7 @@ using SabreTools.IO.Writers;
namespace SabreTools.Serialization.Writers
{
public class DosCenter : BaseBinarySerializer<MetadataFile>
public class DosCenter : BaseBinaryWriter<MetadataFile>
{
/// <inheritdoc/>
public override Stream? SerializeStream(MetadataFile? obj)

View File

@@ -6,7 +6,7 @@ using SabreTools.IO.Writers;
namespace SabreTools.Serialization.Writers
{
public class EverdriveSMDB : BaseBinarySerializer<MetadataFile>
public class EverdriveSMDB : BaseBinaryWriter<MetadataFile>
{
/// <inheritdoc/>
public override Stream? SerializeStream(MetadataFile? obj)

View File

@@ -7,9 +7,9 @@ using SabreTools.IO.Writers;
namespace SabreTools.Serialization.Writers
{
public class Hashfile : BaseBinarySerializer<Data.Models.Hashfile.Hashfile>
public class Hashfile : BaseBinaryWriter<Data.Models.Hashfile.Hashfile>
{
#region IByteSerializer
#region IByteWriter
/// <inheritdoc/>
public override byte[]? SerializeArray(Data.Models.Hashfile.Hashfile? obj)
@@ -29,7 +29,7 @@ namespace SabreTools.Serialization.Writers
#endregion
#region IFileSerializer
#region IFileWriter
/// <inheritdoc/>
public override bool SerializeFile(Data.Models.Hashfile.Hashfile? obj, string? path)
@@ -54,7 +54,7 @@ namespace SabreTools.Serialization.Writers
#endregion
#region IStreamSerializer
#region IStreamWriter
/// <inheritdoc/>
public override Stream? SerializeStream(Data.Models.Hashfile.Hashfile? obj)

View File

@@ -4,7 +4,7 @@ using System.Text;
namespace SabreTools.Serialization.Writers
{
public class IRD : BaseBinarySerializer<Data.Models.IRD.File>
public class IRD : BaseBinaryWriter<Data.Models.IRD.File>
{
/// <inheritdoc/>
public override Stream? SerializeStream(Data.Models.IRD.File? obj)

View File

@@ -8,9 +8,9 @@ namespace SabreTools.Serialization.Writers
/// Base class for other JSON serializers
/// </summary>
/// <typeparam name="T"></typeparam>
public class JsonFile<T> : BaseBinarySerializer<T>
public class JsonFile<T> : BaseBinaryWriter<T>
{
#region IByteSerializer
#region IByteWriter
/// <inheritdoc/>
public override byte[]? SerializeArray(T? obj)
@@ -36,7 +36,7 @@ namespace SabreTools.Serialization.Writers
#endregion
#region IFileSerializer
#region IFileWriter
/// <inheritdoc/>
public override bool SerializeFile(T? obj, string? path)
@@ -68,7 +68,7 @@ namespace SabreTools.Serialization.Writers
#endregion
#region IStreamSerializer
#region IStreamWriter
/// <inheritdoc/>
public override Stream? SerializeStream(T? obj)

View File

@@ -4,7 +4,7 @@ using SabreTools.Data.Models.Listrom;
namespace SabreTools.Serialization.Writers
{
public class Listrom : BaseBinarySerializer<MetadataFile>
public class Listrom : BaseBinaryWriter<MetadataFile>
{
/// <inheritdoc/>
public override Stream? SerializeStream(MetadataFile? obj)

View File

@@ -29,7 +29,7 @@ namespace SabreTools.Serialization.Writers
#endregion
#region IByteSerializer
#region IByteWriter
/// <inheritdoc cref="XmlFile.SerializeArray(T?, string?, string?, string?, string?)" />
public override byte[]? SerializeArray(Datafile? obj)
@@ -37,7 +37,7 @@ namespace SabreTools.Serialization.Writers
#endregion
#region IFileSerializer
#region IFileWriter
/// <inheritdoc cref="XmlFile.Serialize(T?, string?, string?, string?, string?, string?)" />
public override bool SerializeFile(Datafile? obj, string? path)
@@ -45,7 +45,7 @@ namespace SabreTools.Serialization.Writers
#endregion
#region IStreamSerializer
#region IStreamWriter
/// <inheritdoc cref="XmlFile.Serialize(T?, string?, string?, string?, string?)" />
public override Stream? SerializeStream(Datafile? obj)

View File

@@ -29,7 +29,7 @@ namespace SabreTools.Serialization.Writers
#endregion
#region IByteSerializer
#region IByteWriter
/// <inheritdoc cref="XmlFile.SerializeArray(T?, string?, string?, string?, string?)" />
public override byte[]? SerializeArray(SoftwareDb? obj)
@@ -37,7 +37,7 @@ namespace SabreTools.Serialization.Writers
#endregion
#region IFileSerializer
#region IFileWriter
/// <inheritdoc cref="XmlFile.Serialize(T?, string?, string?, string?, string?, string?)" />
public override bool SerializeFile(SoftwareDb? obj, string? path)
@@ -45,7 +45,7 @@ namespace SabreTools.Serialization.Writers
#endregion
#region IStreamSerializer
#region IStreamWriter
/// <inheritdoc cref="XmlFile.Serialize(T?, string?, string?, string?, string?)" />
public override Stream? SerializeStream(SoftwareDb? obj)

View File

@@ -5,7 +5,7 @@ using SabreTools.IO.Writers;
namespace SabreTools.Serialization.Writers
{
public class RomCenter : BaseBinarySerializer<MetadataFile>
public class RomCenter : BaseBinaryWriter<MetadataFile>
{
/// <inheritdoc/>
public override Stream? SerializeStream(MetadataFile? obj)

View File

@@ -5,7 +5,7 @@ using SabreTools.IO.Writers;
namespace SabreTools.Serialization.Writers
{
public class SeparatedValue : BaseBinarySerializer<MetadataFile>
public class SeparatedValue : BaseBinaryWriter<MetadataFile>
{
#region Constants
@@ -50,7 +50,7 @@ namespace SabreTools.Serialization.Writers
#endregion
#region IByteSerializer
#region IByteWriter
/// <inheritdoc/>
public override byte[]? SerializeArray(MetadataFile? obj)
@@ -70,7 +70,7 @@ namespace SabreTools.Serialization.Writers
#endregion
#region IFileSerializer
#region IFileWriter
/// <inheritdoc/>
public override bool SerializeFile(MetadataFile? obj, string? path)
@@ -95,7 +95,7 @@ namespace SabreTools.Serialization.Writers
#endregion
#region IStreamSerializer
#region IStreamWriter
/// <inheritdoc/>
public override Stream? SerializeStream(MetadataFile? obj)

View File

@@ -28,7 +28,7 @@ namespace SabreTools.Serialization.Writers
#endregion
#region IFileSerializer
#region IFileWriter
/// <inheritdoc cref="XmlFile.Serialize(T?, string?, string?, string?, string?, string?)" />
public override bool SerializeFile(Data.Models.SoftwareList.SoftwareList? obj, string? path)
@@ -36,7 +36,7 @@ namespace SabreTools.Serialization.Writers
#endregion
#region IStreamSerializer
#region IStreamWriter
/// <inheritdoc cref="XmlFile.Serialize(T?, string?, string?, string?, string?)" />
public override Stream? SerializeStream(Data.Models.SoftwareList.SoftwareList? obj)

View File

@@ -3,9 +3,9 @@ using SabreTools.Serialization.Interfaces;
namespace SabreTools.Serialization.Writers
{
public partial class XMID : IStringSerializer<Data.Models.Xbox.XMID>
public partial class XMID : IStringWriter<Data.Models.Xbox.XMID>
{
/// <inheritdoc cref="IStringSerializer.Serialize(T?)"/>
/// <inheritdoc cref="IStringWriter.Serialize(T?)"/>
public static string? SerializeString(Data.Models.Xbox.XMID? obj)
{
var deserializer = new XMID();

View File

@@ -3,9 +3,9 @@ using SabreTools.Serialization.Interfaces;
namespace SabreTools.Serialization.Writers
{
public partial class XeMID : IStringSerializer<Data.Models.Xbox.XeMID>
public partial class XeMID : IStringWriter<Data.Models.Xbox.XeMID>
{
/// <inheritdoc cref="IStringSerializer.Serialize(T?)"/>
/// <inheritdoc cref="IStringWriter.Serialize(T?)"/>
public static string? SerializeString(Data.Models.Xbox.XeMID? obj)
{
var deserializer = new XeMID();

View File

@@ -9,9 +9,9 @@ namespace SabreTools.Serialization.Writers
/// Base class for other XML serializers
/// </summary>
/// <typeparam name="T"></typeparam>
public class XmlFile<T> : BaseBinarySerializer<T>
public class XmlFile<T> : BaseBinaryWriter<T>
{
#region IByteSerializer
#region IByteWriter
/// <inheritdoc/>
public override byte[]? SerializeArray(T? obj)
@@ -39,7 +39,7 @@ namespace SabreTools.Serialization.Writers
#endregion
#region IFileSerializer
#region IFileWriter
/// <inheritdoc/>
public override bool SerializeFile(T? obj, string? path)
@@ -73,7 +73,7 @@ namespace SabreTools.Serialization.Writers
#endregion
#region IStreamSerializer
#region IStreamWriter
/// <inheritdoc/>
public override Stream? SerializeStream(T? obj)