chore: some experimentations with DotNetYaml

This commit is contained in:
2025-04-17 22:19:39 +03:00
parent cddb30c631
commit c205e710bc
7 changed files with 238 additions and 0 deletions

View File

@@ -0,0 +1,30 @@
using YamlDotNet.Serialization;
using YamlDotNet.Serialization.NamingConventions;
namespace Syntriax.Engine.Serialization;
public static class Serializer
{
private static readonly ISerializer serializer = new SerializerBuilder()
.WithNamingConvention(PascalCaseNamingConvention.Instance)
.DisableAliases()
.WithTypeConverter(new EntityConverter())
.WithTypeConverter(new Vector2DConverter())
.Build();
private static readonly IDeserializer deserializer = new DeserializerBuilder()
.WithNamingConvention(PascalCaseNamingConvention.Instance)
.WithTypeConverter(new EntityConverter())
.WithTypeConverter(new Vector2DConverter())
.Build();
public static string Serialize(object instance)
{
return serializer.Serialize(instance);
}
public static T Deserialize<T>(string yaml)
{
return deserializer.Deserialize<T>(yaml);
}
}