2025-09-26 16:00:33 -04:00
|
|
|
using SabreTools.Data.Models.Metadata;
|
|
|
|
|
|
2025-11-14 09:06:59 -05:00
|
|
|
namespace SabreTools.Serialization.CrossModel
|
2025-09-26 16:00:33 -04:00
|
|
|
{
|
2025-11-14 09:06:59 -05:00
|
|
|
/// <summary>
|
|
|
|
|
/// Base class for <see cref="MetadataFile"/> cross-model serializers
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <typeparam name="TModel">Model convertable to <see cref="MetadataFile"/></typeparam>
|
|
|
|
|
public abstract class BaseMetadataSerializer<TModel> : ICrossModel<TModel, MetadataFile>
|
|
|
|
|
{
|
2026-01-25 20:07:59 -05:00
|
|
|
/// <inheritdoc/>
|
|
|
|
|
public bool Debug { get; set; } = false;
|
|
|
|
|
|
2025-11-14 09:06:59 -05:00
|
|
|
/// <inheritdoc/>
|
|
|
|
|
public abstract TModel? Deserialize(MetadataFile? obj);
|
2025-09-26 16:00:33 -04:00
|
|
|
|
2025-11-14 09:06:59 -05:00
|
|
|
/// <inheritdoc/>
|
|
|
|
|
public abstract MetadataFile? Serialize(TModel? obj);
|
|
|
|
|
}
|
2025-09-26 16:00:33 -04:00
|
|
|
}
|